|
Помощь в запросе. Количество(Различные()) 🠗 (Волшебник 20.10.2017 10:54) | ☑ | ||
---|---|---|---|---|
0
DmitryNN
20.10.17
✎
10:46
|
Добрый день, коллеги.
Никак не могу решить задачу, нужно в итогах запроса прописать условие КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Регистратор), но при этом чтобы он посчитал только документы РТУ, т.е. отбор по типу. В Выборке много документов РТУ, которые могут дублироваться и документы Возврата. Как это сделать? |
|||
1
perester
20.10.17
✎
10:48
|
текст запроса?)
|
|||
2
DrShad
20.10.17
✎
10:49
|
(1) +1
начать с написания текста запроса |
|||
3
azernot
20.10.17
✎
10:50
|
Как вариант
Само поле КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Выбор когда Регистратор Ссылка Документ.РТУ тогда Регистратор иначе Неопределено конец) -1 В подзапросе нужно объединение, в котором обязательнос присутствует Неопределено в поле Регистратор |
|||
4
DmitryNN
20.10.17
✎
10:51
|
Это УПП 1.3, Универсальный отчет, который строится на основании регистра, текста запроса нет. Прописываю ресурс через строку итогов, например, вот так:
УниверсальныйОтчет.ДобавитьПолеРесурс("КоличествоОтгрузок", "ВЫБОР КОГДА ИсточникДанных.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг Тогда ИсточникДанных.Регистратор Иначе Значение(Документ.РЕализацияТоваровУслуг.ПустаяСсылка) Конец", "Кол-во отгрузок", "Количество(РАЗЛИЧНЫЕ(КоличествоОтгрузок))"); |
|||
5
DrShad
20.10.17
✎
10:53
|
(4) [текста запроса нет.] да неужели!?
|
|||
6
DmitryNN
20.10.17
✎
10:54
|
(3) Вот я примерно так и пытаюсь, но всегда может быть так что Возврата нет, тогда может быть - 1 лишний
|
|||
7
azernot
20.10.17
✎
10:54
|
(4) Если в регистраторах есть не РТУ, то на 1 врать будет.
|
|||
8
DmitryNN
20.10.17
✎
10:57
|
(7) Но если нет возврата, тогда вместо 5 РТУ (допустим их там столько) он покажет 4
|
|||
9
azernot
20.10.17
✎
10:57
|
(6) Без переделывания запроса "ИсточникДанных" не взлетит. Нужно там принудительно добавлять ПустуюСсылку с нулевыми ресурсами и вычитать 1, или подзапрос с внутренним соединением с Документ.РТУ, где считать количество различных..
|
|||
10
DmitryNN
20.10.17
✎
11:00
|
(9) Ммм...Может быть так?...
Выбор когда МАКСИМУМ(ЧТОТО ГДЕ ТОЛЬКО ВОЗВРАТЫ) <> 0 Тогда -1 Иначе 0 Конец + Количество(РАЗЛИЧНЫЕ(КоличествоОтгрузок)) |
|||
11
patria0muerte
20.10.17
✎
11:00
|
А если например вот так:
УниверсальныйОтчет.ДобавитьПолеРесурс("КоличествоОтгрузок", "ВЫБОР КОГДА ИсточникДанных.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг Тогда ИсточникДанных.Регистратор Иначе NULL Конец", "Кол-во отгрузок", "Количество(РАЗЛИЧНЫЕ(КоличествоОтгрузок))"); ? |
|||
12
patria0muerte
20.10.17
✎
11:00
|
Вроде как NULL в расчет агрегатных функций не включается.
|
|||
13
DmitryNN
20.10.17
✎
11:03
|
(12) Красавчик)
ВЫБРАТЬ NULL КАК Поле1 ПОМЕСТИТЬ ВТ ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "patria0muerte был прав" ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВТ.Поле1) КАК Поле1 ИЗ ВТ КАК ВТ Результат 1 |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |