我正在使用SSRS进行报告,我的报告解决方案是在Visual Studio 2008商业智能开发工作室中。
我有一份报告,其中数据应以这种格式显示。
我在我的表格中添加了一个列组,其中包含客户名称和详细信息的值,数据在垂直格式即列后一列正常。
我的问题:
每行应该只有三列,在三个记录之后,下一行应该开始,并且应该再显示不超过三个记录,如上图所示。
我的尝试: 我试图添加一个行组,并在其中给出表达式
= Ceiling(Fields!Row_Count.Value/3)
这里Row_Count是一个来自我查询的字段,它保存了记录的序列号。
我的SQl查询
SELECT Row_Number() over(order by table_ID) AS Row_Count, Field_1,Field_2 from MyTable
在我的专栏组中,我有客户名称,在我的行组中,我有其他客户详细信息。数据按列填充,但问题是它在三条记录之后没有打破当前行。 以下是我的报告表。
答案 0 :(得分:2)
你走在正确的轨道上。假设你有这样的数据:
我创建了一个这样的Tablix:
行组表达式为:
=Ceiling(Fields!Row_Count.Value / 3)
这与Column Group表达式一起分割三列:
=(Fields!Row_Count.Value - 1) Mod 3
与Tablix相比,另一件需要注意的是 CustomerName 在表标题行中不是,而是有两个行标题行,一个用于客户名称,以及详细信息。
这对我来说很好看,显然你可以按照格式来品尝: