我有一份SSRS报告,根据参数显示不同的记录数。结果是两列但是60行或更多,我试图将我的数据集结果显示在六列而不是两列中,以便更加用户友好并利用空白空间。
我有三个tablix
和每个tablix
点,所以相同的数据集和相同的列,但我在row visibility
上应用了此表达式
第一个tablix
的表达式是
=IIF((RowNumber(Nothing) Mod 3) = 1, False, True)
第二个tablix
的表达式是
=IIF((RowNumber(Nothing) Mod 3) = 2, False, True)
最后tablix
的表达式是
=IIF((RowNumber(Nothing) Mod 3) = 0, False, True)
我得到的结果是
T01 65 T02 85 T03 21
T04 85 T05 89 T06 85
T07 87 T08 85 T09 85
我有什么方法可以将结果显示为:
T01 65 T04 85 T07 87
T02 85 T05 89 T08 85
T03 21 T06 85 T09 85
答案 0 :(得分:0)
SSRS内置了此功能。在布局选项卡上的报告属性下。
答案 1 :(得分:0)
您应该可以使用多列或"时事通讯样式"报告,但只有在渲染为PDF或其他图像格式时才能正常工作。您还可以考虑并排放置三个Tablix控件,并使用一些分页功能在它们之间平均分配行数。以下是article on technet:
的示例-- 2 - QUERY USING "ROW_NUMBER"
DECLARE @PageNumber AS INT, @RowspPage AS INT
SET @PageNumber = 2
SET @RowspPage = 10
SELECT * FROM (
SELECT ROW_NUMBER() OVER(ORDER BY ID_EXAMPLE) AS Numero,
ID_EXAMPLE, NM_EXAMPLE , DT_CREATE FROM TB_EXAMPLE
) AS TBL
WHERE Numero BETWEEN ((@PageNumber - 1) * @RowspPage + 1) AND (@PageNumber * @RowspPage)
ORDER BY ID_EXAMPLE
GO