0
mzelensky
26.03.25
✎
10:52
|
Платформа "8.3.15.1830" 64-битный сервер и 64-битный клиент. Конфа самописная. Работа на одном сервере с подключением через RDP.
Кассы Штрих-М. Кассы подключаются через TCP\IP (не через USB\COM). На сервере стоит драйвер 5.18.1077 64-битный от ККТЛаб.
Очень странное поведение при фискализации розничных чеков.
Работа с DLL-кой выполняется вот так:
ПрограммныйИдентификатор = "kktlabDrvKKT1C";
ИнтеграционнаяБиблиотека = ПолучитьОбщийМакет("ИнтеграционнаяБиблиотекаФискальныхЧеков_518");
АдресИнтеграционнойБиблиотеки = ПоместитьВоВременноеХранилище(ИнтеграционнаяБиблиотека);
ПодключитьВнешнююКомпоненту(АдресИнтеграционнойБиблиотеки, "ИнтеграционнаяБиблиотекаФискальныхЧеков_518");
Драйвер = Новый ("AddIn.ИнтеграционнаяБиблиотекаФискальныхЧеков_518." + ПрограммныйИдентификатор);
Далее в полученный объект драйвера устанавливаются параметры:
Драйвер.УстановитьПараметр("ConnectionType", 6);
Драйвер.УстановитьПараметр("Port", 0);
Драйвер.УстановитьПараметр("Baudrate", 115200);
Драйвер.УстановитьПараметр("Speed", 115200) ;
Драйвер.УстановитьПараметр("UseIPAddress", true);
Драйвер.УстановитьПараметр("IPAddress", пСтруктураНастроекКассы.ФискальныеЧеки_АдресTCP);
Драйвер.УстановитьПараметр("TCPPort", Формат(пСтруктураНастроекКассы.ФискальныеЧеки_ПортTCP,"ЧДЦ=0; ЧГ=")); Драйвер.УстановитьПараметр("UserPassword", "30");
Драйвер.УстановитьПараметр("AdminPassword", "30");
Драйвер.УстановитьПараметр("Timeout", 5000);
Драйвер.УстановитьПараметр("RegNumber", "1");
Драйвер.УстановитьПараметр("SerialNumber", "1");
Драйвер.УстановитьПараметр("EquipmentType", "ККТ");
И Вызывается "подключение":
ИДОборудования = "";
РезультатОтветаДрайвера = Драйвер.Подключить(ИДОборудования);
КодОшибки = "";
Драйвер.ПолучитьОшибку(КодОшибки);
Никаких падений в фатальную ошибку нет, код полностью отрабатывает, но у ряда пользователей метод "Драйвер.Подключить(ИДОборудования)" возвращает "ложь", а в "Драйвер.ПолучитьОшибку(КодОшибки)" возвращается "Объект драйвера не установлен".
В общем макете "ИнтеграционнаяБиблиотекаФискальныхЧеков_518" находится zip файл с 2-мя DLL-ками и описанием, которые были взяты из каталога установленного драйвера "5.18.1077". Первый запуск 1С и выполнение данного кода производились под "Запуск от Администратора".
Далее странности:
1) Если выполнять код под "Администратором" терминального сервера, то проблем нет под любым пользователем 1с.
2) Если выполнять код под рядовым пользователем терминального сервера, то у части пользователей код отрабатыает корректно, а у другой части возвращает ошибку "Объект драйвера не установлен". При этом, Сервер терминалов заведен в домен. Права у "рядовых пользователей" абсолютно одинаковые.
3) У ряда пользователй, у которых система выдавала ошибку утром, к вечеру код стал отрабатывать. При этом в правах ничего не менялось.
4) Если создать нового "рядового" пользователя, то тут лотерея - может заработать, а может нет.
|
|
3
mzelensky
26.03.25
✎
11:16
|
(2) С вот этим не совсем понял.
В каталоге "Roaming\1C\1cv8\ExtCompT" лежит только файлик "registry.xml". Больше там ничего нет, ни у пользователей, которых РАБОТАЕТ, ни у пользователей, которых НЕ работает
|
|
9
mzelensky
26.03.25
✎
14:17
|
(8) Уже сделал.
Кажется все же проблема не в этом. А в кривой работе самого драйвера ККТЛаб.
Драйвер устанавливался на сервер под пользователем с административными правами. Сейчас заметили, что у проблемных рядовых пользователей не запускается тест-драйвер. Выдается ошибка "Установите Посцентр Драйвер ККт 64-бит".
У пользователей, у которых тест-драйвер запускается - и ошибки фискализации нет.
Пошли разбираться в чем косяк с установкой драйвера.
|
|