解释SSRS参数

时间:2014-07-17 16:21:54

标签: sql-server oracle visual-studio-2012 reporting-services business-intelligence

我在Visual Studio中为SSRS制作报告,我想知道如果我能解释这些参数,我是否有一个带多个值的参数(最终填充我的表)。我想从用户那里获取输入并对其执行一些逻辑(在这种情况下将其与字符串进行比较,如果匹配则使用此,如果它不匹配则使用来自用户的原始输入) 。可能的条目列表太大,用户也无法从预定义列表中进行选择。

例如:

数据集为:select * from details where cust_nme in (:customers)

然后用户可以在客户中输入多个值。但有时用户可能会进入杰克逊先生,而不仅仅是杰克逊,数据库并不包含先生。所以我需要报告将其解释为杰克逊。 (假装我们不能告诉用户不要使用前缀MR)

2 个答案:

答案 0 :(得分:1)

在您的示例中,您想要将“MR ...”更改为“...”,因此您需要匹配“MR”

转到:datasets-> dataset properties-> parameters选项卡

将参数值设置为此表达式: =拆分(替换((join(参数!Name.Value,“,”)),“MR”,“”),“,”)

此表达式将一组客户作为用户的输入,将它们连接成一个逗号分隔的字符串。然后用“”替换所有“MR”。最后一步是再次将其拆分为一个数组。

请注意,客户名称不能包含逗号。

答案 1 :(得分:0)

Select
Customer_Name,
'Mr' + ' ' + Name AS Mr_Customer_Name
From Table
Where (Customer_Name in (@Customers)
OR Mr_Customer_Name in (@Customers))