Вопрос интеграции современного кассового оборудования с платформой 1С:Предприятие 7.7 (так называемыми «клюшками») становится все более острым. В частности, популярная автономная касса Меркурий 185Ф часто встречается у малого бизнеса, который не спешит переходить на 1С 8.3. В данной статье мы разберем, как преодолеть технические ограничения и «подружить» эти две системы, несмотря на отсутствие официальной поддержки со стороны производителя.
Рассмотрим первопричину сложностей. По умолчанию Меркурий 185Ф — это автономная кассовая машина (АКМ). Однако для полноценной работы с 1С нам необходимо, чтобы устройство работало в режиме фискального регистратора (ФР). Проанализируем техническую возможность: как отмечают специалисты, касса переводится в режим ФР буквально несколькими нажатиями кнопок в меню настроек самого аппарата. В этом режиме касса перестает реагировать на собственную клавиатуру (кроме системных клавиш) и начинает исполнять команды, поступающие через интерфейс USB или Wi-Fi.
Тем не менее, основная проблема кроется в драйверах. Официальный софт от компании «Инкотекс» для платформы 7.7 более не поддерживается. Поэтому нам придется рассмотреть альтернативные пути решения задачи.
Проанализируем наиболее стабильный на текущий момент способ — использование специализированного программного обеспечения, такого как KkmServer. Этот программный комплекс выступает в роли «моста» между современными протоколами касс и старыми технологиями 1С 7.7.
Разберем по шагам, как работает эта схема:
COM-объекту или через HTTP-запросы.Этот метод позволяет обойти проблемы с ФФД 1.2 и маркировкой честного знака, так как всю тяжелую работу по формированию тегов берет на себя сервер, а 1С 7.7 лишь передает базовый набор данных о товаре и цене.
Если мы решим пойти путем прямой интеграции, нам потребуется старая библиотека драйвера, которая еще сохранила совместимость с OLE/COM. Посмотрим на пример кода, который инициализирует работу с кассой в 1С 7.7:
// Пример инициализации объекта кассы
Попытка
ЗагрузитьВнешнююКомпоненту("MercuryFPDRV.dll");
Касса = СоздатьОбъект("AddIn.MercuryFPDRV");
Исключение
Предупреждение("Не удалось загрузить драйвер кассы Меркурий!");
КонецПопытки;
Выясним причину, по которой этот метод может не сработать. Современные прошивки Меркурия могут использовать обновленные протоколы обмена, которые старая dll просто не поймет. Кроме того, при работе через USB-кабель система создает виртуальный COM-порт. Важно убедиться, что в диспетчере устройств установлен драйвер STM32 Virtual COM Port, иначе 1С не увидит устройство.
Если бюджет ограничен, а стабильности в режиме ФР добиться не удается, рассмотрим вариант Off-line обмена. В этом случае 1С 7.7 не управляет кассой в момент пробития чека. Вместо этого мы реализуем механизм выгрузки справочника товаров.
Проанализируем алгоритм работы:
Рассмотрим пример формирования строки для выгрузки товара:
ТекстВыгрузки = Строка(КодТовара) + ";" + ТоварНаименование + ";" + Строка(Цена) + ";0;0;0;";
// Где параметры после цены отвечают за налоговые ставки и отделы
Важно понимать, что при работе с маркированными товарами (обувь, одежда, молочная продукция) через 1С 7.7 возникают критические сложности. Код маркировки (DataMatrix) должен передаваться в кассу в определенном формате. Старые типовые обработки «Торговли и Склада» не содержат полей для передачи Тега 1162 или Тега 1163.
Для решения этой задачи в 1С 7.7 придется значительно перерабатывать модуль печати чека в глобальном модуле или в самой обработке обслуживания ККМ. Проанализируем ситуацию: проще и надежнее использовать KkmServer, так как он позволяет передавать строку маркировки в простом текстовом виде, самостоятельно преобразуя ее в нужный формат для ФН.
Разберем технический нюанс подключения по USB. При подключении Меркурий 185Ф к ПК часто определяются два устройства. Нам нужно выбрать именно то, которое отвечает за протокол ФР. Проверить это можно через тестовую утилиту от производителя. Если 1С «зависает» при обращении к порту, попробуйте изменить скорость обмена в настройках кассы и драйвера (обычно это 115200 или 57600 бод).
Подводя итог, можно сказать, что связка Меркурий 185Ф и 1С 7.7 — это рабочее, но трудозатратное решение. Рассмотрим наши действия: если необходима полноценная работа в режиме реального времени, выбираем KkmServer. Если достаточно обновления цен раз в день — используем Off-line обмен. Прямое использование старых драйверов AddIn.MercuryFPDRV в 2024 году мы рекомендовать не можем из-за их несовместимости с новыми требованиями законодательства по маркировке товаров.