← На главную
При выполнении обмена данными с кассовой программой (например, АТОЛ РМК, Frontol) в режиме ККМ-offline пользователи конфигурации 1С:Розница могут столкнуться с сообщением об ошибке: Выгрузить товары не удалось: При выгрузке данных в оборудование произошла ошибка. Нельзя сделать выгрузку. Товары предыдущей выгрузки еще не были получены ККМ-offline. Разберем детально механизм файлового обмена, выясним причины сбоя и пошагово настроим корректную работу оборудования.
Принцип работы файлового обмена с ККМ-offline
Для понимания логики работы механизма обмена рассмотрим, как типовые решения 1С взаимодействуют с внешним кассовым ПО:
- При инициализации выгрузки 1С формирует текстовый файл с базой номенклатуры (например,
goods.txt) в заданном каталоге обмена. - После завершения записи файла данных 1С создает в той же папке служебный файл-флаг (например,
flag.txt или goods.flg). Появление этого файла является сигналом для кассовой программы о том, что файл данных сформирован полностью и готов к загрузке. - Кассовая программа, опрашивая папку по расписанию или событию, обнаруживает файл флага, импортирует номенклатуру в свою базу и затем удаляет файл-флаг.
- Перед началом следующей выгрузки 1С обязательно проверяет наличие файла флага. Если файл существует на диске, система считает, что касса еще не приняла предыдущий пакет данных, и блокирует новую выгрузку во избежание повреждения информации.
Основные причины возникновения ошибки
Проанализируем распространенные ситуации, из-за которых процесс прерывается:
- Некорректный путь к файлу флага в 1С: в поле «Флаг выгрузки» ошибочно прописан путь к постоянно существующему файлу (например, архиву базы данных, системному файлу или документу). Пока этот файл существует физически, 1С не запустит новую выгрузку.
- Файл флага был создан вручную: если пользователь самостоятельно создал пустой файл флага в каталоге, 1С воспримет его как незавершенную предыдущую операцию.
- Кассовое ПО не выполнило загрузку: внешняя программа закрыта, зависла, в ней отключен автоматический обмен или произошла ошибка импорта (например, обнаружены дублирующиеся штрихкоды), из-за чего касса не смогла обработать файл и удалить флаг.
- Несовпадение путей или имен файлов: 1С создает флаг с одним именем, а кассовая программа ожидает другое имя или настроена на чтение из другого каталога.
- Ограничения прав доступа: у пользователя или службы кассового ПО нет прав на чтение, изменение и удаление файлов в папке сетевого обмена.
Пошаговый порядок исправления ошибки
Разберем последовательность действий для восстановления корректного обмена:
- Очистим каталог обмена от зависших файлов: перейдем в папку обмена на диске или сервере и вручную удалим файл флага (
flag.txt / goods.flg). Создавать его заново вручную не нужно — 1С должна создавать и удалять его автоматически в процессе работы. - Проверим настройки торгового оборудования в 1С: откроем раздел
Администрирование → Подключаемое оборудование → выберем наш экземпляр ККМ Offline и перейдем в параметры настройки. Убедимся, что для параметров База товаров, Файл отчета и Флаг выгрузки указана одна и та же папка обмена, а имя файла флага задано как служебное (например, \\server\exchange\flag.txt), а не как ссылка на существующие резервные копии. - Настроим сетевые пути через UNC: если обмен выполняется по локальной сети между разными компьютерами, не используем буквы подключенных сетевых дисков (например,
Z:\exchange\), так как фоновые процессы кассового ПО могут их не видеть. Пропишем прямой сетевой путь вида \\Имя_Компьютера\Папка_Обмена\flag.txt. - Проверим права доступа к папке: предоставим группе пользователей сети полные права (чтение, запись, изменение, удаление файлов) на каталог обмена.
- Проверим параметры в кассовом ПО: запустим кассовую программу (Frontol / АТОЛ РМК), откроем параметры автоматического обмена и сверим пути к файлам данных и флагов. Они должны строго совпадать с настройками в 1С.
- Проанализируем журнал ошибок кассы: если при выгрузке из 1С файл формируется, но касса его не считывает, проверим лог-файлы кассового ПО. При наличии ошибок валидации данных (некорректные символы в наименовании, некорректная длина штрихкода) исправим проблемные позиции в карточках номенклатуры в 1С.
- Выполним полную выгрузку товаров: перейдем в
Продажи → Обмен с подключаемым оборудованием, выберем кассу, очистим таблицу и выполним команду полной перезагрузки базы товаров в ККМ.