SSRS动态参数通过页眉传递

时间:2016-11-01 13:33:53

标签: sql sql-server reporting-services ssrs-2012 erp

我正在使用SSRS编制ERP实施项目的报告。我希望在每张纸的标题上显示唯一的作业编号。例如,在订单号66上,我应该在19页标题的顶部有19个唯一的作业号。作业编号所在的格式如下:

66-1500001, 66-1500002 --> 66-1500019

我有一个名为 JobNumber 的数据集,以及此数据集中名为 JobProd_JobNum 的字段。我需要在不使用Tablix的情况下执行此操作,因为这些不能输入SSRS报告的作业标题部分,因此我创建了一个名为 JobParameter 的参数。然后我在一个存储过程中使用了以下代码放在标题部分的文本框中:

=Parameters!JobParameter.Value

但这只显示了所有19个页面上的第一个作业编号:

661500001

我尝试过使用join功能,但这只是将所有19个作业编号连接到每个页面上,我需要在每个页面上显示一个唯一的作业编号

无论如何都要在存储过程中编写一个循环,将第一个页码作为第一个作业号,依此类推,直到第19个作业号为止,保留这样的内容:

 page1, job number : 66-1500001 
 page2, job number : 66-1500002
 page3, job number : 66-1500003
 ...
 page19, job number : 66-1500019

感谢任何帮助,保罗。

1 个答案:

答案 0 :(得分:1)

我一直在这里试验自己找到了答案。它实际上非常简单。我的tablix数据包含(括号中的数据集名称)

1.Order Number (Orderhed_OrderNum) 
2.Job Number (JobProd_JobNum)
3.Sheet colour(OrderDtl_OrderQty)
4.SKU(OrderDtl_XPartNum)
4.Qty(OrderDtl_LineDesc)

数字是我对数据进行分组的顺序,因此2是1的子项,3是2的子项等。在Tablix中,我有工作号信息,所以我需要做的就是从tablix调用它正在使用的文本框到页眉上。文本框名称为 JobProd_JobNum ,因此我在标题部分创建了一个文本框并附加以下表达式:

=ReportItems!JobProd_JobNum.value

以标题格式显示每个相关页面顶部的19个唯一作业编号。