новое событие
Информационный поток
Задания вакансии материалы разработки сообщения форума
rmdruker
Приватное сообщение

запрос, выводящий остаток номенклатуры за каждый день

2 |  0
8 декабря 2023 в 10:29:01 (50 недель 2 дня 4 часа назад)
700
Текст задания
Задача: вывести 2 поля для составления отчета.

1) каждый день заданного периода;
2) остаток товарного запаса на розничном складе (остаток товарного запаса = начальный остаток на дату+ приход в тот же день).

ДатаПериода | ОстатокТоварногоЗапаса
01.06.2020 | 0
... | ...
-----
Попробовали написать с коллегами сами, но т.к. не являемся программистами 1С есть логическая ошибка, а именно: остаток за прошлый день не переходит на последующий день.
------
Ниже - текст запроса, возможно будет полезен Исполнителю.


ВЫБРАТЬ РАЗЛИЧНЫЕ
РегламентированныйПроизводственныйКалендарь.ДатаКалендаря
ПОМЕСТИТЬ ДНИ
ИЗ
РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь
ГДЕ
РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &Дата1 И &Дата2
;

ВЫБРАТЬ
Движения.Период,
Движения.Номенклатура.Код,
Движения.Номенклатура,
Движения.КоличествоНачальныйОстаток,
Движения.КоличествоПриход,
Движения.КоличествоНачальныйОстаток + Движения.КоличествоПриход КАК КоличествоТоварногоЗапаса,
Движения.Склад
ПОМЕСТИТЬ Остатки

ИЗ
РегистрНакопления.ТоварыВРознице.ОстаткиИОбороты(&Дата1, &Дата2, День, , ) КАК Движения
ГДЕ
Движения.Номенклатура.Код = "00000012659"
И Движения.Склад = &Склад
;


ВЫБРАТЬ
ДНИ.ДатаКалендаря,
Остатки.Номенклатура,
СУММА(ВЫБОР
КОГДА
Остатки.Период = &Дата1
ТОГДА Остатки.КоличествоТоварногоЗапаса
ИНАЧЕ
ВЫБОР
КОГДА
Остатки.Период <= ДНИ.ДатаКалендаря
ТОГДА Остатки.КоличествоТоварногоЗапаса
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ) КАК КоличествоТоварногоЗапаса
ИЗ
ДНИ
ЛЕВОЕ СОЕДИНЕНИЕ Остатки КАК Остатки
ПО ДНИ.ДатаКалендаря <= Остатки.Период
СГРУППИРОВАТЬ ПО
ДНИ.ДатаКалендаря,
Остатки.Номенклатура
0
Выбранные исполнители
Отклики