|   |   | 
| 
 | Можно ли на СКД сделать такое ? | ☑ | ||
|---|---|---|---|---|
| 0
    
        onx1 04.09.17✎ 13:50 | 
        Начальный запрос возвращает таблицу вида:
 Организация, ЦеннаяБумага, Котировка (число или ноль). Надо вывести его в отчет на СКД в виде таблицы, где колонки - группировка по Организации, строки - группировка по ЦеннойБумаге, ресурс - Котировка, НО ТАК чтобы, если по конретной паре "Организация1, ЦеннаяБумага1" нет записи - в таблице бы выводилось "нет". То есть проблема в том, чтобы как-то отличить наличие в изначальной таблице записи с нулевой котировкой от полного отсутствия такой записи. | |||
| 1
    
        1dvd 04.09.17✎ 13:54 | 
        Можно     | |||
| 2
    
        aka MIK 04.09.17✎ 13:55 | 
        Нельзя     | |||
| 3
    
        aka MIK 04.09.17✎ 13:55 | 
        Без правки первоначального запроса разумеется )     | |||
| 4
    
        Сильф 04.09.17✎ 13:55 | 
        (0) Через условное оформление группировки попробуйте, с условием "Заполнено".     | |||
| 5
    
        Вафель 04.09.17✎ 14:01 | 
        У поля поставить флажок NULL     | |||
| 6
    
        onx1 04.09.17✎ 14:04 | 
        (4) Попробовал: заполнено выделяет только где есть конкретные цифры (0 и NULL - оно считает пустым)
 (5) "Ингорировать значения NULL" ставил и так и так - не помогает. (1) Как? | |||
| 7
    
        1dvd 04.09.17✎ 14:05 | 
        (6) Запрос править     | |||
| 8
    
        ELEA26 04.09.17✎ 14:08 | 
        Если запрос править - то IsNull, если не править - то не знаю. Тоже послежу за темой :)     | |||
| 9
    
        onx1 04.09.17✎ 14:09 | 
        (7) Это то понятно.
 Просто неужели СКД с такой понятной и довольно распространенной задачей справиться не в состоянии ? | |||
| 10
    
        Fragster гуру 04.09.17✎ 14:10 | 
        Прописать выражение ресурса Вида ЕстьNULL(Сумма(Ресурс),"Это NULL")     | |||
| 11
    
        Fragster гуру 04.09.17✎ 14:10 | 
        результат: https://i.imgur.com/wfDVkz8.png     | |||
| 12
    
        ELEA26 04.09.17✎ 14:11 | 
        Сумма(Ресурс) null не выдаст же....     | |||
| 13
    
        Fragster гуру 04.09.17✎ 14:12 | 
        еще формат у поля для нуля если задать, то вообще норм получается: https://i.imgur.com/gNyfyK4.png     | |||
| 14
    
        Fragster гуру 04.09.17✎ 14:12 | 
        (12) ну долби дальше     | |||
| 15
    
        Вафель 04.09.17✎ 14:15 | 
        Чтобы отличить - нужно левое соединение делать: возможные пары и реальные количества     | |||
| 16
    
        Fragster гуру 04.09.17✎ 14:16 | 
        (15) не нужно     | |||
| 17
    
        Fragster гуру 04.09.17✎ 14:17 | 
        у меня текст запроса такой:
 ВЫБРАТЬ "А1" КАК Строка, "Б1" КАК Колонка, 0 КАК Ресурс ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "А2", "Б1", 1 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "А1", "Б2", 1 | |||
| 18
    
        ELEA26 04.09.17✎ 14:21 | 
        А где
 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "А2", "Б2", NULL Тоже выходит правильно? Не на чем сейчас проверить. | |||
| 19
    
        Fragster гуру 04.09.17✎ 14:25 | 
        (18) да     | |||
| 20
    
        ELEA26 04.09.17✎ 14:34 | 
        А не. Виноват. Сумма null не считает, если хоть что-то есть. Если все измерение null - то да, будет null.
 Виноват. Щас на MS SQL затестил и понял где не понял :) | |||
| 21
    
        onx1 04.09.17✎ 15:17 | 
        (10) за идею спасибо, но имелось ввиду что если "если по конретной паре нет записи - в таблице бы выводилось "нет".
 То есть в начальной таблице нет записи: "А2", "Б2", NULL Видимо в такой постановке задачу только на СКД не решить. | |||
| 22
    
        mistеr 04.09.17✎ 15:26 | 
        (21) В выражении ресурса пропиши: если Количество(Котировка) = 0 то "нет" иначе Максимум(Котировка)     | |||
| 23
    
        Fragster гуру 04.09.17✎ 15:26 | 
        (21) прочитай, что я пишу, еще раз. посмотри тексты запроса, картинки, которые получаются...     | |||
| 24
    
        Вафель 04.09.17✎ 15:27 | 
        (17) Оно конечно в запросе "гораздо лучше" текстом все создать )))     | |||
| 25
    
        Fragster гуру 04.09.17✎ 15:33 | 
        (24) не понимаю, в чем претензия?     | |||
| 26
    
        Вафель 04.09.17✎ 15:41 | 
        Похоже на то как во времена 8.0 делали псевдо временные таблицы     | |||
| 27
    
        onx1 04.09.17✎ 15:55 | 
        (23) сорри, думал что (18) - это часть запроса
 В вычисляемые поля я добавил поле Ресурс2=ЕстьNULL(Сумма(Ресурс),"Это NULL") но когда добавляю это поле на закладку "Ресурсы" при запуске отчета возникает ошибка "Использование вложенных агрегатных функций не допускается" | |||
| 28
    
        onx1 04.09.17✎ 16:05 | 
        Подскажи плиз, что ещё докрутить забыл?     | |||
| 29
    
        Вафель 04.09.17✎ 16:08 | 
        в вычисляемых полях нельзя использовать агрегатные функции типа СУММА.
 пиши выражение прямо в ресурсах | |||
| 30
    
        onx1 04.09.17✎ 16:19 | 
        (29) Блин, все время забываю, что выражение в ресурсе можно не только из списка выбирать, но и самому писать.
 Fragster, Вафель спасибо Вам за помощь. | |||
| 31
    
        Хрыч 04.09.17✎ 16:49 | 
        (21) зато легко можно сделать наоборот: условным оформлением проставлять 0, когда Котировка=0. А в случае NULL поле останется пустым     | |||
| 32
    
        Хрыч 04.09.17✎ 16:56 | 
        (29) Можно, только тогда в ресурсах в выражении надо указывать само вычисляемое поле, а не агрегатную функцию от него     | |||
| 33
    
        onx1 04.09.17✎ 17:24 | 
        (32) Полезное замечение, спасибо     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |