2016-08-24 55 views
0

我目前有一个SSRS报告,该报告基于两个站点(Cape Town和Dallas)给出了Telephony Data。如何筛选SSRS中的参数值

目前我有一个名为Site的参数和一个名为Data_Label的参数。它完全符合我希望通过选择开普敦和相关Data_Label以及达拉斯相同的方式。然后显示我需要的所有数据。

我遇到的问题是Data_Label有很长的列表,其中一半连接到开普敦站点,另一半连接到达拉斯站点。我想要发生的事情是,当我选择开普敦作为我的网站时,会出现一半的Data_Label,然后当我选择达拉斯时,其他人将显示。

这是在数据集我的当前查询:

WHERE([LB ODS] .Telephony_LifestyleBenefits_VIEW.Site IN(@Site))AND([LB ODS] .DataLookup.Data_Label IN(@DataLabel))

所以每个Data_Label将被链接到它的相关网站在主数据库中,但我只需要在我的参数的过滤器,以便它不显示一长串

感谢 丹

+0

你可以加入Data_Label和Site数据集吗?如果我理解你的问题,这可以通过级联这两个参数来解决。 –

+0

我目前只有1个数据集在使用,那么我该如何去做呢? –

+0

你如何填充Data_Label和Site参数? –

回答

0

您可以从Site参数值级联Data_Label参数。

如果您是通过数据集填充Data_Label参数当您运行报告填充Data_Label参数将运行上面的查询数据集可以过滤使用Site参数,这样

select Data_Label 
from Table1 
where Site IN (@Site) 

东西可用值并返回与为Site参数选择的值相关的Data_Label值。

WITH DLValues AS (

select 'Data_Label1' [Data_Label], 'Dallas' [RelatedSite] 
union all 
select 'Data_Label2' [Data_Label], 'Dallas' [RelatedSite] 
union all 
select 'Data_Label3' [Data_Label], 'Cape Town' [RelatedSite] 
union all 
select 'Data_Label4' [Data_Label], 'Cape Town' [RelatedSite] 

) 

select Data_Label 
from DLValues 
where RelatedSite IN (@Site) 

让我知道如果这能帮助你:

此外,如果你填充参数手动你可以在一个CTE在这样的事情是什么结果硬编码值。

+0

非常感谢亚历杭德罗 –