Подключение онлайн кассы (ККМ) ATOL к УТ 10.3 в терминале. Личный опыт









Использование Онлайн Кассы на Windows HOME c драйвером без цифровой подписи. Проброска портов для ККМ. Использование компьютера с кассой в качестве сервера для быстрой печати чеков через терминал без использования сквозных COM портов.

Вот список проблем, с которыми приходится сталкиваться и краткое описание их решений. Более подробное описание со скриншотами ниже.

1. Компьютеры с Widows 10 Home не могут установить корректно драйвер Атол ТО. Решение от ЦТО — купить и использовать версию операционки проф за +15 тр. Решение — включил в операционке и биосе возможность установки не подписанных драйверов (не слетает при перезагрузке).

2. При работе через терминал и с пробросской COM портов чек выходит с колосальной задержкой и тупняком в 13 секунд. Решение от ЦТО — работать локально, 1С установить локально, сервер принести в локалку с компьютером и кассой. Решение — отказаться от классической пробросски COM-портов в терминале, использовать службу драйвера ККМ АТОЛ, к которой можно подключиться из терминала через интернет. Работает мгновенно.

3. При начале работы система сообщает, что смена не открыта. Теперь есть журнал кассовых смен в УТ 10.3. Открывать и закрывать смены нужно в нем. Автоматически смена не открывается.

Теперь по порядку.

Подключение ККМ к операционной системе Windows 10 Home

1. Вся проблема заключается в том, что на данной операционной системе нельзя устанавливать не подписанные фирмой Microsoft драйвера. Поэтому, нужно включить такую возможность дополнительно

2. Отключаем проверку подписи драйверов навсегда — с использованием командной строки для редактирования параметров загрузки.

2.1 В BIOS требуется отключить Secure Boot (это обязательно).

       2.2 Запустите командную строку Windows 10 от имени администратора. В командной строке по порядку введите следующие две команды:

bcdedit.exe -set loadoptions DISABLE_INTEGRITY_CHECKS
bcdedit.exe -set TESTSIGNING ON
 
Отключение проверки подписи драйверов в командной строке
 
После того, как обе команды будут выполнены, закройте командную строку и перезагрузите компьютер. Проверка цифровых подписей будет отключена, с одним лишь нюансом: в правом нижнем углу вы будете наблюдать уведомление о том, что Windows 10 работает в тестовом режиме (чтобы убрать надпись и вновь включить проверку, введите в командной строке bcdedit.exe -set TESTSIGNING OFF).
3. Если при подключении к кассе через COM порт вы видите ошибку типа "Нет связи -1", то нужно все перезагрузить (и кассу), если не поможет, то на COM порты нужно установить вместо стандартных Winsows Драйверов драйвера из каталога с установленным драйвером ККТ.
 
Установка драйверов
 
1. Устанавливаем Атоловские драйвера на локальный компьютер и на терминальный сервер

 

 
2. Присваиваем локальному компьютеру постоянный статический IP адрес, например 192.168.1.4
 
3. Отключить нужно обязательно IP v6
 
4. Отключить нужно так же и брендмауэр Windows или добавить нужный порт в список исключений
 
5. На роутере в локальной сети с кассой сделать проброску порта 6220 на компьютер кассира
 
6. ЭТОТ ПУНКТ НЕ ОБЯЗАТЕЛЕН, он для проверки. Переходим к настройкам на терминальном сервере. В драйвере ККМ выполняем тестовое подключение по порту 6220 указав внешний IP адрес подсети с нашей кассой
 
7. Проверяем подключение, все должно мгновенно сработать
 

Подключение кассы к 1С

1. Важно помнить, что никакие кассовые смены автоматически не открываются (пишет что кассовая смена не открыта), т. к. это написано в интерете, открывать ее нужно в 1С дополнительно ежедневно (ежесменно).

2. В настройках торгового оборудования добавляем нашу ККТ с передачей данных, загружая драйвер с сайта ИТС

3. В параметрах подключения нужно не забыть указать компьютер (внешний ip адрес) и порт

4. С настройками покончено, переходим к открытиям смены

 

Для работы в терминале клавиатурного (в режиме USB-HID) сканера ШК

Отказываясь от проброски COM портов, реализуем повторное нажатие клавиши F7 после первого сканирования товаров в документ Чек ККМ. Сканер вообще не нужно подключать как торговое оборудование.

Процедура формы документа чек ККМ:

Функция СШКНоменклатура(Номенклатура, Характеристика, Серия, Качество,

Единица, Количество, СШК) Экспорт

 

Результат = Истина;

ИмяТекСтраницы = ЭлементыФормы.ПанельТовары.ТекущаяСтраница.Имя;

СтруктураПодбора = РаботаСТорговымОборудованием.СформироватьСтруктуруПодбора(Дата, Номенклатура, Характеристика,

Серия, Качество, Единица,

Количество, мВалютаРегламентированногоУчета,

Неопределено, мУказаниеСкладовВТЧ,

ТипЦен, , , УсловиеПродаж, Склад);

 

Если ИмяТекСтраницы = "Товары" Тогда

ОбработкаПодбора(Товары, СтруктураПодбора);

