如何在运行时更改SQL Server报表服务报表的列顺序?

时间:2012-03-15 17:16:14

标签: sql-server reporting-services reporting rdlc

我想在运行时基于例如*.rdlc报告更改标题/列的顺序。用户首选项设置。我发现你可以使一些列不可见,但我还没有找到改变列顺序的方法。我在ASP.NET网页中使用ReportViewer控件。在这种情况下运行时意味着布局可以在两个页面请求期间发生变化。我在某处读到了您可以动态配置rdlc xml或使用rdl对象模型在请求处理过程中动态创建报表定义。

以下示例应该有助于更好地解释我想要做的事情:

表或矩阵的默认报告列布局:

Date   Item   Price

在运行时动态更改列的顺序:

Item   Price   Date

1 个答案:

答案 0 :(得分:0)

我做过类似事情的唯一方法是通过参数。

Header cell expression: =Parameters!Column1.Label
Row cell expression:    =Fields(Parameters!Column1.Value).Value

label参数是列标题,值是数据集中的字段名称。因此,在您的示例中,将有3个Column参数,所有参数都具有DateItemPrice的可用标签/值,更改参数将决定列内容。