Как исправить ошибку «В запросе для номенклатуры продукции указан идентификатор устаревшей версии записи реестра РСХН» при обмене с ВетИС?

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

При работе с системой ВетИС (Меркурий) через программные продукты 1С пользователи часто сталкиваются с ситуацией, когда при попытке отправить документ или обновить данные возникает ошибка: «В запросе для номенклатуры продукции указан идентификатор устаревшей версии записи реестра РСХН». Эта проблема блокирует возможность оформления ветеринарно-сопроводительных документов (ВСД) и требует оперативного вмешательства.

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

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

Для начала проанализируем ситуацию: почему идентификатор вдруг становится «устаревшим»? Система ВетИС построена на принципе строгой версионности объектов. Каждая запись в справочнике продукции Россельхознадзора имеет свой уникальный идентификатор (GUID). Однако, в отличие от простых справочников, в ВетИС существует два типа идентификаторов:

  1. GUID продукции (статический): Идентификатор самой карточки товара, который остается неизменным на протяжении всего времени существования позиции.
  2. GUID версии записи (динамический): Идентификатор конкретного состояния этой карточки.

Ошибка возникает в тот момент, когда 1С отправляет запрос, используя идентификатор версии, которая в реестре ВетИС уже помечена как архивная или неактуальная. Рассмотрим подробнее основные сценарии, приводящие к этому:

Способ 1: Проверка на наличие дубликатов и статуса записи

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

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

Важный нюанс: Если визуально записи кажутся одинаковыми, можно воспользоваться стандартной обработкой Поиск и замена дубликатов, чтобы перенести все ссылки со старой версии на новую.

Способ 2: Получение актуальных данных из ИС «Меркурий»

Если визуальный поиск не помог, воспользуемся штатными средствами синхронизации. Проанализируем путь к нужной настройке в типовых решениях (ERP, УТ 11, КА):

Перейдем по пути: Склад и доставка — Склад — Продукция — Взаимодействие с ИС "Меркурий" — Получение актуальных данных из ИС "Меркурий".

Этот механизм позволяет инициировать принудительный запрос к шлюзу ВетИС. Мы рекомендуем выполнить следующие шаги:

  1. Создадим новый запрос на получение продукции.
  2. В фильтрах укажем конкретное предприятие-производителя проблемного товара.
  3. Дождемся завершения обмена. В процессе загрузки система автоматически сопоставит GUID и обновит статусы записей в локальном регистре 1С.

Способ 3: Работа с регистром сопоставления номенклатуры

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

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

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

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


Запрос = Новый Запрос;
Запрос.Текст = 
    "ВЫБРАТЬ
    |	СопоставлениеНоменклатурыВетИС.Продукция.Идентификатор КАК ИдентификаторВерсии,
    |	СопоставлениеНоменклатурыВетИС.Продукция.ИдентификаторПродукции КАК GUID_Продукции
    |ИЗ
    |	РегистрСведений.СопоставлениеНоменклатурыВетИС КАК СопоставлениеНоменклатурыВетИС
    |ГДЕ
    |	СопоставлениеНоменклатурыВетИС.Номенклатура = &Номенклатура";

Запрос.УстановитьПараметр("Номенклатура", ПроблемнаяСсылка);
Результат = Запрос.Выполнить().Выбрать();
// Если ИдентификаторВерсии отличается от актуального в веб-интерфейсе Меркурия - это причина ошибки.

Способ 4: Решение проблемы с остатками (Складской журнал)

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

Рассмотрим план действий в этой ситуации:

Рекомендации по предотвращению ошибки

Чтобы в будущем не сталкиваться с проблемой «устаревших версий записи реестра РСХН», рекомендуем придерживаться следующих правил:

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

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

← На главную