Почему в 1С дублируются данные ККТ и перестают создаваться документы Кассовая смена

Системный администратор 1С v8.3 (Управляемые формы) Сфера услуг, туризм и социальный сектор
← На главную

Работа с контрольно-кассовой техникой (ККТ) в многопользовательских средах, таких как SQL-сервер с использованием веб-сервера или RDP, часто преподносит неприятные сюрпризы. Одна из наиболее запутанных ситуаций — когда в справочнике Подключаемое оборудование у разных физических касс внезапно становятся одинаковыми регистрационные номера, номера ФН и заводские номера. При этом сама касса может печатать корректные чеки, но логика 1С ломается: документы Кассовая смена перестают создаваться, а отчеты выводят неверные данные.

Разберем детально, почему это происходит и как восстановить нормальную работу системы.

Анализ проблемы: почему данные «перемешиваются»

Проанализируем ситуацию: изначально оборудование было настроено верно, но в процессе работы параметры одной кассы «наехали» на параметры другой. Выясним причину этого явления. В платформе 1С оборудование жестко привязано к справочнику Рабочие места. В среде веб-сервера или терминального доступа идентификатор рабочего места может генерироваться динамически. Если два сеанса разных пользователей по какой-то причине получили один и тот же ID рабочего места, система начинает считать, что обе кассы подключены к одному локальному компьютеру.

Когда один из пользователей открывает настройки оборудования или выполняет операцию, драйвер ККТ опрашивает физическое устройство и обновляет данные в базе. Если в этот момент произошел сбой идентификации рабочего места, 1С может записать данные физической «Кассы №1» в карточку «Кассы №2». Рассмотрим основные факторы, способствующие этому:

  1. Ошибки кэширования веб-расширения: При работе через браузер используется «1С:Предприятие. Расширение для работы с подключаемым оборудованием». Оно может кэшировать настройки драйвера.
  2. Динамические имена компьютеров: Если веб-клиент запускается на разных ПК, но с одинаковыми сетевыми именами (или через прокси), 1С может ошибочно сопоставить их с одной записью в справочнике Рабочие места.
  3. Копирование карточек оборудования: Часто администраторы создают вторую кассу нажатием кнопки F9 (копирование). При этом копируются внутренние идентификаторы, которые связывают запись с конкретным экземпляром драйвера.

Решение проблемы через обновление параметров регистрации

Как показывает практика, простое переподключение оборудования в списке часто не помогает. Рассмотрим пошаговый алгоритм восстановления корректных данных, который помог участникам обсуждения:

  1. Перейдем в справочник Подключаемое оборудование.
  2. Откроем карточку кассы, в которой отображаются неверные (чужие) данные.
  3. Нажмем кнопку «Изменить параметры регистрации».
  4. В открывшемся окне драйвера система выполнит прямой опрос устройства. Если физически подключена правильная касса, поля заполнятся актуальными данными именно этого устройства.
  5. Нажмем «Записать» или «ОК» без внесения ручных правок. Система принудительно перезапишет реквизиты СерийныйНомер и РегистрационныйНомер в базе данных.

Важный момент: Эти реквизиты часто недоступны для прямого редактирования в форме, так как они должны считываться программно из памяти ФН через драйвер.

Почему перестали создаваться документы «Кассовая смена»?

Рассмотрим связь между некорректными номерами в справочнике и логикой закрытия смены. В большинстве типовых конфигураций (включая «Расчет квартплаты и бухгалтерия ЖКХ») при создании документа Кассовая смена срабатывает программная проверка кода:


// Пример упрощенной логики проверки
Если ОтветДрайвера.СерийныйНомер <> Объект.СерийныйНомер Тогда
    ВызватьИсключение "Ошибка: Подключенное устройство не соответствует настройкам оборудования!";
КонецЕсли;

Когда в справочнике записан номер «Кассы №1», а вы пытаетесь закрыть смену на «Кассе №2», проверка не проходит. Касса (железо) успешно печатает Z-отчет, так как ей все равно, что записано в базе 1С, но сама программа блокирует создание документа в базе из-за несоответствия номеров. В итоге мы получаем «рассинхрон»: смена в ФН закрыта, а в 1С она висит в статусе «Открыта».

Профилактика и исправление справочника «Рабочие места»

Чтобы ситуация не повторилась, проанализируем настройки рабочих мест. Посмотрим на список в справочнике Рабочие места. Для каждого физического компьютера или уникальной связки «Пользователь + Компьютер» должна существовать строго одна запись.

Рекомендуем выполнить следующие действия:

Работа с регистром «Статус кассовых смен»

Если документы перестали создаваться даже после исправления номеров, проанализируем состояние регистра сведений Статус кассовых смен (или аналогичного в вашей конфигурации). В нем хранится информация о последней открытой смене для конкретной кассы. Если там «зависла» запись о предыдущей неудачной попытке закрытия, 1С может выдавать ошибку «Смена уже закрыта» или «Смена не открыта». В таких случаях может потребоваться ручная корректировка записи в регистре, чтобы привести её в соответствие с фактическим состоянием кассового аппарата.

Соблюдение этих правил и понимание механизмов взаимодействия 1С с драйвером ККТ позволит избежать ошибок при работе с фискальными данными и обеспечит корректное формирование отчетности.

← На главную