Как исправить ошибку Метод объекта не обнаружен (ИспользуетсяРегистрацияРозничныхПродажВЕГАИС) в РМК 1С:УНФ?

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

При работе в рабочем месте кассира (РМК) в конфигурации 1С:Управление нашей фирмой (УНФ) версии 1.6.15.44 пользователи часто сталкиваются с неприятной ситуацией. При попытке нажать кнопку «Подбор» система аварийно завершает операцию, выдавая ошибку: Метод объекта не обнаружен (ИспользуетсяРегистрацияРозничныхПродажВЕГАИС). Примечательно, что эта ошибка возникает даже в тех случаях, когда интеграция с ЕГАИС полностью отключена в настройках системы.

В этой статье мы подробно разберем, почему возникает эта проблема, проанализируем программный код и рассмотрим несколько вариантов решения — от простых пользовательских настроек до внесения правок через механизм расширений.

Проанализируем ситуацию и выясним причину ошибки

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


ИспользуетсяРегистрацияРозничныхПродажВЕГАИС = УправлениеНебольшойФирмойСервер.ИспользуетсяРегистрацияРозничныхПродажВЕГАИС();

Суть проблемы заключается в том, что в релизе 1.6.15.44 разработчики внесли изменения в состав общих модулей, связанных с учетом алкогольной продукции. Функция ИспользуетсяРегистрацияРозничныхПродажВЕГАИС была либо удалена из общего модуля УправлениеНебольшойФирмойСервер, либо у нее был снят флаг «Экспортная», либо она была перенесена в специализированный модуль интеграции с ЕГАИС. Однако в коде обработки ПодборРеализация (форма КорзинаЦенаОстатокРезервХарактеристика) остался вызов старого метода без проверки его существования.

Таким образом, программа пытается выполнить команду, которой физически не существует в структуре конфигурации, что и приводит к мгновенной остановке процесса подбора товаров.

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

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

  1. Перейдем в раздел Администрирование.
  2. Выберем пункт Обслуживание.
  3. Откроем подраздел Обновление программы и перейдем по гиперссылке Установленные исправления (патчи).
  4. Нажмем кнопку Поиск и установка исправлений.

Если система найдет патч, исправляющий работу модуля ПодборРеализация, он будет установлен автоматически. Это самый простой и безопасный способ, не требующий вмешательства в код программы.

Способ 2. Обновление конфигурации до актуального релиза

Разберем ситуацию, когда патчи по какой-то причине недоступны. Ошибка ИспользуетсяРегистрацияРозничныхПродажВЕГАИС была полностью исправлена в последующих минорных обновлениях. Переход на версию 1.6.16 или переход на современную ветку 3.0 гарантированно решает проблему. Если бизнес-процессы позволяют произвести обновление, мы рекомендуем выбрать именно этот путь, так как он устраняет первопричину — несоответствие кода в типовом решении.

Способ 3. Использование расширения (решение для программиста)

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

Нам необходимо добавить в расширение общий модуль УправлениеНебольшойФирмойСервер и реализовать в нем недостающую функцию. Рассмотрим пример кода, который нужно поместить в расширение:


&После("ИспользуетсяРегистрацияРозничныхПродажВЕГАИС") // Если метод существует, но не экспортный
Функция Расш_ИспользуетсяРегистрацияРозничныхПродажВЕГАИС()
    Возврат Ложь; // Возвращаем Ложь, так как ЕГАИС у клиента отключен
КонецФункции

// Либо, если метода вообще нет в модуле:
Функция ИспользуетсяРегистрацияРозничныхПродажВЕГАИС() Экспорт
    Возврат Ложь;
КонецФункции

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

Способ 4. Проверка остаточных настроек ЕГАИС

Иногда система может вести себя некорректно из-за «зависших» настроек в регистрах. Хотя это редко исправляет ошибку отсутствующего метода, проанализируем ситуацию с настройками для профилактики:

  1. Включим временно функциональную опцию Алкогольная продукция в настройках параметров учета.
  2. Зайдем в настройки интеграции с ЕГАИС.
  3. Убедимся, что там не выбраны никакие организации и не настроены параметры обмена.
  4. Если записи есть — удалим их или очистим.
  5. Снова выключим опцию использования алкогольной продукции.

Важный момент: если ошибка Метод объекта не обнаружен сохраняется, значит, проблема исключительно в программном коде, и поможет только Способ 2 или Способ 3.

Дополнительные рекомендации

Посмотрим на ситуацию со стороны кэширования. В некоторых случаях, даже после внесения правок или установки патчей, 1С может продолжать использовать старые версии скомпилированных модулей. Проанализируем, как правильно очистить кэш:

  1. Закроем все сеансы работы с базой данных.
  2. В списке баз удалим текущую базу и добавим её заново (это самый простой способ очистки локального кэша).
  3. Либо воспользуемся запуском 1С с параметром /ClearCache.

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

← На главную