Как сохранить структуру табликса, когда нет данных для отображения

9

У нас есть отчет SSRS, который показывает результат набора данных в таблице. Если запрос в наборе данных не возвращает данных, отображается заголовок таблицы, но не ячейки таблицы под заголовком. Я знаю, что есть свойство NoRowMessage, но на самом деле это не то, что мы хотим. Потому что, когда я указываю сообщение, SSRS показывает сообщение вместо пустого tablix. Я должен показать структуру tablix, как она есть, но с пустыми ячейками.

Я даже установил правило для каждого значения ячейки таблицы с помощью IsNothingфункции, чтобы оно показывало пустое (""), если значение равно нулю, но это не помогло.

Есть ли у вас какие-либо идеи? Заранее благодарны за Вашу помощь.

Небо
источник

Ответы:

8

Вы можете добавить строку за пределами самой внешней группы прямо под строкой заголовка таблицы.
введите описание изображения здесь

Установите видимость строки на Показать или скрыть на основе выражения. Выражение хотелось бы как:

=iif(CountRows("DataSet1") > 0, true, false)

Когда данных нет, в таблице будут показаны заголовки и пустая строка.

введите описание изображения здесь

Когда есть данные, пустая строка будет скрыта.

mmarie
источник
Отличное решение! Просто FYI - CountRows("DataSet") > 0разрешит Trueили Falseсам по себе, так что вам не нужно переносить это iifутверждение, просто дайте ему разрешиться. Кроме того, если вы отфильтровали Табликс каким-либо образом, будет подсчитано количество строк в исходном наборе данных. Чтобы получить количество строк в отфильтрованном таблике, используйте =COUNT("Fields.[pick any field].Value")или удалите «datatable1» и используйтеCountRows()
KyleMit