![]() |
|
Запрос: остатки на дату | ☑ | ||
---|---|---|---|---|
0
lg2marvel
27.02.17
✎
15:09
|
Всем привет, делаю запрос по остаткам:
Запрос.Текст = "ВЫБРАТЬ | ОстаткиИОбороты.Период КАК Период, | ОстаткиИОбороты.КоличествоКонечныйОстаток |ИЗ | РегистрНакопления.ПартииНоменклатуры.ОстаткиИОбороты( | &ПериодНачало, | &ПериодКонец, | День, | ДвиженияИГраницыПериода, | Фирма = &Фирма | И Склад = &Склад | И Номенклатура = &Номенклатура | ) КАК ОстаткиИОбороты |ГДЕ | ОстаткиИОбороты.КоличествоКонечныйОстаток > 0 | |СГРУППИРОВАТЬ ПО | ОстаткиИОбороты.Период, | ОстаткиИОбороты.КоличествоКонечныйОстаток, | ОстаткиИОбороты.КоличествоОборот"; Результат получаю: 21.02.2017 3 Но по факту у меня с 21.02.2017 по 24.02.2017 остаток был больше 0 (было уменьшение остатка 24.02) Как правильно сделать группировку чтоб получить результат: 21.02.2017 3 22.02.2017 3 23.02.2017 3 24.02.2017 0 (Нулевой не обязательно) |
|||
1
vicof
27.02.17
✎
15:11
|
А вот погуглить "остатки на каждый день в запросе" не?
|
|||
2
lg2marvel
27.02.17
✎
16:27
|
ВЫБРАТЬ
ПартииТоваровНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура, ПартииТоваровНаСкладахОстаткиИОбороты.Склад КАК Склад, СУММА(ВЫБОР КОГДА ПартииТоваровНаСкладахОстаткиИОбороты.Период = НАЧАЛОПЕРИОДА(&КонПериода, ДЕНЬ) ТОГДА ВЫБОР КОГДА ПартииТоваровНаСкладахОстаткиИОбороты.КоличествоКонечныйОстатокПредыдущий > 0 ТОГДА ВЫБОР КОГДА ПартииТоваровНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток <= 0 ТОГДА РАЗНОСТЬДАТ(ПартииТоваровНаСкладахОстаткиИОбороты.ПредыдущийПериод, ПартииТоваровНаСкладахОстаткиИОбороты.Период, ДЕНЬ) ИНАЧЕ РАЗНОСТЬДАТ(ПартииТоваровНаСкладахОстаткиИОбороты.ПредыдущийПериод, &КонПериода, ДЕНЬ) + 1 КОНЕЦ ИНАЧЕ ВЫБОР КОГДА ПартииТоваровНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток > 0 ТОГДА РАЗНОСТЬДАТ(ПартииТоваровНаСкладахОстаткиИОбороты.Период, &КонПериода, ДЕНЬ) + 1 ИНАЧЕ 0 КОНЕЦ КОНЕЦ ИНАЧЕ ВЫБОР КОГДА ПартииТоваровНаСкладахОстаткиИОбороты.КоличествоКонечныйОстатокПредыдущий > 0 ТОГДА РАЗНОСТЬДАТ(ПартииТоваровНаСкладахОстаткиИОбороты.ПредыдущийПериод, ПартииТоваровНаСкладахОстаткиИОбороты.Период, ДЕНЬ) ИНАЧЕ 0 КОНЕЦ КОНЕЦ) КАК КоличествоДнейНаСкладе ИЗ (ВЫБРАТЬ ТаблицаПредыдущиеПериоды.Номенклатура КАК Номенклатура, ТаблицаПредыдущиеПериоды.Склад КАК Склад, ТаблицаПредыдущиеПериоды.Период КАК Период, ТаблицаПредыдущиеПериоды.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток, ТаблицаПредыдущиеПериоды.ПредыдущийПериод КАК ПредыдущийПериод, ПартииТоваровНаСкладахОстаткиИОборотыПредыдущие.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстатокПредыдущий ИЗ (ВЫБРАТЬ ПартииТоваровНаСкладахОстаткиИОбороты1.Номенклатура КАК Номенклатура, ПартииТоваровНаСкладахОстаткиИОбороты1.Склад КАК Склад, ПартииТоваровНаСкладахОстаткиИОбороты1.Период КАК Период, ПартииТоваровНаСкладахОстаткиИОбороты1.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток, МАКСИМУМ(ПартииТоваровНаСкладахОстаткиИОбороты2.Период) КАК ПредыдущийПериод ИЗ РегистрНакопления.ПартииНоменклатуры.ОстаткиИОбороты(&НачПериода, &КонПериода, День, , Номенклатура В ИЕРАРХИИ (&Номенклатура)) КАК ПартииТоваровНаСкладахОстаткиИОбороты1 ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииНоменклатуры.ОстаткиИОбороты(&НачПериода, &КонПериода, День, , Номенклатура В ИЕРАРХИИ (&Номенклатура)) КАК ПартииТоваровНаСкладахОстаткиИОбороты2 ПО (ИСТИНА) И ПартииТоваровНаСкладахОстаткиИОбороты1.Номенклатура = ПартииТоваровНаСкладахОстаткиИОбороты2.Номенклатура И ПартииТоваровНаСкладахОстаткиИОбороты1.Склад = ПартииТоваровНаСкладахОстаткиИОбороты2.Склад И ПартииТоваровНаСкладахОстаткиИОбороты1.Период > ПартииТоваровНаСкладахОстаткиИОбороты2.Период СГРУППИРОВАТЬ ПО ПартииТоваровНаСкладахОстаткиИОбороты1.Номенклатура, ПартииТоваровНаСкладахОстаткиИОбороты1.Склад, ПартииТоваровНаСкладахОстаткиИОбороты1.Период, ПартииТоваровНаСкладахОстаткиИОбороты1.КоличествоКонечныйОстаток) КАК ТаблицаПредыдущиеПериоды ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииНоменклатуры.ОстаткиИОбороты(&НачПериода, &КонПериода, День, , Номенклатура В ИЕРАРХИИ (&Номенклатура)) КАК ПартииТоваровНаСкладахОстаткиИОборотыПредыдущие ПО (ИСТИНА) И ТаблицаПредыдущиеПериоды.Номенклатура = ПартииТоваровНаСкладахОстаткиИОборотыПредыдущие.Номенклатура И ТаблицаПредыдущиеПериоды.Склад = ПартииТоваровНаСкладахОстаткиИОборотыПредыдущие.Склад И ТаблицаПредыдущиеПериоды.ПредыдущийПериод = ПартииТоваровНаСкладахОстаткиИОборотыПредыдущие.Период) КАК ПартииТоваровНаСкладахОстаткиИОбороты ГДЕ ПартииТоваровНаСкладахОстаткиИОбороты.Склад = &Склад СГРУППИРОВАТЬ ПО ПартииТоваровНаСкладахОстаткиИОбороты.Номенклатура, ПартииТоваровНаСкладахОстаткиИОбороты.Склад АВТОУПОРЯДОЧИВАНИЕ Спасибо. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |