|
Не понимаю почему запрос выводит некорректно данные | ☑ | ||
---|---|---|---|---|
0
Виль
08.02.13
✎
17:29
|
Отчет работает - по идее должен выводит в 1 колонку ближайший долг, а в следующие по мере возникновения... Но получается, что 1 долг поймал следующий ставит уже не долг, а сумму следующего документа... Вообщем ХЕЛП, запутался совсем
ВЫБРАТЬ РАЗЛИЧНЫЕ Контрагенты.Ссылка КАК Контрагент, ДокументыПоКонтрагенту.Ссылка КАК Ссылка, Сумма(ВЫБОР Когда (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)<=2) и (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)>=1) Тогда (Выбор Когда ДокументыПоКонтрагенту.Ссылка ССЫЛКА Документ.РеализацияТоваровУслуг Тогда ДокументыПоКонтрагенту.Ссылка.СуммаДокумента Иначе (-ДокументыПоКонтрагенту.Ссылка.СуммаДокумента) Конец) Иначе 0 Конец) Как СуммаДока1 , Сумма(ВЫБОР Когда (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)<=5) и (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)>=3) Тогда (Выбор Когда ДокументыПоКонтрагенту.Ссылка ССЫЛКА Документ.РеализацияТоваровУслуг Тогда ДокументыПоКонтрагенту.Ссылка.СуммаДокумента Иначе (-ДокументыПоКонтрагенту.Ссылка.СуммаДокумента) Конец) Иначе 0 Конец) Как СуммаДока2 , Сумма(ВЫБОР Когда (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)<=7) и (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)>=6) Тогда (Выбор Когда ДокументыПоКонтрагенту.Ссылка ССЫЛКА Документ.РеализацияТоваровУслуг Тогда ДокументыПоКонтрагенту.Ссылка.СуммаДокумента Иначе (-ДокументыПоКонтрагенту.Ссылка.СуммаДокумента) Конец) Иначе 0 Конец) Как СуммаДока3 , Сумма(ВЫБОР Когда (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)<=10) и (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)>=8) Тогда (Выбор Когда ДокументыПоКонтрагенту.Ссылка ССЫЛКА Документ.РеализацияТоваровУслуг Тогда ДокументыПоКонтрагенту.Ссылка.СуммаДокумента Иначе (-ДокументыПоКонтрагенту.Ссылка.СуммаДокумента) Конец) Иначе 0 Конец) Как СуммаДока4 , Сумма(ВЫБОР Когда (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)<=15) и (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)>=11) Тогда (Выбор Когда ДокументыПоКонтрагенту.Ссылка ССЫЛКА Документ.РеализацияТоваровУслуг Тогда ДокументыПоКонтрагенту.Ссылка.СуммаДокумента Иначе (-ДокументыПоКонтрагенту.Ссылка.СуммаДокумента) Конец) Иначе 0 Конец) Как СуммаДока5 , Сумма(ВЫБОР Когда (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)<=20) и (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)>=16) Тогда (Выбор Когда ДокументыПоКонтрагенту.Ссылка ССЫЛКА Документ.РеализацияТоваровУслуг Тогда ДокументыПоКонтрагенту.Ссылка.СуммаДокумента Иначе (-ДокументыПоКонтрагенту.Ссылка.СуммаДокумента) Конец) Иначе 0 Конец) Как СуммаДока6 , Сумма(ВЫБОР Когда (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)<=25) и (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)>=21) Тогда (Выбор Когда ДокументыПоКонтрагенту.Ссылка ССЫЛКА Документ.РеализацияТоваровУслуг Тогда ДокументыПоКонтрагенту.Ссылка.СуммаДокумента Иначе (-ДокументыПоКонтрагенту.Ссылка.СуммаДокумента) Конец) Иначе 0 Конец) Как СуммаДока7 , Сумма(ВЫБОР Когда (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)<=30) и (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)>=26) Тогда (Выбор Когда ДокументыПоКонтрагенту.Ссылка ССЫЛКА Документ.РеализацияТоваровУслуг Тогда ДокументыПоКонтрагенту.Ссылка.СуммаДокумента Иначе (-ДокументыПоКонтрагенту.Ссылка.СуммаДокумента) Конец) Иначе 0 Конец) Как СуммаДока8 , Сумма(ВЫБОР Когда (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)<=35) и (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)>=31) Тогда (Выбор Когда ДокументыПоКонтрагенту.Ссылка ССЫЛКА Документ.РеализацияТоваровУслуг Тогда ДокументыПоКонтрагенту.Ссылка.СуммаДокумента Иначе (-ДокументыПоКонтрагенту.Ссылка.СуммаДокумента) Конец) Иначе 0 Конец) Как СуммаДока9 , Сумма(ВЫБОР Когда (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)<=40) и (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)>=36) Тогда (Выбор Когда ДокументыПоКонтрагенту.Ссылка ССЫЛКА Документ.РеализацияТоваровУслуг Тогда ДокументыПоКонтрагенту.Ссылка.СуммаДокумента Иначе (-ДокументыПоКонтрагенту.Ссылка.СуммаДокумента) Конец) Иначе 0 Конец) Как СуммаДока10 , Сумма(ВЫБОР Когда (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)<=50000) и (РазностьДат(&ДатаТек,ДОБАВИТЬКДАТЕ(ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата,День ,21),День)>=41) Тогда (Выбор Когда ДокументыПоКонтрагенту.Ссылка ССЫЛКА Документ.РеализацияТоваровУслуг Тогда ДокументыПоКонтрагенту.Ссылка.СуммаДокумента Иначе (-ДокументыПоКонтрагенту.Ссылка.СуммаДокумента) Конец) Иначе 0 Конец) Как СуммаДока11 ИЗ Справочник.Контрагенты КАК Контрагенты ЛЕВОЕ СОЕДИНЕНИЕ КритерийОтбора.ДокументыПоКонтрагенту(&Ссылка1) КАК ДокументыПоКонтрагенту ПО Контрагенты.Ссылка = ДокументыПоКонтрагенту.Ссылка.Контрагент ГДЕ ДокументыПоКонтрагенту.Ссылка.Проведен = ИСТИНА И (ДокументыПоКонтрагенту.Ссылка ССЫЛКА Документ.РеализацияТоваровУслуг) СГРУППИРОВАТЬ ПО Контрагенты.Ссылка, ДокументыПоКонтрагенту.Ссылка УПОРЯДОЧИТЬ ПО ДокументыПоКонтрагенту.Ссылка.Ссылка.Дата |
|||
1
hhhh
08.02.13
✎
17:35
|
ну вы же пишете ДокументыПоКонтрагенту.Ссылка.СуммаДокумента
он вам и выдает сумму документа. То есть запрос работает корректно. |
|||
2
Виль
08.02.13
✎
17:49
|
Да, это правильно - попробую выразить свою мысль подробнее- мне нужна таблица, в которой будут данные о сумме документа, который выходит из глубины просрочки платежа, т.е. в первой колонке сумма всех документов, у которых (ДатаДокумента+Глубина Кредита)> 1 дня, в следующей колонке сумма всех документов, у которых (ДатаДокумента+Глубина Кредита)> 3 дня и т.д.
|
|||
3
Reset
08.02.13
✎
17:55
|
(2) А зачем тогда группировка по ДокументыПоКонтрагенту.Ссылка?
зы про -Ссылка.Ссылка.Дата -в ГДЕ отбираются только реализации, а в каждом выборе еще раз проверяется ССЫЛКА тактично молчим |
|||
4
hhhh
08.02.13
✎
17:55
|
а зачем ДокументыПоКонтрагенту.Ссылка КАК Ссылка, ??
вроде не нужно по каждому документу отдельную строку. |
|||
5
Виль
08.02.13
✎
18:01
|
А как поймать дату документа, чтобы привязать ее к интервалу?
|
|||
6
hhhh
08.02.13
✎
18:04
|
(5) ну вы поймали дату. В
Сумма(ВЫБОР Когда ... и так далее. Зачем вам строчка ДокументыПоКонтрагенту.Ссылка КАК Ссылка, ?? третья строчка сверху в запросе? |
|||
7
Reset
08.02.13
✎
18:07
|
А про то, что долги по интервалам нужно из какого-нибудь РН Взаиморасчеты брать (соединяя остатки с физ таблицей или с оборотами), а не из документов, совсем молчим-молчим.
|
|||
8
Виль
08.02.13
✎
18:12
|
По ходу 50 грамм коньячку замахнуть на сон грядущий и завтра все переделать.
Всем спасибо за участие. Слава богу неделя закончилась |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |