Как решить проблемы при работе с ЕГАИС в 1С:Управление торговлей 10.3?

Программист 1С v8.3 (Обычные формы) 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

Интеграция конфигурации 1С:Управление торговлей 10.3 с ЕГАИС на этапе её внедрения и активной эксплуатации вызывает немало вопросов у технических специалистов и бухгалтеров. Специфика работы с транспортным модулем (УТМ), особенности аппаратных ключей JaCarta или Рутокен, а также методологические нюансы учета слабоалкогольной и разливной продукции часто приводят к возникновению ошибок при отправке и получении документов. В этой статье мы подробно разберем наиболее частые проблемы и найдем эффективные способы их решения.

1. Ошибка «WIN 32 ERROR: Неправильная подпись. Возможно, ваша карта содержит несколько сертификатов с одинаковым ID»

Эта критическая ошибка возникает на этапе подписания и отправки актов подтверждения ТТН в ЕГАИС. Система формирует XML-пакет, передает его в УТМ, но на уровне взаимодействия с аппаратным ключом процесс прерывается.

Выясним причину проблемы: УТМ пытается подписать документ, обращаясь к аппаратному носителю, но обнаруживает в контейнере ключа более одного сертификата с одинаковым идентификатором ID. Обычно это происходит в следующих случаях:

  1. На ключе одновременно записаны рабочий (боевой) и тестовый сертификаты RSA.
  2. При плановом продлении электронной подписи старый, истекший сертификат не был удален из памяти устройства.
  3. Произошел сбой в кэше криптопровайдера (например, Единого клиента JaCarta или Панели управления Рутокен).

Рассмотрим пошаговое решение этой проблемы:

  1. Запустите утилиту администрирования вашего носителя (например, Единый клиент JaCarta) в режиме администратора.
  2. Перейдите на вкладку работы с сертификатами и проверьте содержимое разделов PKI и ГОСТ.
  3. Если на носителе действительно присутствуют дублирующиеся или старые неиспользуемые сертификаты, произведите полную инициализацию (форматирование) проблемного раздела. Внимание! Перед форматированием убедитесь, что у вас есть резервные копии или возможность быстро восстановить рабочий сертификат.
  4. Сгенерируйте новый запрос на рабочий сертификат RSA через Личный кабинет ЕГАИС и запишите его на чистый носитель.
  5. Рекомендуется переустановить всю связку программного обеспечения на чистую операционную систему. Практика показывает, что установка УТМ «с нуля» (а не обновлением поверх старой версии) предотвращает конфликты версий ПО. Установите актуальную версию SafeNet Authentication Client или драйвера Рутокен, затем актуальную версию JaCarta/Рутокен Клиента и только после этого устанавливайте УТМ.

2. Ошибка уникальности поля «Код» в справочнике видов алкогольной продукции

При загрузке классификаторов номенклатуры и видов продукции из ЕГАИС пользователи часто сталкиваются с ошибкой, блокирующей обработку входящих документов. Система выдает сообщение о нарушении уникальности кода в справочнике видов алкогольной продукции.

Проанализируем ситуацию: Классификатор видов продукции в ЕГАИС содержит строго определенные коды (например, 500 — пиво, 200 — водка). Однако при обмене данными ЕГАИС может присылать элементы с незначительными отличиями в наименовании при одном и том же коде. Из-за жесткого контроля уникальности кода в справочнике 1С попытка записать дублирующийся элемент вызывает отмену транзакции, из-за чего очередь запросов в УТМ «зависает».

Как решить эту проблему программно и организационно:

В типовых конфигурациях 1С этот механизм со временем был доработан, однако если вы используете кастомизированную или старую версию УТ 10.3, проблему можно решить изменением алгоритма записи в справочник. Вместо вызова исключения при обнаружении дубля мы можем записывать информацию в лог и использовать существующий элемент.

Рассмотрим пример кода, который можно внедрить в модуль объекта справочника ВидыАлкогольнойПродукции в процедуру ПередЗаписью:


