0

当您有多个多值下拉菜单时,有没有办法使用其中一个?

现在,按照我的逻辑,我添加了一个下拉参数。此下拉列表具有以下值:

  • Return Everything - 1 - (这应该将两个多值下拉菜单默认为“Everything”
  • 选择参数 1 - 2 - (这应该允许您从参数 1 中选择您想要的任何内容,默认参数 2 为“Everything”)
  • 选择参数 2 - 3 - (这应该允许您从参数 2 中选择您想要的任何内容,默认参数 1 为“Everything”)

为了处理这个问题,我在参数的默认值中使用了以下表达式:

参数1(零是参数中返回的值):

=iif(Parameters!Criteria.Value = 1, Nothing, iif(Parameters!Criteria.Value = 3, Nothing, 0))

参数 2

=iif(Parameters!Criteria.Value = 1, Nothing, iif(Parameters!Criteria.Value = 2, Nothing, 0))

但是,这种逻辑似乎并没有像我预期的那样工作。该表达式Nothing应该将 aNULL放入我的参数数据集中,然后默认返回“Everything”,但这并没有发生。

4

1 回答 1

1

我会修改方法 - AFAIK 你只能使用表达式将单个值设置为默认值。

因此,我将为 Parameter1 和 Parameter2 创建一个新数据集。此数据集将为每个参数提供默认值(代替您当前尝试的表达式)。

例如,新的 Parameter1_Default 数据集应该呈现所有通常呈现给参数 1 的行。然后在该数据集的 WHERE 子句中,添加:WHERE 3 = @Criteria。

然后在 Parameter1 定义中,将默认值设置为来自新的 Parameter1_Default 数据集。当 Criteria = 3 时,它将“全选”Parameter1 值。当 Criteria <> 3 时,不会选择 Parameter1 值。

对参数 2 重复。

于 2013-03-13T00:12:57.017 回答