Задача отобразить остатки срезом на каждую дату периода.
Допустим, имеется таблица периодов “Дни” необходимо на каждую дату периода получить остатки по номенклатуре.
Если в регистр накопления добавить периодичность равную “День”, то дни без оборотов не будут иметь остатка.
Нас этот вариант не устроит.
Пример решения:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
ВЫБРАТЬ Движения.Номенклатура, ДНИ.Период, СУММА(ВЫБОР КОГДА Движения.Период = &НачалоПериода ТОГДА Движения.КоличествоКонечныйОстаток ИНАЧЕ ВЫБОР КОГДА Движения.Период <= ДНИ.Период ТОГДА Движения.КоличествоОборот ИНАЧЕ 0 КОНЕЦ КОНЕЦ) КАК КоличествоКонечныйОстаток ИЗ Дни КАК ДНИ, РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, День, , Номенклатура = &Номенклатура) КАК Движения СГРУППИРОВАТЬ ПО Движения.Номенклатура, ДНИ.Период |
Если используется СКД, то тут можно решить задачу через связи наборов данных.
Первый набор это ДНИ (периоды, любые другие, например месяц, неделя, год и т.д.).
Второй набор остатки с параметром периода остатков, который будет передаваться через связь наборов данных из первого набора.
В связи наборов данных необходимо указать связь между наборами и параметр.
Источником будет первый набор, приемником второй. Параметр это наш период, который и будет задан во втором наборе, “Период” регистра накопления.