SSRS 按顺序显示 table 列表
SSRS Show table list in sequence
我有一个数据列表,序列 ID 为 1、2、3、...、9
我想将它们以 3x3 table 的形式插入到 SSRS 报告中,按序列 id
排列
1 2 3
4 5 6
7 8 9
我应该使用列表,还是table,或者矩阵?这种安排有什么解决办法吗?谢谢
我通常会为此使用矩阵。您可以计算 table 中每一行数据的行号和列号,然后将其用于矩阵中的行组和列组。
这是一个例子...
注意:您可能没有或不需要 'label' 字段,因此当我们进行报表设计时,只需将其换成您想要显示的任何字段。
这是一些计算了行和列的示例数据
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
内部查询只是将 SeqOrder 分配为 1 到 9。然后我们使用此 SeqOrder 值来确定行和列
这为我们提供了以下数据集
然后我们只需在报告中添加一个矩阵
接下来,将 ColN
字段拖到“列”占位符,将 RowN
字段拖到“行”占位符,然后将 Label
字段(或您想要的任何字段)显示)到“数据”占位符。
运行 报告,你会得到这个
您可以选择删除第一行和第一列(但不是关联的组),只保留数据单元格。
现在当我们 运行 它时,我们得到了这个。
我有一个数据列表,序列 ID 为 1、2、3、...、9
我想将它们以 3x3 table 的形式插入到 SSRS 报告中,按序列 id
排列1 2 3
4 5 6
7 8 9
我应该使用列表,还是table,或者矩阵?这种安排有什么解决办法吗?谢谢
我通常会为此使用矩阵。您可以计算 table 中每一行数据的行号和列号,然后将其用于矩阵中的行组和列组。
这是一个例子...
注意:您可能没有或不需要 'label' 字段,因此当我们进行报表设计时,只需将其换成您想要显示的任何字段。
这是一些计算了行和列的示例数据
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
内部查询只是将 SeqOrder 分配为 1 到 9。然后我们使用此 SeqOrder 值来确定行和列
这为我们提供了以下数据集
然后我们只需在报告中添加一个矩阵
接下来,将 ColN
字段拖到“列”占位符,将 RowN
字段拖到“行”占位符,然后将 Label
字段(或您想要的任何字段)显示)到“数据”占位符。
运行 报告,你会得到这个
您可以选择删除第一行和第一列(但不是关联的组),只保留数据单元格。
现在当我们 运行 它时,我们得到了这个。