没有值时SSRS查询报表参数可见性

SSRS query report parameter visibility when there is no value

我有一个包含 4 个多值参数的报告,其中值根据从第一个参数中选择的值填充:

示例:@Param1 = Forest, @Param2 = Lake , @Param3 = Fish

根据所选的值,最后一个参数可能没有值。

示例:@Param1 = Desert, @Param2 = Sand, @Param3 = Null (Empty)

在这种情况下,@param3 在 Reporting Services 中可见只是显示一个空的参数框,用户开始怀疑是否缺少数据等等。

如何在 t-sql 代码中禁用空的 @Param3?

这是对@param3 的查询:

SELECT DISTINCT Column3
FROM TABLE
WHERE Column1 = (@param1) AND
Column2 = (@param2)
ORDER BY Column3

主数据集查询有这个谓词:

FROM TABLE
WHERE (Column1 = (@param1) or (@param1) is not null) AND
       Column2 = (@param2) or (@param2) is not null)
      AND (Column3 IN (@Param3) OR (@Param3) !='') AND 
(Column4 IN (@param4)) OR (@param4 !='')
ORDER BY Month

.

尝试向您的脚本添加一个 'dummy' 值,并且仅在没有其他可用值时才返回该值:

SELECT DISTINCT Column3
FROM TABLE
WHERE 
    Column1 = (@param1) AND
    Column2 = (@param2)
UNION ALL 
SELECT 'No Value Needed'
WHERE NOT EXISTS 
  (
    SELECT 1
    FROM TABLE 
    WHERE 
        Column1 = (@param1) AND
        Column2 = (@param2)
  )
ORDER BY Column3