Иначе

Предупреждение("На странице """

+ ИмяТекСтраницы

+ """ подбор номенклатуры не предусмотрен.");

КонецЕсли;

 

//!нажмем еще раз F7

КоманднаяПанельТоварыПоискПоШтрихКоду(ЭлементыФормы.КоманднаяПанельТовары.Кнопки.ПоискПоШтрихКоду) ;

 

Возврат Результат;

 

КонецФункции // СШКНоменклатура()

 
 

 

Подключение торгового оборудования по RDP для конкретного пользователя

В модуле обработки ТОСервер в 1С заменим код в процедуре для привязки к пользователю

 

Функция ПолучитьИмяКомпьютераТО() Экспорт

 

//Если мИмяКомпьютера = Неопределено Тогда

// мИмяКомпьютера = ВРег(ИмяКомпьютера());

//КонецЕсли;

 

//Возврат мИмяКомпьютера;

 

//в имя компьютера добавим название пользователя, тогда торговое оборудование только к нему будет подцепляться

Если мИмяКомпьютера = Неопределено Тогда

мИмяКомпьютера = ВРег(ИмяКомпьютера());

Если Константы.ТорговоеОборудованиеИспользуетсяНаСервереТерминала.Получить() = истина тогда

мИмяКомпьютера = мИмяКомпьютера + "_"+глЗначениеПеременной("глТекущийПользователь");

КонецЕсли;

КонецЕсли;

Возврат мИмяКомпьютера;

 

КонецФункции // ПолучитьИмяКомпьютераТО()

Работа кассира (полный интерфейс)

1. Запускаем обработку Кассовые смены из меню торгового оборудования, работа с ККМ

2. Выбираем наш кассовый аппарат и жмем открытие смены

3. Теперь при проведении чеков ккм у нас все будет печататься

4. Аналогичным образом работает и кнопка закрытия смены

 

 

26 Comments

  1. karpik666

    Спасибо, замечу, что вариант с пробросом порта 6220 работает только на драйверах 8-й версии, на которых есть служба fdsvc, и подходит для формата обмена ффд 1.0 который устарел, компонента же 1с для работы по ффд 1.05 требует драйвера 9 или 10, рекомендуется использовать метод подключения tcpip

    Reply
  2. serge-ce1

    (1) Добрый день !

    А как использовать метод подключения tcpip на ККМ с интерфесом USB ?

    Reply
  3. karpik666

    (2) Мне такой способ не известен, возможно есть специальные программы для расшаривания такого подключения по сети, но стандартно к аппарату нужно подключать Ethernet кабель, чтобы он имел свой IP адрес.

    Reply
  4. Denger

    (1) в настройках начиная с версии 8.14.2 (не точно) уже нет поля Компьютер. При работе в терминале вообще интересная ситуация была, когда чек улетал не на ту кассу (не было привязки к пользователю). Добавил отбор касс при подключении по значению ОсновнаяКассаККМ в настройках пользователя

    Reply
  5. Drizer2000

    При работе через терминал с проброской ком-портов на сервер Windows Server 2008 R2 пробитие чеков не тормозит. Стоят 9-е дрова атола. Что я сделал не так?) Может на других серверных операционках тупит. не пробовал

    Reply
  6. Drizer2000

    Для подключение торгового оборудования по RDP — решение от 1с — это просто полный провал, самое удивительно,что этот косяк они не устранили с самого существование ут 10.3, мне даже интересно почему они не хотят это исправлять. Может кто писал в тех. поддержку,очень интересно что они отвечают. Я использовал решение не через пользователя, а через имя компьютера на котором подключено оборудование.

    Функция ПолучитьИмяКомпьютераТО() Экспорт
    
    //((заменим на имя физического компа
    //типовой код комментируем.
    //Если мИмяКомпьютера = Неопределено Тогда
    // мИмяКомпьютера = ВРег(ИмяКомпьютера());
    //КонецЕсли;
    Если мИмяКомпьютера = Неопределено Тогда
    WSS = Новый COMОбъект(«WScript.Shell»);
    WSSE = WSS.Environment(«Process»);
    мИмяКомпьютера = ВРег(WSSE.Item(«ClientName»));
    Если ПустаяСтрока(мИмяКомпьютера) Тогда
    мИмяКомпьютера = ВРег(ИмяКомпьютера());
    КонецЕсли;
    КонецЕсли;
    //если зайти в терминальной сессии консольно, то получим «CONSOLE»,
    // в этом случае применяем типовую функцию
    Если мИмяКомпьютера = «CONSOLE» Тогда
    мИмяКомпьютера = ВРег(ИмяКомпьютера());
    КонецЕсли;
    
    Возврат мИмяКомпьютера;
    
    КонецФункции // ПолучитьИмяКомпьютераТО()
    

    Показать

    Reply
  7. klom

    Для работы ФФД 1.05 данное решение не подходит, так как требуется драйвер выше 9. Остается только проброс COM портов в свойствах RDP соединения.

    Reply
  8. evn-zorin

    Проброс портов медленно очень работает, как кто решил с 9-ой ффд 1.05?

    Reply
  9. user783001

    (8) все нормально работает при стандартном пробросе портов. тормозов нет. драйвера 9х

    возможно у вас проблемы с EoU. у себя ее не использую. геморой это.

    Reply
  10. evn-zorin

    (9)EoU никак не подключали дополнительно, просто драйвер 9.х поставили.

    Подскажите, возможно ли его как-то нужно отключить?

    Reply
  11. namazi74

    (10) настраивается через Управление драйверами. Идёт в комплекте с драйвером (я ставлю сейчас KKT_8_16_02_00_Full). А из 9 драйвера беру только папку bin. В управлении драйверами на последней вкладке задается com-порт и стартует служба. В свойствах RDP надо чтобы все порты мапились.

    Reply
  12. namazi74

    (6) объясните пожалуйста, в чем соль вашего кода? У меня через rdp отрабатывало как надо, единственное — я дополнительно передаю ещё имя пользователя.

    Reply
  13. Drizer2000

    (12) соль в том ,что не нужно привязываться к имени пользователя, которое может изменится, а пробрасывается имя компа, на котором стоит оборудование. Если имя пользователя никогда меняться не будет,то и ваш вариант нормальный.

    Reply
  14. evn-zorin

    (11)

    верами на последней вкладке задается com-порт и стартует служба. В свойствах RDP на

    Ситуация такая:

    ККМ прошивка 1.05 , сервер удалённый и канал не совсем стабильный, подключение к серверу идёт по RDP. Крайняя версия УТ 10.3 используется, ей нужен драйвер 9.Х. На локальном компе стоит KKT_8_16_02_00_Full. При стандартном пробросе дикие тормоза.

    Reply
  15. user783001

    (10) касса какая? есть лан порт? если есть лан порт то в драйверах ККМ переводим отправку офд через него. EoU я не устанавливал совсем. при установке драйверов можно выбрать устанавливать его или нет. но это спасет только в случае если касса с лан портом. также посмотрите замером производительности на чем конкретно затыкается работа.

    Reply
  16. evn-zorin

    (15)касса атол 30ф, будь она неладна, офд 1.05

    драйвер для 1С только 9.Х подходит для неё.

    Reply
  17. evn-zorin

    (15)асса атол 30ф, будь она неладна, офд 1.05

    драйвер для 1С только 9.Х подходит для неё.

    я просто в шоке от всех этих ккм, на дворе 2018 год у них до сих пор допотопные компорты

    Reply
  18. AlexLM75

    (16)

    Недавно подключал эту кассу и решил использовать старую обработку ATOLkkt.epf от сентября 17 года, с драйвером KKT_8_16_03_00 нормально работает.

    Reply
  19. SERJ_1CC

    (17)

    никто не сталкивался с такой проблемой, атол 30ф, два компьютера через рдп подключены, один через COM, другой через IP:6220. Так вот, заходишь в базу, печатается и с одного рабочего места и с другого, проблем нет, но как только оставил на несколько минут в бездействии базу, то рабочее место подключенное через IP перестает печатать, пишет ошибку доступа к кассе, помогает перезапуск базы, а через COM таких проблем нет.

    Reply
  20. evn-zorin

    (19)

    скорее всего оборудование сетевой теряет соединение или канал нестабильный, прошивка какая у аппарата атол?

    Reply
  21. SERJ_1CC

    (20) Оказалось, что он не только IP но и ком теряет, правда позже, ошибки возникают, если аппарат не выключается длительное время, больше суток, как минимум, отключение и включение помогает на день, чтобы ошибка не появлялась

    Reply
  22. evn-zorin

    (21)по идее этого должно хватить

    Reply
  23. Albert_R

    (8)+1

    Reply
  24. Krimskiy_xan

    (14)

    Аналогичная ситуация:

    «Прошивка ККТ 1.05 , сервер удалённый и канал не совсем стабильный 4G, подключение к серверу идёт по RDP. Крайняя версия УТ 10.3 используется, ей нужен драйвер 9.Х. На локальном компе и серваке (2008 R2) стоял весь набор драйверов от АТОЛ 8, 9, 10. При стандартном пробросе дикие тормоза (2 минуты на пробитие 1го чека).»

    Победил следующим образом.

    1. Установил дрова KKT_8_16_05_00_Full. Фишка в том, что только на 8й версии Драйвер ККМ я нашел где указать удаленный компьютер, как на картинке в данном посте.

    2. Проделал п.1 на локале, и в терминале, убедился что касса определяется всё также через драйвер.

    3. В 1с через РДП запущенную, пришлось взять обработку из поставки аж версии 10.3.42. Как мне удалось методом тыка понять, что это последняя версия, где также можно задать адрес нахождения ккт через ip:порт.

    Вуаля, пробитие молниеносное. Спасибо автору, что задал правильный вектор поиска решения.

    Reply
  25. Krimskiy_xan

    (7)

    Работает, смотри мой пост (24). Настройку делаем через Тест драйвера ККМ от 8ки, а обработку загружаем из 10.3.42 релиза

    Reply
  26. Rans

    (24) Этот способ лучше чем подключение ккт по tcpip с дто9?

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *