|
Остатки номенклатуры на разные даты в запросе | ☑ | ||
---|---|---|---|---|
0
mastodont
23.09.20
✎
14:49
|
В запросе есть ВТ
Номенклатура Дата надо для каждой строки получить остатки этой номенклатуры на эту дату... я правильно понимаю, что "хорошего" способа это сделать нет? нашел тему: Остатки на разные даты в запросе. но там ничего особо не предложили... разброс дат большой (несколько лет), так что собирать таблицу на все даты не вариант. Кто что может посоветовать? Пока есть вариант выгрузить ВТ в ТЗ, получить остатки в цикле по строкам, и потом обратно в запрос передать получившуюся таблицу... Или попробовать воспользоваться функцией общего модуля для получения остатков. Может заодно кто подскажет в УТ11 есть какая-нибудь стандартная функция получения свободного остатка? |
|||
1
azernot
23.09.20
✎
14:54
|
В СКД через несколько связанных наборов данных.
|
|||
2
mastodont
23.09.20
✎
15:18
|
(1) а можно поподробнее?
|
|||
3
Делопроизводитель
23.09.20
✎
15:56
|
Что значит "хорошего"?
|
|||
4
Делопроизводитель
23.09.20
✎
16:07
|
(0) Как-то так
ВЫБРАТЬ АвансовыйОтчетТовары.Номенклатура, НАЧАЛОПЕРИОДА(АвансовыйОтчетТовары.Ссылка.Дата, ДЕНЬ) КАК Дата ПОМЕСТИТЬ втНомДата ИЗ Документ.АвансовыйОтчет.Товары КАК АвансовыйОтчетТовары ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ТоварыНаСкладахОбороты.Номенклатура, НАЧАЛОПЕРИОДА(ТоварыНаСкладахОбороты.Период, ДЕНЬ) КАК Период, ТоварыНаСкладахОбороты.КоличествоОборот ПОМЕСТИТЬ втОбороты ИЗ РегистрНакопления.ТоварыНаСкладах.Обороты( , , День, Номенклатура В (ВЫБРАТЬ втНомДата.Номенклатура ИЗ втНомДата КАК втНомДата СГРУППИРОВАТЬ ПО втНомДата.Номенклатура)) КАК ТоварыНаСкладахОбороты ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ взРезультат.Номенклатура, взРезультат.КоличествоОстаток ИЗ (ВЫБРАТЬ втНомДата.Номенклатура КАК Номенклатура, СУММА(ЕСТЬNULL(втОбороты.КоличествоОборот, 0)) КАК КоличествоОстаток ИЗ втНомДата КАК втНомДата ЛЕВОЕ СОЕДИНЕНИЕ втОбороты КАК втОбороты ПО втНомДата.Номенклатура = втОбороты.Номенклатура И втНомДата.Дата >= втОбороты.Период СГРУППИРОВАТЬ ПО втНомДата.Номенклатура) КАК взРезультат |
|||
5
Eiffil123
23.09.20
✎
16:10
|
(0) получить остатки по номенклатуре на самую раннюю дату "объединить все" с приходом/расходом по датам в разрезе номенклатур. Далее твою табличку (Номенклатура,Дата) соединить с тем, что получилось по условию, что Т1.Дата <= Т2.Дата, полученное сгруппировать, если надо.
|
|||
6
sqr4
23.09.20
✎
16:21
|
(0) По факту остатки уже есть в таблице ОстаткиИОбороты, нужно только взять необходимые даты
|
|||
7
azernot
23.09.20
✎
16:43
|
(6) Остатки и обороты не содержит строк с остатками на даты, не являющиеся границами, за которые не было движений.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |