Всем привет!
Производство продуктов.
Есть отчет, основанный на движениях партий товаров. Общий принцип складских перемещений таков:
1. Вначале любой помещается на промежуточный склад "Карантин".
2. Далее с этого склада товар перемещается на склад продаж.
3. Со склада продаж этот товар отгружается покупателю. Туда же он и возвращался при возвратах от покупателя.
До этого момента отчет работал нормально и показывал всё правильно.
Но затем изменили работу этой схемы, связанной с возвратами:
4. От покупателя возврат приходуется на склад "Карантин", независимо от того, с какого склада он был отправлен покупателю.
5. Комиссия проверяет этот товар и либо его уничтожают (брак, порча и т.д.) либо перемещают на склад продаж.
И вот здесь при втором перемещении появляется вторая запись с этой же партией и количеством, которые не надо учитывать.
Правильно ли я понимаю, что мне надо сначала получить все перемещаемые партии со склада Карантин на Склад продаж, а потом в выборке остатков исключать эти регистраторы?
Примерно так:
выбрать Различные
*
поместить
ВТ_Партии
из
РегистрНакопления.ПартииТоваров как Партии
где
истина
И Партии.Номенклатура = &Номенклатура
И Партии.Серия = &Серия
И партии.Склад = &Склад
;
выбрать
... выборка остатков партий
внутреннее соединение ВТ_Партии
по ВТ_Партии.Номенклатура = ВыборкаОстатков.номенклатура
и ВТ_Партии.Серия = Выборкаостатков.Серия
и ВТ_Партии.Регистратор = ВыборкаОстатков.ДокументПартии
В упрощенном виде это выглядит так:
выбрать вложенныйзапрос.регистратор поместить ПервоеПеремещение
из (выбрать минимум(партии.регистратор) как регистратор
из регистранакопления.партиитоваровнаскладах как товары
где товары.регистратор ссылка документ.перемещениетоваров
и товары.организация = &организация
и товары.номенклатура =&номенклатура
и товары.серияноменклатуры = &серия
и ....
) как вложенныйзапрос
внутреннее соединение регистрнакопления.партиитоваровнаскладах как партитоваровнаскладах
по вложенныйзапрос.регистратор = партиитоваровнаскладах.регистратор
;
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua