Как решить проблему с указанием и сохранением серий комплектующих при разборке товара в 1С:УТ 11.5?

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

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

Причина 1. Настройка политики учета серий для прихода

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

Давайте проверим и скорректируем настройки:

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

Причина 2. Влияние статусов документа

В современных релизах 1С:УТ 11.5 (начиная с 11.5.7 и выше) ввод серий жестко регламентирован текущим статусом документа. Это сделано для разделения этапов планирования и фактического исполнения операции. Рассмотрим эту логику подробнее.

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

Причина 3. Особенности работы на ордерных складах

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

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

Как программно заполнить серии в УТ 11.5

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

Рассмотрим пример правильного подхода к программному заполнению:


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

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

Альтернативный вариант: Отражение через «Прочее оприходование»

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

Разберем этот метод по шагам:

  1. Оформите документ Внутреннее потребление товаров с видом операции «Списание на расходы/себестоимость». Здесь вы спишете основной товар (например, «Куст Мадолия») с его исходной серией.
  2. Оформите документ Прочее оприходование товаров с видом операции «Оприходование (из производства)» или «Излишки».
  3. В этом документе вы можете свободно указать любые серии для новых товаров («Куст Нестандарт», «Ветки») и вручную зафиксировать их стоимость.

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

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

← На главную