1

另一个SSRS问题。我有一份报告,我们希望让最终用户按名称列表筛选报告,但这些名称需要已由用户所在的工作地点过滤。 Name参数值列表的过滤需要在幕后进行;用户不应该能够看到或选择与他的网站无关的名称。例如,表中有200个唯一的名称,但只有15个在这个网站上工作;最终用户应该只能看到并从这15个名称中进行选择,以按照过滤报告。有没有办法根据不同参数(即站点)的值对参数的可用值进行过滤?SSRS - 按另一个参数的值筛选参数的可用值

注意:此报表正在查询SharePoint列表,因此使用SQL的解决方案(如herehere)可能无法正常工作;尽管如此,我仍然愿意纠正这一点。

回答

1

从SSRS方面来说,我会这样做。 (我知道一点有关SharePoint)

  1. 创建(在这个例子中@user)文本报告参数和 默认值设置为内置字段“用户名”。用户ID将为 ,如“DOMAIN \ user”。
  2. 使用@user参数 创建一个数据集(在本例中为siteid)来提取当前报告运行者站点标识。我不得不在SQL中专门为此创建一个 查找表。
  3. 创建 siteid(本例中为@site)所需的任何类型的另一个报告参数,并将默认值设置为“从Query中获取 值”。选择siteid数据集字段作为默认值。
  4. 使用where子句中的@siteid参数 创建一个数据集(本例中为名称)。
  5. 将这两个参数设置为“隐藏”。

这应该允许报表自动执行并仅检索与当前用户的siteid匹配的名称值。

+0

我实际上已经完成了或多或少的描述,但事实证明我只是忘记了在name参数的数据集上过滤掉网站。现在看起来很明显,但我花了三四天的时间试图找出答案。 –