|
Как такой запрос сделать? | ☑ | ||
---|---|---|---|---|
0
tciban
06.09.11
✎
13:39
|
Уважаемые коллеги! Опять вопрос у меня, поделитесь опытом как сделать такой запрос. Есть регистр. простой такой регистр накопления с измерением "Сделка" типа документ такой и ресурсом "долг" (покупателя).
Еще у сделки есть поле - "Дата завершения". Так вот мне нужно получить помесячно за год долги покупателя, но только по незакрытым на тот период сделкам. Т.е. если у сделки дата закрытия в августе, то долг по ней в июнь-июль-август попадает, а в сентябрь уже нет. Как такое нарисовать в запросе? |
|||
1
Axel2009
06.09.11
✎
13:41
|
ну и где начальный запрос?
|
|||
2
dva1c
06.09.11
✎
13:41
|
конструктор в руки пробовал брать?
|
|||
3
Midzgun
06.09.11
✎
13:42
|
Лень писать - большой запрос получится. Суть в том, что тебе сначала нужно получить таблицу дат периода. Для примера можешь посмотреть документ ТабельУчетаРабочегоВремени в УПП или КА или ЗУП, конкретно его заполнение. Потом соединяешь таблицу дат и навешиваешь условия.
|
|||
4
tciban
06.09.11
✎
13:46
|
дык не знаю как писать. Не знаю как учесть такое условие в запросе. Базовый запрос вот такой видимо:
ВЫБРАТЬ ВложенныйЗапрос.Период, СУММА(ВложенныйЗапрос.Сумма) КАК Сумма ИЗ (ВЫБРАТЬ БалансСделокОстаткиИОбороты.Период КАК Период, БалансСделокОстаткиИОбороты.Сделка КАК Сделка, ВЫБОР КОГДА БалансСделокОстаткиИОбороты.ДолгПокупателяКонечныйОстаток > 0 ТОГДА БалансСделокОстаткиИОбороты.ДолгПокупателяКонечныйОстаток ИНАЧЕ 0 КОНЕЦ КАК Сумма ИЗ РегистрНакопления.БалансСделок.ОстаткиИОбороты(&ДатаН, &ДатаК, Месяц, ДвиженияИГраницыПериода, (НЕ Сделка.Завершена)) КАК БалансСделокОстаткиИОбороты) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО ВложенныйЗапрос.Период Но на что заменить условие (НЕ Сделка.Завершена) - я не знаю |
|||
5
Midzgun
06.09.11
✎
13:50
|
Так ты не остаткиобороты делай, а соединяй по ТаблицаПериодов.Период < БалансСделок.Сделка.ДатаЗавершения ну а потом группируй или отбирай как душе угодно
|
|||
6
Axel2009
06.09.11
✎
13:54
|
ну и где учет даты закрытия?
|
|||
7
Axel2009
06.09.11
✎
13:54
|
выбор когда датазакрытия < период тогда сумма иначе 0 конец
|
|||
8
tciban
07.09.11
✎
10:37
|
Если я все правильно понимаю, то правильно вот так:
ВЫБРАТЬ ВложенныйЗапрос.Период, СУММА(ВложенныйЗапрос.Сумма) КАК Сумма ИЗ (ВЫБРАТЬ КОНЕЦПЕРИОДА(БалансСделокОстаткиИОбороты.Период, МЕСЯЦ) КАК Период, БалансСделокОстаткиИОбороты.Сделка КАК Сделка, ВЫБОР КОГДА БалансСделокОстаткиИОбороты.ДолгПокупателяКонечныйОстаток > 0 ТОГДА БалансСделокОстаткиИОбороты.ДолгПокупателяКонечныйОстаток ИНАЧЕ 0 КОНЕЦ КАК Сумма ИЗ РегистрНакопления.БалансСделок.ОстаткиИОбороты(&ДатаН, &ДатаК, Месяц, ДвиженияИГраницыПериода, ) КАК БалансСделокОстаткиИОбороты) КАК ВложенныйЗапрос ГДЕ ВложенныйЗапрос.Сделка.ДатаЗавершения > ВложенныйЗапрос.Период СГРУППИРОВАТЬ ПО ВложенныйЗапрос.Период |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |