Порт не найден 1с
Ошибка : "При подключении оборудования произошла ошибка. Не удалось подключить устройство "ККТ_. " Порт недоступен (System Error Code 995) Операция ввода/вывода была прервана из-за завершения потока команд или по запросу приложения (999)"
Отчёт на фискальном регистраторе на сформирован" .
Решение проблемы : Что тут такого необычного и интересного, что я вывел в отдельную тему? Понятно, что в этом случае по той или иной причине не подключается РМК к требуемой кассе. Но при этом не просто не подключается, а не может произвести команду. То есть дополнительно говорит что операция не выполнена из-за завершения потока команд.
В этом случае с вероятностью 99,9999% на указанный в настройкам COM-порт встало какое-либо иное оборудование.
Бывает так, что в течение дня подключают продавцы, предположим, через USB свои телефоны для подзарядки. Или вдруг перезагружали компьютер, а после этого не на назначенный ранее COM-порт встал эквайринговый терминал (это тот, где по картам банковским рассчитывают). Замечено, что сбербанковский терминал очень любит вставать на порт 7 или 9. Особенно это становится проблемой, если первой подключалась ККТ. И она уже прописалась на смежных портах (Допустим Com7+Com8 или Com9+Com10). Тогда время от времени будет вставать на этот порт эквайринг. И там уже будет работать принцип студенческого общежития "Кто первый встал - того и тапки".
Потому следует перенастроить Com-порт для ККТ (именно для ККТ, а не для эквайринга - иначе проблем не оберёшься, регулярно придётся переделывать). И внести новые настройки в ККТ.
Собственно, именно подобная проблема и была на торговой точке. В течение дня подключили эквайринговый терминал. После чего (видимо, для удобства) переткнули ККТ в другой USB, все порты поменялись. А ККТ была водочная. Алкоголь никто не покупал. Вот вплоть до закрытия ничего и не было заметно. А 1С пытается послать сигнал о закрытии смены на Com9, так эквайринг. Он не понимает, что от него хотят. И посылает в ответ сигнал эротической прогулки. Отчего и прекращается попытка ввода/вывода.
Если открываем драйвер через rdp и пробиваем тестовые чеки - работает ? Закрываем драйвер на одном ПК, открываем на втором - есть блокировка порта ?
У Атол 10 драйвера, есть свой web сервер для работы по сети, гдета тут на просторах infostarta есть примерное решение. Еще и касса по WiFi. Если магазин проходной (много чеков за смену), то проводом соединять нужно, это надежней.
(5)
не хотят. объясните принцип безопасности локальной и вайфай
а еще скажите,что могут украсть данные --- бегом провод захотят
По 5-й версии Атола есть нововведение - вместо EoU ( раздельные порты ККМ-ПК и ККМ-ОФД) используется EoT (1 общий порт).
Поэтому может быть проблема с освобождением этого порта
(14)Служба EoU на компьютерах установлена, но не запущена. В настройках кассы тип подключения TCP/IP, порт один 5555.
(16)Как то смена у них не открывалась из - за того что порт опять был не доступен. Перенастроили на USB - заработало. Но им нужно чтобы с любого компьютера в магазине можно было чеки пробивать, так что пришлось вернуть обратно.
(21)
Так если будет настроено по 2-м портам, то - должно работать с любого ПК. Единственное, не будет работать в тот момент, когда пробивают чек на другом ПК. Пока на одном ПК не пробьют, невозможно на другом пробить. Связано с тем, что между внесением данных в чек и пробитием есть период формирования внутренних данных в ККМ ( чек не пробивается одномоментно, т.е. внесли данные, включили ККМ и вуаля. Есть открытие чека, регистрация строк ТМЦ, регистрация оплаты и закрытие чека). Для оценки времени - время события между "Пробить" и выходом чека из ККМ. Если попали в момент занятости, только дописывать функцию через ДТО10 ( оценка занятости ККМ и выяснение причины)
(23)Не очень понятно как в нашем случае можно настроить кассу чтобы она работала по двум портам, ведь касса физически к маршрутизатору подключена, доступ к ней есть только через один порт и ip адрес.
повторюсь ..
Если открываем драйвер через rdp и пробиваем тестовые чеки - работает ? Закрываем драйвер на одном ПК, открываем на втором - есть блокировка порта ?
(22)Если на терминальном сервере драйвер запускать, то к касса не цепляется, пишет "Порт не доступен", в 1С при этом тест проходит. Если запускать драйвер локально не на сервере, с начало на одном компе, затем после закрытия на первом, на втором, то блокировки порта не происходит.
(26)Ставил галку. Снимал галку. Что только не делал.
В обработке ТОСервер есть
Процедура ОтключитьОборудование(Клиент)
но она не освобождает порт и все.
Первый кто зашел и пробил чек по кассе или открыл смену - тот и печатает на ней целый день. Остальные видят только занятый порт. Если кассу выключить включить обратно то порт освобождается. Но занимается следующим пробившим чек.
ДТО 10.8.1.0 касса подключена через Ethernet операторы сидят по рдп. все внутри одной локальной сети.
Решение:
1. На клиенте включить DCOM утилитой dcomcnfg и добавить нужные протоколы в список.
2. На серваке добавить пользователей в группу "Distributed COM Users"
3. Перезапустить COM-приложение на сервере 1С:Предприятия
В настройках Windows на сервере должна быть включена роль "Сервер приложений" (Application Server)
Прочитать статью на ИТС.
Если клиент и сервер в разных подсетках (доменах), на сервере в локальную группу "Пользователи DCOM" пропишите пользователя клиента. Члены этой группы могут запускать, активизировать и использовать объекты DCOM на этом компьютере.
-----------
Проблема:
После выбора информационной базы (но до логина в 1с) возникает ощибка "Объект сервера 1С предприятия не обнаружен. 800706BF".
----------
Ошибка соединения с сервером 1С:Предприятия 8.0: Неправильный путь к файлу C:W
Решение:
Возможная причина ошибки в том, что для пользователя USER1CV8SERVER не заданы переменные окружения TEMP и TMP, поэтому при создании новой базы временные файлы пытаются быть созданными в корне диска C:
----------
Ошибка создания информационной базы: Компоненты OLE DB провайдера не найдены
При попытке добавить базу с локальной станции, 1C предлагает только вариант выбора файлового варианта базы.
Решение:
На появление меню выбора вида создания базы (файловая или на сервере Предприятия) может влиять только ключ. Если ключа нет, то платформа может быть максимум базовой, а базовая не работает с сервером, поэтому этого меню нет. Если же оно есть, но недоступно, то возможно не установлены компоненты доступа к серверу на этой локальной станции.
----------
Проблема:
Выдается ошибка "Не удалось зафиксировать файл базы данных для открытия или изменения . /1cv8.1CD"
Решение:
Фиксация файла базы данных – это разновидность внутренней блокировки, которая требуется, чтобы на некоторое непродолжительное время обеспечить целостность структуры файла при выполнении операций чтения данных или фиксации транзакции. При чтении требуется, чтобы эти структура файла была в целостном состоянии, а при фиксации транзакции структура может изменяться.
При нормальной работе такая ошибка возникать не должна. Суть сводится к следующему: для выполнения фиксация результатов транзакции может потребоваться выполнить перестройку внутренних структур данных файла *.1cd. А для выполнения чтения данных необходимо гарантировать, чтобы такая перестройка структур данных не выполнялась. Для обеспечения согласования этих операций имеется механизм внутренних блокировок, называемых фиксацией. Фиксация выполняется с ожиданием. В то же время предполагается, что фиксация выполняется на непродолжительное время, меньшее, чем время ожидания. Таким образом, если упомянутая ошибка возникла, то имеет место некоторое нарушение нормального хода событий. Мы наблюдали такую ситуацию и уже описывали ее в партнерской конференции. Вкратце все выглядит примерно так. В какой-то момент времени запрос на блокировку участка файла (функция LockFile() Win32 API) выдает ошибку Network error. В результате возникает ошибка движка файловой базы данных "Не удалось зафиксировать файл базы данных для открытия или изменения".
Природа ошибки нам пока непонятна. Известно только, что она возникает далеко не у всех. Не отмечено никакой связи возникновения этой ошибки с версией 1С:Предприятия 8.0 и используемой конфигурацией. По-видимому речь идет о каких-то особенностях некоторых сетей.
Вполне возможно, что проблема возникает из за нестабильности работы сети
Один из способов проверить - выполнить команду:
ping [Имя сервера] -t
на компьютере, с которого запускается 1с
после чего запустить 1с и посмотреть, что будет происходить.
----------
80004027 - приложение 1CV8 или сомпонента v8.server.1 выключена,
если сервер на Windows Server 2003.
См. статью "Особенности настройки Windows Server 2003 при установке сервера 1С:Предприятия 8.0" на диске ИТС.
00000005
00000041
80070005
80080005
80000009
80030005
8001011B - клиент не имеет прав на доступ к серверу (access denied). Выполните
рекомендации статьи "Вопросы установки и настройки 1C:Предприятия 8.0
в варианте "клиент-сервер"" из раздела методической поддержки
1С:Предприятия 8.0 на диске ИТС.
800706BA
800706BE- на сервере произошло неожиданное исключение. Сервер упал.
Нужны записи из Event Log с сервера.
80010108 - внутренняя ошибка клиентского приложения. Нужны записи
Event Log клиентского компьютера и описание действий, выполнявшихся
в это время.
80070776 - Запустить DcomCnfg.exe и проверить протокол для DCOM
Должен быть TCP/IP с ориентацией на подключения
8000401A - В свойствах COM+ приложения 1CV8 на серверном компьютере
на закладке Identity установлен Interactive user, но никакой
пользователь интерактивно не вошел в серверный компьютер.
8001011C - На клиентском компьютере запрещено использование DCOM.
Помогает запустить на клиентском компьютере dcomcnfg.exe
и на закладке Default Properties установить флаг
Enable distributed COM on this computer.
80070721 - Ошибка возникает при рассогласовании протоколов
аутентификации между DCOM клиентом и сервером в том случае, если для связи
между ними используется Microsoft Internet Information Services (IIS).
Возможно, для DCOM используется протокол Tunneling TCP/IP. Установите
на компьютере - сервере 1С:Предприятия и на клиентских компьютерах для
DCOM протокол Connection-oriented TCP/IP.
Решаемая задача: Восстановление работоспособности сервера и программы 1С.
Для выполнения описанных действий требуется учетная запись Администратора.
Проверка программ и служб на работоспособность
Шаг 1. Проверяем доступность порта соединения
Этот адрес меняется в зависимости от версии 1С:
- C:\Program Files (x86)\1cv8\ \bin — для 32-разрядной версии сервера «1С:Предприятие» версии 8.3
- C:\Program Files\1cv8\ \bin — для 64-разрядной версии сервера «1С:Предприятие» версии 8.3
- C:\Program Files (x86)\1cv82\ \bin — для 32-разрядной версии сервера «1С:Предприятие» версии 8.2
- C:\Program Files\1cv82\ \bin — для 64-разрядной версии сервера «1С:Предприятие» версии 8.2
Шаг 2. Проверяем в процессах есть ли «rphost.exe» «ragent.exe» «rmngr.exe», он должен быть активен.
Шаг 3. Проверяем запущен ли агент сервера 1С в службах и сравниванием версию и порт в строке «Исполняемый файл»
Шаг 4. Проверяем работоспособность сервера MS SQL
Выполняем: Пуск – Программы - Microsoft SQL Server 2008 R2 (у Вас может быть любая версия ) - Средства настройки.
Напротив служб «SQL Server» и «Агент SQL Server» должен быть статус Работает.
Если всё запущено и не работает
Шаг 5. Останавливаем службу 1С
В командной строке:
Шаг 6. Переходим к удалению процессов
Далее по очередности удаляем процессы:
Шаг 7. Чистим временные папки и файлы
Далее нужно будет почистить папки 1С с временными файлами с папками типа:
Собственно не могу подключиться к MSSQL серверу по ODBC через 1с
Может кто знает куда копать ? как починить.
Попробую по пунктам описать куда копать:
1. стандартный порт для подключение по ODBC 1433 проверяем висит ли что то на этом порту:
netstat -an | find"1433"
2. Если да то копаем в сторону фаервола. разрешаем правила - либо целиком отключаем:
Если у вас включен Windows Firewall (или любой другой), необходимо открыть порт 1433
Если нетстат показывает что ничего не висит на 1433 то проверяем по пунктам:
1. Запускаем SQL Server Configuration Manager
В окне конфигурации SQL Server выберите ветку Network Configuration SQL Server -> Протоколы для SQL Server. Затем включите необходимые порты. Обычно достаточно TCP/IP.
- также в этом окошке откройти закладку ip adresses - и там в самом низу порт - он может быть не стандартный. (подключаться надо на него)
После этого перейдите в ветку Настройка собственного клиента SQL Клиентские протоколы. Произведите настройку необходимых протоколов. Обычно достаточно TCP/IP с настройками по умолчанию. Если вы измените номер порта, его нужно будет разблокировать в файрволе, а также указывать при соединении с SQL сервером. Рекомендуется оставить номер порта по умолчанию – 1433
2. После конфигурации протоколов, перейдите в ветку «Службы SQL Server». Перезапустите SQL Server.
3. Запустите Microsoft SQL Server Management Studio (среду управления сервером баз данных) и подключитесь к серверу. Кликните правой кнопкой мышки по серверу. В появившемся меню выберите «Свойства».
- В разделе «Безопасность» поставьте «Проверка подлинности SQL Server и Windows».
- В разделе «Соединения» установите опцию «Разрешить удаленные соединения с этим сервером».
ПЕРЕЗАПУСТИТЕ СЛУЖБУ SQL SERVERA.
ВОЗМОЖНО КОМУ ТО ПОМОЖЕТ: Фактический порт TCP для подключения через ODBC можно найти в реестре по адресу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\\MSSQLServer\SuperSocketNetLib\Tcp
И еще раз я об этом написал с самого начала, с чего стоит копать, стандартный порт подключения 1433
т.е мы на самом сервере должны понять.
1. Запустите NETSTAT -A чтобы просмотреть список открытых портов (скажем, LISTENING). Если 1433 нет среди них, то SQL-сервер не работает или не прослушивает этот порт.
2. Если в списке указано 1433, проверьте локальный брандмауэр, чтобы узнать, разрешает ли он подключение к/из локального хоста и/или разрешает подключения к 1433.
3. Вы можете попробовать TELNET 1433 (к локал хост и к внешнему ip с другово клиент)
Что делать если вы не видите открытый стандартный порт 1433, способы понять, какой порт использует ваш MSSQL
1. через (SQL Server Configuration Manager) - описал в самом первом посте и в посте ниже - этого.
2. через логи событий
3. SQL Server Error Logs
4. через выполнение SQL запроса.
5. через реестр - описал в первом ответе
---- описание всех способов:
By default SQL Server listens on TCP port number 1433, and for named instances TCP port is dynamically configured. There are several options available to get the listening port for SQL Server Instance.
Here are a few methods which we can use to get this information.
Method 1: SQL Server Configuration Manager
Method 2: Windows Event Viewer
Method 3: SQL Server Error Logs
Method 4: sys.dm_exec_connections DMV
Method 5: Reading registry using xp_instance_regread
Let's see how you can use each of these methods in detail:
Method 1: SQL Server Configuration Manager:
Step 1. Click Start > All Programs > Microsoft SQL Server 2012 > Configuration Tools > SQL Server Configuration Manager
Step 2. Go to SQL Server Configuration Manager > SQL Server Network Configuration > Protocols for
Step 3. Right Click on TCP/IP and select Properties
Step 4. In TCP/IP Properties dialog box, go to IP Addresses tab and scroll down to IPAll group.
If SQL Server if configured to run on a static port it will be available in TCP Port textbox, and if it is configured on dynamic port then current port will be available in TCP Dynamic Ports textbox. Here my instance is listening on port number 61499.
Method 2: Windows Event Viewer:
When SQL Server is started it logs an event message as 'Server is listening on [ 'any' ' in windows event logs. Here will be actual port number on which SQL Server is listening.
To view this using Event Viewer:
Step 1. Click Start > Administrative Tools > Event Viewer.
Note: If Administrative Tools are not available on Start menu, go to Start > Control Panel > System and Maintenance > Administrative Tools > View event logs
Step 2. Navigate to Event Viewer > Windows Logs > Application
Step 3. Since huge amount of event are logged, you need to use filtering to locate the required logs. Right click on Application and select Filter Current Log…
Step 4. You can filter the events by Event ID and Event source. The event we are interested in has Event ID of 26022, and it’s source is SQL Server Instance. You need to filter by both Event ID and SQL Server Instance if you have multiple instances installed, for a single instance you can filter by Event ID only. Click on OK to apply the filter.
Step 5. Once the filter is applied, Locate message 'Server is listening on [ 'any' …'. As we can see from below screenshot that SQL Server Instance is running on TCP Port 61499.
Method 3: SQL Server Error Logs:
When SQL Server is started it also logs an message to SQL Server Error Logs. You can search for port number in SQL Server Error Logs by opening SQL Server Error Log in notepad or via T-SQL using extended stored procedure xp_ReadErrorLog as below:
EXEC xp_ReadErrorLog 0, 1, N'Server is listening on', N'any', NULL, NULL, 'DESC'
LogDate ProcessInfo Text
2013-03-21 13:34:40.610 spid18s Server is listening on [ ‘any’ 61499].
2013-03-21 13:34:40.610 spid18s Server is listening on [ ‘any’ 61499].
(2 row(s) affected)
As we can see from the output that SQL Server Instance is listening on 61499.
Note: This method does not work if SQL Server Error Logs have been cycled. See sp_Cycle_ErrorLog for more information.
Method 4: sys.dm_exec_connections DMV:
DMVs return server state that can be used to monitor SQL Server Instance. We can use sys.dm_exec_connections DMV to identify the port number SQL Server Instance is listening on using below T-SQL code:
WHERE session_id = @@SPID
(1 row(s) affected)
As we can see from the output… same as above Smile
Method 5: Reading registry using xp_instance_regread:
Port number can also be retrieved from Windows Registry database.
We can use extended stored procedure xp_instance_regread to get port number information using below T-SQL code:
DECLARE @portNumber NVARCHAR(10)
'Software\Microsoft\Microsoft SQL Server\MSSQLServer\SuperSocketNetLib\Tcp\IpAll',
@value = @portNumber OUTPUT
SELECT [Port Number] = @portNumber
(1 row(s) affected)
As we can see … same as above Smile Smile
Note: The above code will only work if SQL Server is configured to use dynamic port number. If SQL Server is configured on a static port, we need to use @value_name = 'TcpPort' as opposed to @value_name = 'TcpDynamicPorts'.
Hope This Helps!
Статические и динамические порты SQL Server
Microsoft SQL Server может работать в двух режимах:
Прослушивание одного порта (по-умолчанию это TCP порт 1433). Этот режим будет выбран по-умолчанию, если во время установки SQL Server не использовать именованный экземпляр.
Динамический выбор портов. В этом случае при запуске SQL Server выберет свободный порт. Этот режим будет выбран по-умолчанию, если во время установки SQL Server настроить на использование именованного экземпляра.
Для того чтобы определить и изменить режим работы SQL Server нужно:
Открыть "Диспетчер конфигурации SQL Server"
В левом столбце выбрать "Сетевая конфигурация SQL Server" -> "Протоколы для "
В правом столбце дважды кликнуть по протоколу TCP/IP
В открывшемся окне в разделе IPAll указано два параметра:
"TCP порт" - при помощи этого параметра можно задать статический порт. По-умолчанию значение 1433.
"Динамические TCP порты" - при помощи этого параметра можно задать диапазон, из которых будет выбираться порт для SQL Server
Для своей работы система с сервером 1С использует следующие порты:
1433 (TCP/IP) — сервер SQL;
1434 (UDP) — сервер SQL;
1540 (TCP/IP) — агент сервера (если сервер один, то можно не открывать);
1541 (TCP/IP) — менеджер кластера;
диапазон 1560-1591 (TCP/IP) — процесс 1С;
475 (TCP/IP) — HASP-менеджер;
475 (UDP) — HASP-менеджер;
Пример запуска 1С из командной строки:
"C:\Program Files\1cv8\8.3.12.1529\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -debug -d "C:\Program Files\1cv8\srvinfo"
Читайте также: