2014-01-22 89 views
1

我是新开发针对立方体的报告并且有一段时间。SSAS 2012 - 在SSRS报告中使用非层次结构成员

我有一个日历维度的多维数据集(多维SSAS 2012)。该维度具有典型的日历层次结构,加上层次结构外的年份成员(不确定此类属性的调用情况)。

我想将Year作为报表参数,因为我不喜欢SSRS中的层次结构参数查找方式,并且此处所有用户都需要Year。所以我将Year成员设置为查询设计器中的参数。在观察报告中得到一个错误,所以我删除它作为一个参数,并将其添加到查询输出,看它是否帮助,但我不断收到同样的错误:

Query execution failed for dataset 'DateCalendar'. 
Query(1, 368) The ALLMEMBERS function expects a hierarchy expression for 
the argument. A member expression was used. 

请注意,我还没有创建一个名为“DateCalendar”的数据集。

这里的MDX查询设计器吐出来:

SELECT 
    NON EMPTY 
     { 
      [Measures].[%Completion] 
     } ON COLUMNS, 
    NON EMPTY 
     { 
      (
       [Physician].[PCP Name].[PCP Name].ALLMEMBERS 
        * 
       [Physician].[LY Physician Score].[LY Physician Score].ALLMEMBERS 
        * 
       [Date].[Year].[Year].ALLMEMBERS 
      ) 
     } 
     DIMENSION PROPERTIES MEMBER_CAPTION, 
     MEMBER_UNIQUE_NAME 
    ON ROWS 
FROM [MemberMeasure] 
    CELL PROPERTIES VALUE, 
    BACK_COLOR, 
    FORE_COLOR, 
    FORMATTED_VALUE, 
    FORMAT_STRING, 
    FONT_NAME, 
    FONT_SIZE, 
    ONT_FLAGS 

我很迷茫,快快并没有多少运气使用Google的答案。任何帮助将不胜感激!

+0

由于您的查询已重新格式化,因此很难看到第1行第368列(报告为错误位置)的位置。哪个表达式在这个位置开始或结束并包含“AllMembers”? – FrankPl

+0

我知道......这是或多或少的查询设计器如何格式化它。我所做的只是换行。当我将它从设计师身上复制出来时,它全部集中在一条线上。我不知道第1行第368列的错误是指什么。我可以做些什么来帮助找到那个位置?我需要在SSMS中运行它并找到第368列吗? – Anna

+0

为了扩展我的最后一个问题,第1行第368列提到了我需要以某种方式找到的结果集中的某些内容? – Anna

回答

1

我仍然不知道错误是什么意思,但我认为它由于我摆脱的参数遗留下来的隐藏数据集而持续存在。哇,这很烦人。

1

不知道这个问题是否仍然是一个问题,但我有同样的错误。

对我来说,问题在于一个成员名义上的错字。例如:。

[日期] [年份] [年份] .ALLMEMBERS

是[日期] [会计年度] [财政年度] .ALLMEMBERS

所以一定要确保所有的水平。的成员拼写正确,并且与当前部署的多维数据集版本中的完全匹配。