Фильтровать данные, когда параметр не равен NULL - PullRequest
0 голосов
/ 05 апреля 2019

У меня есть список в отчете, такой список основан на запросе, который показывает что-то вроде этого:

+------------+----------+------------+
|   Employee |   City   |   Client   |
+------------+----------+------------+
| Alex       | All City | All Client |
| Alex       | Chicago  | Google     |
| Alex       | NY       | Twitter    |

Сотрудник может иметь много городов и множество клиентов, список динамически обновляется с помощью подсказок, а значение его параметра поступает из Drill-Throught на панели инструментов.

Итак, мне нужно показать в своем списке только другой город и разных клиентов, исключая данные «Все», но если параметр имеет значение null, не следует исключать данные «Все», потому что Город и Клиент пришли из иерархия и если «все» исключено, в моем списке не будет данных.

Если параметр не равен NULL, мой список должен выглядеть следующим образом:

+------------+---------+---------+
|   Employee |  City   | Client  |
+------------+---------+---------+
| Alex       | Chicago | Google  |
| Alex       | NY      | Twitter |
+------------+---------+---------+

Но если null, должно выглядеть так:

+------------+----------+------------+
|   Employee |   City   |   Client   |
+------------+----------+------------+
| Alex       | All City | All Client |
+------------+----------+------------+

Ответы [ 2 ]

1 голос
/ 05 апреля 2019

Вы пробовали что-то вроде этого:

(?param? is null AND [City] = 'All City' AND [Client] = 'All Client')
OR
(?param? is not null AND [City] <> 'All City' AND [Client] <> 'All Client')
0 голосов
/ 10 мая 2019

Я думаю, вы используете DMR или куб?

  • Сделать 2 иерархии

Для второй иерархии установите для параметра «Несколько корневых элементов» значение «Истина» - иерархия содержит несколько корневых элементов. Выбор этого параметра удаляет уровень «Все», который автоматически создается в верхней части иерархии.

см. https://www.ibm.com/support/knowledgecenter/en/SSEP7J_11.1.0/com.ibm.swg.ba.cognos.ug_cog_rlp.doc/c_cog_rlp_dsgn_hier.html

  • Создайте переменную, чтобы определить, является ли параметр нулевым
  • Составить два списка
  • Список1 будет включать все города - иметь иерархию, которая включает ВСЕ
  • Список2 исключит все города - имеет иерархию без ВСЕХ
  • Render List1, когда параметр имеет значение null
  • Визуализация List2, когда параметр НЕ равен нулю
...