【问题标题】:SSRS cascading parameters for SSAS Tabular datasource with M2M relationship between dimensions in SQL Server 2014 BI在 SQL Server 2014 BI 中具有 M2M 关系的 SSAS 表格数据源的 SSRS 级联参数
【发布时间】:2016-06-09 12:42:22
【问题描述】:

我正在尝试使用 SSAS 表格模型作为数据源来构建一个简单的报告。模型中有两个不同的维度 - UserGroups 应该用作第一个参数,Regions 应该用作第二个参数。这些维度在模型中与 M2M 相关。使用表格模型的 M2M 技巧计算的简单度量在 Excel 和 PBID 中运行良好。

我需要将这些参数级联到 SSRS 报告中。 IE。在 UserGroups 下拉列表中选择一个或多个(允许多个值参数选项为 ON)值后,应过滤区域下拉列表。

在我将两个维度都放到查询设计器中的过滤器窗格之后,我收到了两个带有隐藏数据集的参数。一切看起来都很好,但第一个参数(UserGroups)实际上并没有过滤 Regions 下拉菜单。

我想我理解问题的本质。在将 M2M 相关维度放置在相同的行/列窗格中时,我们在 Excel 等其他客户端工具中看到了相同的图片 - 第二维度显示在数据透视表中的所有成员中,直到我们检查数据透视表字段中的度量。一旦度量开始起作用,第二维度的所有成员(在我的例子中为区域)都会消失 - 如果度量值为空,Excel 足够聪明,可以清除维度成员。但这在 SSRS 中不会发生。

所有“自动”级联参数创建在单个维度的层次结构中都能很好地工作。我希望这也适用于一对多相关维度。但是如何扩展/修改自动创建的 MDX 查询,以便过滤掉第二个参数数据集?在这种情况下,看起来SELECT ( StrToSet ( @[UserGroupsUserGroups], CONSTRAINED ) ) ON COLUMNS 是不够的。我还需要检查度量值以过滤掉区域列表。不幸的是,我不是 MDX 专家。请帮助我将此检查注入查询。

【问题讨论】:

    标签: reporting-services ssrs-2012 ssas-tabular


    【解决方案1】:

    您走在正确的轨道上,并对场景进行了很好的解释。正如您所发现的,没有自动方法可以使参数级联。您确实需要在第二个参数中添加一个 MDX 过滤器来实现这一点。

    就实际查询而言,没有足够的信息为您提供准确的查询。但是您会使用StrToSet 传入第一个参数并使用FILTER 函数来限制范围。正如您所说,包含度量是仅获取两个参数的“NonEmpty”组合的一种方法。如果您在示例查询中遇到特定问题,请随时提供更多详细信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多