При автоматизации рабочего места кассира часто возникает задача интеграции пин-пада Ingenico iPP320, работающего под управлением программного обеспечения Arcus 2, с конфигурацией «1С:Управление торговлей 10.3». Банковские специалисты на этапе установки нередко ограничиваются проверкой связи через собственную сервисную утилиту и эмуляцией COM-порта, оставляя настройку со стороны 1С специалистам предприятия.
Разберем причины возникающих сложностей и проанализируем практические способы подключения данного оборудования к УТ 10.3.
Выясним причину, по которой типовая конфигурация УТ 10.3 не содержит встроенного драйвера для Arcus 2. Конфигурация «1С:Управление торговлей 10.3» построена на классической архитектуре торгового оборудования на обычных формах. Большинство современных сертифицированных драйверов эквайринга от разработчиков процессингового ПО создаются под Библиотеку подключаемого оборудования (БПО), которая используется в управляемых конфигурациях (УТ 11, Розница 2 и 3, ERP).
Для взаимодействия УТ 10.3 с ПО Arcus 2 требуется внешняя обработка обслуживания, поддерживающая протокол Arcus 2 CAP или прямое взаимодействие с компонентами поставки банка.
Рассмотрим наиболее надежный программный способ интеграции без покупки сторонних модулей. В рабочем каталоге установленного банковского клиента (по умолчанию это C:\Arcus2 или C:\Arccus2) поставляется библиотека ArcCom.dll.
Разберем по шагам порядок подключения через COM-объект:
regsvr32 "C:\Arcus2\ArcCom.dll"
Попытка
ОбъектДрайвера = Новый COMОбъект("ArcCom.ArcCom");
Исключение
Сообщить("Не удалось инициализировать COM-объект ArcCom: " + ОписаниеОшибки());
Возврат;
КонецПопытки;
// Настройка параметров подключения к терминалу
ОбъектДрайвера.Port = НомерComПорта; // Например, 3 для COM3
ОбъектДрайвера.Speed = 115200;
// Выполнение финансовой транзакции
СуммаКопейки = СуммаДокумента * 100;
Результат = ОбъектДрайвера.Pay(СуммаКопейки);
Если Результат = 0 Тогда
ТекстСлипЧека = ОбъектДрайвера.Cheque;
КодАвторизации = ОбъектДрайвера.AuthCode;
НомерСсылки = ОбъектДрайвера.RRN;
// Печать слип-чека и сохранение данных в документе
Иначе
Сообщить("Ошибка проведения оплаты. Код ошибки: " + Строка(Результат));
КонецЕсли;
Если регистрация COM-компоненты вызывает конфликты разрядности или блокируется политиками безопасности, рассмотрим вариант взаимодействия через утилиту командной строки из каталога Arcus2 (например, rcp.exe или cashreg.exe).
Посмотрим на схему работы этого механизма:
ЗапуститьПриложение() с флагом ожидания завершения:
КомандаЗапуска = "C:\Arcus2\rcp.exe /o1 /s" + Формат(СуммаДокумента * 100, "ЧГ=0");
ЗапуститьПриложение(КомандаЗапуска, "C:\Arcus2", Истина);
Проанализируем варианты получения готовой внешней обработки:
.epf) для обычных форм платформы 1С:Предприятие 8.2 и 8.3. Персональный менеджер или инженер второй линии техподдержки банка может предоставить готовую обработку.При настройке рабочего места кассира обязательно учтем следующие ограничения:
ArcCom.dll является 32-разрядной. Для корректной работы COM-соединения клиентское приложение 1С:Предприятие на рабочем месте должно быть разрядности x86 (32 бит).C:\Arcus2.