Процедура ПередЗаписью(Отказ)
    // Отключаем стандартный жесткий отказ при совпадении кодов ЕГАИС
    Если ОбменДанными.Загрузка Тогда
        Возврат;
    КонецЕсли;

    НайденныйСсылка = Справочники.ВидыАлкогольнойПродукции.НайтиПоКоду(ЭтотОбъект.Код);
    Если ЗначениеЗаполнено(НайденныйСсылка) И (НайденныйСсылка <> ЭтотОбъект.Ссылка) Тогда
        // Записываем информацию в журнал регистрации для последующего анализа
        ЗаписьЖурналаРегистрации("ЕГАИС.ДублиКодов", 
            УровеньЖурналаРегистрации.Предупреждение, 
            ЭтотОбъект.Метаданные(), 
            ЭтотОбъект.Ссылка, 
            "Попытка записи дублирующего кода вида продукции: " + ЭтотОбъект.Код + ". Элемент перенаправлен на существующий.");
        
        // Перенаправляем алгоритмы сопоставления на уже существующий элемент, отменяя запись нового дубля
        Отказ = Истина; 
    КонецЕсли;
КонецПроцедуры

После временного отключения контроля уникальности обработайте зависшую очередь сообщений УТМ, после чего объедините дублирующиеся элементы справочника с помощью стандартной обработки «Поиск и замена дублей».

3. Сопоставление разливного пива в кегах и обработка тега Capacity

Большие трудности у товароведов вызывает приемка нефасованной (разливной) продукции, в частности пива в кегах объемом 30 или 50 литров.

Разберем методологию ЕГАИС:

Настроим сопоставление по шагам:

  1. Откроем карточку номенклатуры в 1С. Базовая единица измерения должна быть указана как «литр» (так как в рознице пиво будет списываться литрами).
  2. В справочнике единиц измерения для данной номенклатуры создадим дополнительную единицу — например, «Кега 30 л» с коэффициентом 30 по отношению к литру. Также обязательно должна быть создана единица измерения «дал» с коэффициентом 10.
  3. При сопоставлении данных ЕГАИС и 1С в форме сопоставления классификаторов для нефасованного пива в качестве единицы ЕГАИС сопоставляем единицу «дал».
  4. При проведении документа поступления система автоматически пересчитает количество из дал в литры (умножив на 10). Например, если в ТТН ЕГАИС пришло 15 дал, в документ «Поступление товаров и услуг» запишется 150 литров. Соответственно, цена за литр автоматически уменьшится в 10 раз относительно цены за дал, сохранив общую сумму документа.
  5. Важно: Не пытайтесь вручную менять цену в табличной части сопоставления ЕГАИС или в самом документе поступления без пересчета количества, иначе при попытке отправить «Акт подтверждения» система обнаружит расхождение сумм и заставит вас формировать «Акт расхождения», который поставщик может отклонить.

4. Перспективы поддержки ЕГАИС в УТ 10.3

Проанализируем текущую ситуацию с развитием функционала. Хотя фирма «1С» долгое время поддерживала интеграцию с ЕГАИС в рамках конфигурации УТ 10.3, ее архитектура на обычных формах существенно ограничивает внедрение современных помарочных механизмов учета и новых форматов XML-схем ЕГАИС (включая ЕГАИС 3.0 и 4.0).

Официальная поддержка конфигурации «Управление торговлей 10.3» была завершена в апреле 2024 года. Для полноценной и стабильной работы с маркированным алкоголем и пивом (включая частичное списание кег на кранах и новые форматы обмена с УТМ) пользователям рекомендуется рассмотреть переход на современные конфигурации на управляемых формах:

В этих решениях механизмы взаимодействия с ЕГАИС и государственной системой маркировки («Честный Знак») регулярно обновляются в автоматическом режиме в соответствии с изменениями в законодательстве РФ.

← На главную