Как исправить ошибку «пустая аналитика учета номенклатуры» в этапе производства 1С:ERP 2.5?

Программист 1С v8.3 (Управляемые формы) 1С:ERP Управление предприятием Управленческий учет Промышленность, строительство и АПК
← На главную

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

Анализ проблемы и диагностика регистров

Проанализируем ситуацию: у нас есть набор полуфабрикатов (А, Б, В), которые выпускаются в цеховую кладовую. Эти полуфабрикаты являются компонентами для сборки комплекта С. При попытке начать этап производства комплекта С, система должна зафиксировать расход компонентов. Именно в этот момент возникают некорректные движения в регистрах. Для диагностики подобных расхождений полезно использовать отчет для сравнения товаров на складах и данных регистра себестоимости, который поможет визуализировать разрывы в аналитике.

Если мы заглянем в отладчик или посмотрим движения документа, то увидим следующую картину в регистре СебестоимостьТоваров:

  1. Расходная запись: аналитика учета номенклатуры пуста, при этом поле КорАналитикаУчетаНоменклатуры заполнено.
  2. Приходная запись: все поля заполнены корректно.

Такое поведение системы говорит о том, что механизм формирования ключей аналитики не смог сопоставить данные из табличной части документа с существующими (или вновь создаваемыми) записями в справочнике КлючиАналитикиУчетаНоменклатуры. Рассмотрим подробнее причины возникновения этого разрыва.

Причина 1: Сбои в справочнике «Ключи аналитики учета номенклатуры»

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

Что необходимо сделать:

  1. Воспользуемся стандартной обработкой «Исправление ключей аналитики» (если она доступна в вашей версии) или запустим регламентное задание ОбновлениеКлючейАналитики.
  2. Проверим конкретную номенклатуру (А, Б, В). Попробуем в этапе производства в табличной части «Расход» перевыбрать номенклатуру или характеристику. Это заставит систему принудительно инициировать поиск или создание ключа АналитикаУчетаНоменклатуры для данной строки.

Причина 2: Настройка обеспечения и цеховых кладовых

Часто проблема кроется в настройке схемы обеспечения. Если полуфабрикаты А, Б, В выпускаются в кладовую, а для комплекта С настроено обеспечение «из этой же кладовой», система может конфликтовать, если подразделение-исполнитель этапа С не имеет прав или четкой привязки к этой кладовой.

Проанализируем настройки:

Причина 3: Особенности работы с «Назначениями» (Обособленный учет)

Если в цепочке производства используется обособленный учет (под заказ), то реквизит Назначение становится критически важным для формирования ключа аналитики. Если в этапах на выпуск А, Б, В указано одно назначение (или оно пустое), а в этапе на комплект С — другое, система выдаст ошибку пустой аналитики, так как не сможет найти подходящий остаток.

Разберем по шагам проверку назначений:

  1. Откроем каждый этап в цепочке (для А, Б, В и для С).
  2. Проверим колонку «Назначение» в ТЧ «Расход» и «Выходные изделия».
  3. Убедимся, что во всех документах цепочки соблюдается единообразие: либо везде заполнено одно и то же назначение, либо везде пусто (общий учет).

Причина 4: Ошибки релиза 2.5.9 и работа с расширениями

В версиях 1С:ERP 2.5.9.xxx был зафиксирован ряд программных ошибок (багов), связанных с формированием временных таблиц при проведении этапа в статусе «Начат». Система пытается сформировать корреспондирующие движения для НЗП, но теряет ссылку на аналитику склада.

Рассмотрим пример того, как программно можно проверить заполнение аналитики перед записью (для разработчиков):


// В модуле проведения можно выполнить проверку подготовленных таблиц
Для Каждого СтрокаТЧ Из ТаблицаСебестоимость Цикл
    Если Не ЗначениеЗаполнено(СтрокаТЧ.АналитикаУчетаНоменклатуры) Тогда
        Сообщить("Обнаружена пустая аналитика для номенклатуры: " + СтрокаТЧ.Номенклатура);
        // Здесь можно поставить точку останова и проследить путь формирования ключа
    КонецЕсли;
КонецЦикла;

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

Технический метод «обхода» проблемы

Если проблему нужно решить оперативно, а обновление невозможно, выполним следующие действия:

  1. Распроведение цепочки: Распроведем все этапы производства компонентов А, Б, В и итогового комплекта С.
  2. Перезаполнение спецификации: В этапе производства комплекта С на вкладке «Расход» нажмем «Заполнить по спецификации». Если в производстве образовались отрицательные остатки, можно применить обработку заполнения передачи материалов по отрицательным остаткам.
  3. Проверка склада: Временно изменим в этапе С склад в ТЧ «Расход» на обычный оптовый склад (не кладовую) и попробуем провести. Если ошибка исчезнет — проблема 100% в настройках кладовой и подразделения.
  4. Корректировка данных: В сложных случаях, когда движения уже созданы некорректно, пригодится универсальная корректировка остатков регистра накопления для ручного исправления записей.

Выясним причину появления пустой строки в ДвиженияНоменклатураНоменклатура: это происходит потому, что при расходе материалов со склада в производство (в НЗП) система должна создать «пару» движений. Если одно из них имеет пустую аналитику, значит, система «потеряла» информацию о месте хранения или о самой номенклатуре в одной из временных таблиц запроса проведения. Чаще всего это связано с тем, что спецификация на комплект С ссылается на старые или некорректные версии спецификаций полуфабрикатов.

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

← На главную