Reporting services 将参数从主报表传递到子报表

Reporting services 将参数从主报表传递到子报表,reporting-services,ssrs-2008,ssrs-tablix,ssrs-2008-r2,Reporting Services,Ssrs 2008,Ssrs Tablix,Ssrs 2008 R2,下面是我的tablix/matrix的一个示例,以及应该发生的一些示例。我在第二个报告设置中设置了接受值的参数,在主报告中,我刚刚选择了它应该传递的字段。因为它是一个矩阵,并且是分组的,所以我认为如果单击一个小行,它就会知道与该行相关的值 以下示例定义了应发生的情况: 1.当我单击单元格B3(美国)时,它会将位置名称(即美国)和客户名称(即ABC)作为参数传递给子报告 2) 。当我单击单元格B5即小计时,它将发送两个位置,即美国、迪拜和客户名称,即abc,作为子报告的参数 3) 。当我单击单元

下面是我的tablix/matrix的一个示例,以及应该发生的一些示例。我在第二个报告设置中设置了接受值的参数,在主报告中,我刚刚选择了它应该传递的字段。因为它是一个矩阵,并且是分组的,所以我认为如果单击一个小行,它就会知道与该行相关的值

以下示例定义了应发生的情况:

1.当我单击单元格B3(美国)时,它会将位置名称(即美国)和客户名称(即ABC)作为参数传递给子报告

2) 。当我单击单元格B5即小计时,它将发送两个位置,即美国、迪拜和客户名称,即abc,作为子报告的参数

3) 。当我单击单元格B10(即总计)时,它会将所有客户名称及其各自的位置作为参数发送到子报告


谢谢

我会这样做的。对于小计链接,传递位置参数和
=字段的“ALL”!。客户参数的Customer.Value
。对于总计链接,对两个参数传递“ALL”。然后更新子报告查询
Where
子句:

Where
    (Customer = @Customer or @Customer = 'ALL')
    and (Location = @Location or @Location = 'ALL')
当相应参数设置为“全部”时,将返回所有客户/位置记录


如果您需要更多详细信息,请告诉我。

我认为仅使用SSR无法完全实现示例2和示例3的目标

我将在数据集中派生新的列来保存要传递的连接参数字符串。对于示例2,此列可能称为Customer|u Locations,其值为“USA | Dubai”。我将使用子报表参数定义中的SSRS Split函数,将该值传递给子报表中的多值参数。重要的是,所选的分隔符不会出现在可能的位置值中

对于该客户的所有行,相同的值将在数据集的每一行中重复


例如3,我将再添加两列,例如Customer_Locations_Grand_Total=“USA | Dubai”和Customers_Grand_Total=“ABC | CDE”。所有行都会重复这些相同的值。

如果单击B4会怎么样?然后它会将位置名称(即迪拜)和客户名称(即ABC)作为参数传递给子报表。这是标记为
ssrs-2008
ssrs-2008-r2
-这是哪个特定版本?感谢您的回复,我如何识别ssrs,单元格B4是否包含位置值“USA”或“Dubai”,以便我可以将该值传递给子报表。传递
=字段!Location.Value(或位置的任何字段名)作为位置参数,当用户单击美国时它将通过美国,当用户单击迪拜时它将通过迪拜。