Суть: “внешние партии” – партии, поступления пришедшие в организацию из вне, которые идут либо конечным либо “своим” контрагентам, “внутренние партии” – партии реализованые “своим” контрагентам оформляются через документ “Внутренний заказ” с последующим вводом пары документов “Реализация” и “Поступление” для каждого такого внутреннего заказа (упрощенно это можно понимать как перемещение товара на склад другого подразделения, по крайней мере логика такова)
Необходимо: учесть остатки товара по “внутренней партии” на остатках товара на “внешней”
Реализация запросом:
ВЫБРАТЬ
ПартииПерепродажОстатки.ДокументОприходования КАК ВнутренняяПартия,
ПартииПерепродажОстатки.Номенклатура КАК Номенклатура,
ПартииПерепродажОстатки.КоличествоОстаток КАК ОстатокВнутреннейПартии,
ПартииПерепродажОстатки.ДокументОприходования.ВнутреннийЗаказ КАК ВнутреннийЗаказ,
ПартииИзначальныеОстаткиИОбороты.ДокументОприходования КАК ВнешняяПартия,
ПартииИзначальныеОстаткиИОбороты.КоличествоКонечныйОстаток КАК КонечныйОстатокПослеПерепродажи,
ПартииИзначальныеОстаткиИОбороты.Регистратор КАК ВнутренняяРеализация,
ПартииИзначальныеОстаткиИОбороты.КоличествоНачальныйОстаток КАК НачальныйОстатокДоПерепродажи,
ПартииИзначальныеОстаткиИОбороты.КоличествоНачальныйОстаток – ПартииИзначальныеОстаткиИОбороты.КоличествоКонечныйОстаток КАК КоличествоПоВнутреннейРеализации,
ЕСТЬNULL(ПартииИзначальныеОстатки.КоличествоОстаток, 0) КАК ОстатокВнешнейПартии
ИЗ
РегистрНакопления.ПартииТоваровНаСкладах.Остатки(
&КодДата,
ДокументОприходования ССЫЛКА Документ.ПоступлениеТоваровУслуг
И ДокументОприходования.ВнутреннийЗаказ <> &ВнутреннийЗаказПустаяСсылка
И Склад.Подразделение В (&СписокПодразделений)
И Номенклатура В ИЕРАРХИИ (&Шины)) КАК ПартииПерепродажОстатки
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.ОстаткиИОбороты(
&НачДата,
&КодДата,
Регистратор,
,
(НЕ Склад.Подразделение В (&СписокПодразделений))
И Номенклатура В ИЕРАРХИИ (&Шины)) КАК ПартииИзначальныеОстаткиИОбороты
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.Остатки(
&КодДата,
(НЕ Склад.Подразделение В (&СписокПодразделений))
И Номенклатура В ИЕРАРХИИ (&Шины)) КАК ПартииИзначальныеОстатки
ПО ПартииИзначальныеОстаткиИОбороты.ДокументОприходования = ПартииИзначальныеОстатки.ДокументОприходования
И ПартииИзначальныеОстаткиИОбороты.Номенклатура = ПартииИзначальныеОстатки.Номенклатура
И ПартииИзначальныеОстаткиИОбороты.Склад = ПартииИзначальныеОстатки.Склад
ПО ПартииПерепродажОстатки.ДокументОприходования.ВнутреннийЗаказ = ПартииИзначальныеОстаткиИОбороты.Регистратор.ВнутреннийЗаказ
И ПартииПерепродажОстатки.Номенклатура = ПартииИзначальныеОстаткиИОбороты.Номенклатура
УПОРЯДОЧИТЬ ПО
ВнутренняяПартия,
Номенклатура
по сути можно утвержать, что ОстатокВнешнейПартии + ОстатокВнутреннейПартии – это и есть искомое перераспределение остатка с “внутренней” на “внешнюю” партию, но
Проблема: не исключено списание Реализацией остатков с нескольких “внешних” партии (частично или полностью), для таких партии необходимо перераспределить остатки с “внутренней” партии по “внешним” партиям относительно их дат начиная с первой даты “внешнего” поступления (см скриншот 1)
Вопрос: возможно ли это сделать доработкой запроса?
PS: необходимость такой махинации кроется в дальнейшем подсчете среднего срока хранения товара, который завязан на количество и дату поступления этого товара