SSRS报表格式化表格以便将数据并排显示

7

我正在尝试基于一个查询实现以下报告布局。

+----+-------+----+-------+
| ID | Name  | ID | Name  |
+----+-------+----+-------+
|  1 | Danny |  2 | Dave  |
|  3 | Sue   |  4 | Jack  |
|  5 | Rita  |  6 | Sarah |
+----+-------+----+-------+

所以我基本上想要一个表格,从左到右打印我的数据,以节省页面上的空间,而不是打印一行并浪费纸张右侧的所有空间,甚至可能超过宽度三倍。
这是我的数据:http://sqlfiddle.com/#!3/5c911/1 我可能想用4列表格。第1和2列包含奇数行号,第3和4列包含偶数行号。
我该如何实现这个功能,我尝试使用MOD函数,但它似乎不能正常工作,或者我误解了发生的事情。
相关链接:如何在报告设计器中将两行数据并排显示在一行上? 谢谢。

你能否编辑问题并添加有关数据集的详细信息,以及您迄今为止尝试过的内容,并具体说明(除 示例 外)您要实现的目标? - Jeroen
抱歉,我现在添加了更多的细节。 - Danny Cullen
你是否考虑使用报表的“列”属性:https://dev59.com/GVjUa4cB1Zd3GeqPNAHg。这将在.pdf输出中使用多个列,但不会在Web和Excel中使用,这可能正是你想要的。 - Jamie F
2个回答

8
为了实现多列格式中从左到右打印数据,您需要使用多个表来模拟。要执行此操作,请创建与您要并排显示的列数相同的表,这些表都指向您的数据集。在第一个表的详细行上,对于可见性-隐藏属性,请使用以下公式:
=IIF((RowNumber(Nothing) Mod 4) = 1, False, True)

其中 4 是你拥有的表格(列)数。

对于每个表格,都执行相同的操作,将公式中的值递增(因此对于第二列,(RowNumber(Nothing) Mod 4) = 2 等等)。在最后一个表格(列)中,公式的值等于 0

这样可以交替隐藏细节行,仅显示该列编号的适当行。


0

你可以通过查询来实现那种外观。

SELECT std1.id AS Student_Id, 
        std1.NAME AS Student_Name, 
        std2.id AS Student_Id, 
        std2.NAME AS Student_Name
FROM students std1, students std2
WHERE (std2.id - std1.id = 1 
       AND std1.id %2 = 1);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接