我正在创建一个包含多个条件的表格报告。作为一个恰当的例子,条件可以是以下任何一种:
X 为空
X 不为 NULL
X 喜欢 '%Y%'
我想创建一种能够选择上述条件之一的钻取报告。
现在我正在创建三个表并使用 IIF 来显示每个表。我将参数添加到可见性,并通过选择一个条件,相关表变为可见,而另外两个变为隐藏。
但我只考虑一个带有用于选择所需条件的参数的表。
我正在创建一个包含多个条件的表格报告。作为一个恰当的例子,条件可以是以下任何一种:
X 为空
X 不为 NULL
X 喜欢 '%Y%'
我想创建一种能够选择上述条件之一的钻取报告。
现在我正在创建三个表并使用 IIF 来显示每个表。我将参数添加到可见性,并通过选择一个条件,相关表变为可见,而另外两个变为隐藏。
但我只考虑一个带有用于选择所需条件的参数的表。
不要使用可见性表达式,而是将其添加为过滤器。这将只显示与表达式匹配的行。你可以这样做:
表达式:=“真”
运算符:=
值:IIF(参数!Status.Label = “NULL”、“TRUE”、“FALSE”)
只需将 case 语句添加到您的查询中,并使用为不同报告类型返回数字的参数。像这样的东西:
WHERE CASE WHEN @ReportType = 1 AND x IS NULL THEN 'Y'
WHEN @ReportType = 2 AND x IS NOT NULL THEN 'Y'
WHEN @ReportType = 3 AND x LIKE '%y%' THEN 'Y'
ELSE 'N' END = 'Y'