SSRS 级联参数删除非唯一值

SSRS cascading parameters Dropping non unique values

我有一份包含机构、单位、计划等参数的报告。 Unit 有两个值 'A01' & 'A02',每个 Unit 都有一个 ProgramCode 为“01”但程序名称唯一的 Program。我报告中的下拉列表将删除第二个单元“01”程序。

这里是程序参数的查询,但我注意到其他多选参数和非唯一值的这种行为。

enter code here
SELECT NON EMPTY { [Measures].[Total Funds] } ON COLUMNS, 
       NON EMPTY { (
            Order(
                 [ExpenditureLineItem].[ProgCode].CHILDREN * 
                 [ExpenditureLineItem].[Program Code Name].CHILDREN *
                 [ExpenditureLineItem].[ProgName].CHILDREN
                  , ASC
                 )
                 ) } ON ROWS 
                 FROM [Model] 
                 WHERE
            ( [ExpenditureLineItem].[Fiscal Year].[FY 2016], 
              [ExpenditureLineItem].[Stage].[YEAct], 
              [ExpenditureLineItem].[AgencyCode].[W00],
              {[ExpenditureLineItem].[UnitCode].[A01][ExpenditureLineItem].[UnitCode].[A02]}

这与列出月份的下拉列表相同吗?假设您从 2016 年 1 月到 2017 年 7 月....这意味着可能有两个成员叫 [January],然后一个会被剔除?

然后您需要创建唯一的名称。你有没有看好成员.UniqueName?这可以在 MDX 中使用。虽然看起来有点丑。

或自己动手,例如创建 [January 2016][January 2017]。这可以在多维数据集本身上完成。您不必更改 'January' 名称;您可以设置一个 属性 来保存值 'Jan2017'。或者使用 WITH MEMBER 在 MDX 中创建新名称,如下所示:

WITH MEMBER [Time].[January 2016] AS [Time].[2016].[Quarter 1].[January]

此方法仅在您有少量不变的成员时才有效。最好在多维数据集级别进行。

是的,我最终在多维数据集中创建了一个查找项来连接 Agency/Unit/Program/subprogram。那解决了它。