При использовании ордерной схемы документооборота в 1С:Управление торговлей 11, Комплексной автоматизации 2 или ERP часто возникает ситуация, когда серии товаров указываются в складском документе Расходный ордер на товары, но их необходимо корректно отразить в финансовом документе Реализация товаров и услуг. Прямой ссылки между этими документами на уровне табличных частей в системе нет, что часто ставит в тупик разработчиков и аналитиков. Разберем подробно, как устроена эта связь и как ее реализовать.
Прежде чем искать программную связь, проанализируем настройки системы. Если серии «не подтягиваются» или их невозможно указать, причина часто кроется в Политике учета серий. В 1С предусмотрено несколько вариантов поведения системы:
Заказе клиента или Реализации.Для того чтобы связь была осмысленной, политика учета серий должна подразумевать фиксацию серий для финансового учета (движения по регистрам себестоимости и остатков товаров организаций).
Рассмотрим, как система сопоставляет данные. Основным «мостиком» между складом и финансовым блоком является регистр накопления ТоварыКОтгрузке. Именно в нем фиксируется информация о том, сколько товара и каких серий было фактически отгружено со склада, но еще не оформлено финансово.
Проанализируем ключевые поля этого регистра:
Заказ клиента. Он выступает общим связующим звеном для Реализации и Расходного ордера.Выясним, как работает КлючСвязи. В табличной части Товары документа Реализация товаров и услуг есть реквизит КлючСвязи (иногда он скрыт, но доступен программно). Такой же реквизит есть в табличной части ОтгружаемыеТовары документа Расходный ордер на товары. Оба они ссылаются на один и тот же ИдентификаторСтроки в Заказе клиента.
Если вы делаете частичную отгрузку (например, в заказе 10 шт., а вы отгружаете 3 шт. одной серией и 5 шт. другой), система распределяет серии по принципу FIFO в рамках одного распоряжения. Чтобы точно связать серию из ордера с реализацией, необходимо выполнить следующий алгоритм:
Заказ клиента, который является основанием для реализации.КлючСвязи для интересующей нас строки реализации.ТоварыКОтгрузке с фильтром по этому заказу и ключу связи.В современных версиях конфигураций (УТ 11.4+, КА 2.4+, ERP 2.4+) реализован механизм автоматического заполнения. Если Расходный ордер уже проведен в статусе Отгружен, в форме редактирования серий документа Реализация товаров и услуг появляется кнопка или пункт меню «Заполнить по фактической отгрузке».
Система сама выполняет запрос к регистру ТоварыКОтгрузке, находит серии, которые кладовщик уже физически списал со склада под данное распоряжение, и переносит их в табличную часть реализации. Это самый надежный способ избежать расхождений между складом и бухгалтерией.
Если вам необходимо программно получить список серий, отгруженных по конкретной строке реализации, рассмотрим пример логики построения запроса к регистру ТоварыКОтгрузке. Посмотрим на структуру запроса:
ВЫБРАТЬ
ТоварыКОтгрузкеОбороты.Серия КАК Серия,
ТоварыКОтгрузкеОбороты.КоличествоРасход КАК Количество
ИЗ
РегистрНакопления.ТоварыКОтгрузке.Обороты(
&НачалоПериода,
&КонецПериода,
Авто,
ДокументРаспоряжение = &ЗаказКлиента
И КлючСвязи = &КлючСвязиСтроки
) КАК ТоварыКОтгрузкеОбороты
ГДЕ
ТоварыКОтгрузкеОбороты.Регистратор ССЫЛКА Документ.РасходныйОрдерНаТовары
Проанализируем этот код: мы фильтруем записи по Документу-распоряжению и Ключу связи, который берем из строки реализации. Обратите внимание, что регистратором в данном случае должен выступать именно ордер. Если ордеров было несколько, система суммирует отгруженные серии.
Рассмотрим ситуацию из практики: в заказе 10 штук товара. Оформлено две реализации: на 3 шт. и на 7 шт. Склад оформил три ордера (по наличию серий на остатках). В этом случае жесткой ссылки «этот ордер — строго эта реализация» в системе нет.
Важный момент: Связь работает через «очередь» распоряжения. Первая оформленная реализация заберет себе первые по времени отгруженные складские серии. Чтобы обеспечить жесткое соответствие, рекомендуется оформлять реализации на основании конкретных ордеров через рабочее место «Отгрузка» в разделе складского учета. Там система предлагает создавать финансовые документы по факту сборки ордеров, что минимизирует путаницу с сериями.
Чтобы успешно связать серии в Реализации и Расходном ордере, придерживайтесь следующих правил:
КлючСвязи строки и Документ-распоряжение как основные идентификаторы для сопоставления.ТоварыКОтгрузке, так как именно он является первоисточником информации о складских движениях в ордерной схеме.