#reporting-services #ssrs-tablix
#отчетность-услуги #ssrs-табликс
Вопрос:
У меня есть список данных с идентификатором последовательности 1, 2, 3, …, 9
Я хочу вставить их в отчет SSRS в виде таблицы 3×3, упорядоченной по идентификатору последовательности
1 2 3 4 5 6 7 8 9
Я должен использовать список, или таблицу, или матрицу? Есть ли какое-либо решение для этой договоренности? Спасибо
Ответ №1:
Обычно я бы использовал для этого матрицу. Вы можете рассчитать номера строк и столбцов для каждой строки данных в таблице, а затем использовать их для групп строк и столбцов в матрице.
Вот пример…
Примечание.Возможно, у вас нет или вам не нужно поле «метка», поэтому просто замените его на то поле, которое вы хотите отобразить, когда мы перейдем к дизайну отчета.
Вот некоторые примеры данных с рассчитанными строками и столбцами
DECLARE @t TABLE (Seq int, Label varchar(10)) INSERT INTO @t VALUES (1, 'AAAAA'), (5, 'BBBBB'), (10, 'CCCCC'), (20, 'DDDDD'), (50, 'EEEEE'), (100, 'FFFFF'), (101, 'GGGGG'), (102, 'HHHHH'), (210, 'IIIII') SELECT * , ColN = (SeqOrder-1) %3 , RowN = (SeqOrder-1) / 3 FROM (SELECT *, ROW_NUMBER() OVER(ORDER BY Seq) AS SeqOrder FROM @t) t
Внутренний запрос просто назначает СекОрдер от 1 до 9. Затем мы используем это значение SeqOrder для определения строки и столбца
Это дает нам следующий набор данных
Затем мы просто добавляем матрицу в наш отчет
Затем перетащите ColN
поле в заполнитель «Столбцы», RowN
поле в заполнитель «Строки» и Label
поле (или любое другое поле, которое вы хотите отобразить) в заполнитель «Данные».
Запустите отчет, и вы получите это
При необходимости вы можете удалить первую строку и столбец (но НЕ связанную группу) и просто оставить ячейку данных.
Теперь, когда мы запустим его, мы получим вот это.
Комментарии:
1. Это именно то, что я хочу показать! Спасибо!!