【问题标题】:Multiple value selection and optional filter in SSRS 2005 reportSSRS 2005 报告中的多值选择和可选过滤器
【发布时间】:2012-12-13 09:54:38
【问题描述】:

在问这个问题之前,我已经做了相当多的研究。 首先,我想创建一个能够选择多个值的下拉过滤器@accessVar。如果不是因为我的特殊要求,那将很容易。我的数据集声明是:

SELECT PASS_M, ENTRY_DT, EXIT_DT, WORKED_HRS, ACCESS_LOCATION_X, IC_N, COMPANY_M,           CONSECUTIVE_D 
FROM TEMP_TARGET
WHERE (CONSECUTIVE_D >= @consecDays) AND (ENTRY_DT BETWEEN @startDate AND @endDate) AND
(ACCESS_LOCATION_X LIKE @accessVar) AND
(IC_N LIKE @icVAr)    

但是我需要为@accessVar 使用%wildcard(例如'BT%'​​),因此我无法使用运算符IN。我能做些什么?我正在使用 SSRS2005。请给我建议。

【问题讨论】:

    标签: wildcard reporting-services reportingservices-2005


    【解决方案1】:

    您可以使用数据集属性中的过滤器来执行此操作。在此之前,您需要从数据集查询中删除 (ACCESS_LOCATION_X LIKE @accessVar)

    如下设置表达式[修改你的参数名称]。

    =ACCESS_LOCATION_X Like "*"+Parameters!param.Value+"*"
    

    然后如下配置Dataset properties Filter选项卡。

    之后,您可以运行您的报告。以下截图在报表数据集中搜索“en”字并返回结果集。

    希望这会有所帮助!

    【讨论】:

    • 您好,尝试后出现错误:数据集“DataSpurce1”的 FilterExpression 表达式包含错误:[BC30452] 未为类型“Microsoft.ReportingService.ReportProcessing.ReportObjectModel”定义运算符“Like” .Field' 和 'Object'" 我正在使用 SSRS 2005。我在数据集中的过滤器属性是不同的。我确实有一个下拉菜单来选择布尔值。顺便说一句,感谢您的努力和帮助
    • 你能发布你在过滤器部分使用的表达式吗?
    • =Fields!ACCESS_LOCATION_X Like "" + Parameters!accessVar.Value + "" 输入此表达式后,我单击确定,对于运算符,我选择相等,对于值,我输入 True .我没有选择布尔值的地方,我在“”中包含星号,但它不会显示在stackoverflow中
    • 还有其他建议吗?急需这个
    • @10e5x 可以使用存储过程吗?
    猜你喜欢
    • 2012-12-04
    • 2018-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多