Как исправить ошибку «Поле объекта не обнаружено (МРЦ)» при сканировании маркировки в 1С?

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

С выходом новых релизов в ветках 2.5.22 для крупных конфигураций (ERP, КА, УТ) и актуальных версий УНФ 3.0 пользователи столкнулись с неприятной технической проблемой. При попытке отсканировать код маркировки (ИС МП), особенно для табачной или никотинсодержащей продукции, система выдает критическую ошибку: ОбщийМодуль.ШтрихкодированиеИСМПСлужебный.Модуль(1168): Поле объекта не обнаружено (МРЦ). Это блокирует работу на кассе или при приемке товара — для бесперебойных продаж есть готовое решение для онлайн-касс и проверки кодов маркировки. В данной статье мы подробно разберем, почему возникает эта ошибка и как ее оперативно устранить несколькими способами.

Выясним причину возникновения ошибки

Проанализируем ситуацию с технической точки зрения. Ошибка локализована в общем модуле ШтрихкодированиеИСМПСлужебный. Разработчики компании «1С» в последних обновлениях изменили алгоритм разбора входящих данных от сканера штрихкодов. Теперь программа при обработке кодов маркировки табачной продукции ожидает увидеть в структуре данных поле МРЦ (Максимальная розничная цена).

Однако существует нюанс: не все товары, подлежащие маркировке как «табачная продукция», физически имеют это поле в коде или в возвращаемой структуре данных. Например, безникотиновые смеси для кальянов или жидкости для электронных систем доставки никотина могут обрабатываться тем же программным кодом, но поле МРЦ для них не предусмотрено. Программа пытается обратиться к этому свойству напрямую, не выполнив предварительную проверку на его существование, что и приводит к падению сеанса.

Рассмотрим пример того, как примерно выглядит проблемный участок кода, где происходит обработка кодов с символами GS (FNC1) (упрощенно):


// Фрагмент логики, вызывающий ошибку
Если ПараметрыСканирования.ЭтоТабачнаяПродукция Тогда
    ЦенаМРЦ = ДанныеКода.МРЦ; // Здесь происходит обращение к отсутствующему полю
    // ... дальнейшая логика
КонецЕсли;

Для исправления этой ситуации требуется либо программная правка (патч), либо изменение настроек системы, чтобы исключить обращение к данному полю.

Способ 1: Установка официальных патчей (рекомендуется)

Поскольку проблема официально признана багом, разработчики выпустили оперативные исправления (патчи), которые можно установить без полного обновления конфигурации. Это самый правильный путь, так как он не требует изменения бизнес-логики и отключаемых настроек.

Проанализируем, какой патч необходим для вашей конфигурации:

  1. Для 1С:Комплексная автоматизация 2.5.22, 1С:Управление торговлей 11.5.22 и 1С:ERP 2.5.22 ищите патч с номером EF_60015520 — также исправить ошибки сканирования и проведения маркированной продукции поможет обработка исправления ошибок маркировки в 1С:УТ/КА/ERP.
  2. Для 1С:Управление нашей фирмой 3.0 (начиная с релиза 3.0.13.195 и выше) требуется патч EF_30182650 — также повысить надежность работы поможет автоматизация сканирования и фиксации кодов маркировки для 1С:УНФ.

Разберем по шагам процесс установки исправления:

  1. Перейдем в раздел НСИ и администрирование (или «Настройки» в УНФ) — Обслуживание.
  2. Раскроем подраздел Обновление программы и выберем пункт Установка исправлений (патчей).
  3. Если в системе настроен автоматический поиск обновлений, программа предложит скачать и установить доступные патчи. Выберем нужный идентификатор (указанный выше) и нажмем «Далее».
  4. После установки система предложит перезагрузить сеанс.

Способ 2: Отключение настройки «Учитывать МРЦ»

Если по каким-то причинам вы не можете установить патч прямо сейчас (например, нет прав доступа или отсутствует интернет на сервере), проблему можно решить через настройки интерфейса. Мы можем временно запретить программе проверять максимальную розничную цену.

Рассмотрим, где находится эта настройка в разных конфигурациях:

Для КА, УТ и ERP:

  1. Откроем раздел НСИ и администрирование.
  2. Перейдем в пункт Настройка ИС МП (обувь, одежда, табак...), которая отвечает за общую интеграцию.
  3. Найдем ссылку Настройки сканирования кодов маркировки — для этой задачи также есть готовый инструмент проверки и контроля кодов маркировки сканером.
  4. В открывшемся окне найдем флаг Учитывать МРЦ и снимем его.

Для УНФ:

  1. Перейдем в меню Настройки.
  2. Выберем Еще больше возможностей.
  3. Найдем блок Интеграция с ИС МП (для настройки учета табака и других групп можно использовать услуги по внедрению и сопровождению маркировки в 1С).
  4. Откроем Настройки сканирования кодов маркировки и также снимем галочку Учитывать МРЦ.

Важное замечание для пользователей УНФ: Если вы зашли в этот раздел и не видите настройки, связанные с МРЦ, нам нужно проверить справочник Категории номенклатуры. Посмотрите, выбрана ли для ваших товаров особенность учета Табачная продукция. Если такая особенность не выбрана ни для одного товара, настройки управления МРЦ скрываются интерфейсом как нерелевантные.

Особенности работы с кэшем после исправлений

Иногда после установки патча или изменения настроек пользователи сообщают, что ошибка Поле объекта не обнаружено (МРЦ) продолжает появляться. Рассмотрим подробнее, почему так происходит. Платформа 1С:Предприятие 8.3 активно кэширует программные модули и настройки пользователя. Если ошибка «застряла» в локальном кэше, даже исправленный код может не подтянуться.

Проанализируем алгоритм очистки, если решение не помогло сразу:

  1. Полностью завершите все сеансы работы с базой данных.
  2. Запустите окно выбора информационных баз.
  3. Выберите нужную базу, нажмите кнопку Изменить, затем Далее и в поле «Дополнительные параметры запуска» впишите команду /ClearCache.
  4. Запустите базу, проверьте работу сканера, после чего параметр можно будет удалить.

Заключение

Мы проанализировали критическую ошибку, возникающую при работе с маркировкой в актуальных релизах 1С. Основная причина кроется в недоработке модуля ШтрихкодированиеИСМПСлужебный, который некорректно обрабатывает структуру данных МРЦ.

Подведем итог: наиболее стабильным решением является установка патча EF_60015520 (или аналогичного для УНФ). В качестве экстренной меры используйте отключение контроля МРЦ в настройках сканирования. Помните, что при работе с табаком контроль МРЦ важен для соблюдения законодательства о минимальных и максимальных ценах, поэтому после выхода полноценного исправленного релиза конфигурации рекомендуется вернуть настройки в исходное состояние.

← На главную