繁体   English   中英

MDX-当添加多个属性时,“成员”不起作用

[英]MDX - With Member not working when more than one attribute added

尝试添加多个“ Quarter”属性时,似乎出现问题。 以下工作没问题。

with member [Measures].[myTest] as
([Measures].[sample],
 [Date].[Fiscal Date].[Fiscal Year].&[1415],
 [Date].[Quarter].&[Jul-Sep]
 ),
format_string='$#,###,###,##0'
SELECT NON EMPTY 
{...

现在,当我尝试添加一个四分之一作为一组时,我得到:

VALUE #Error函数需要参数的字符串或数字表达式。 使用了元组集表达式。

FORMATTED_VALUE #Error该函数需要参数的字符串或数字表达式。 使用了元组集表达式。

这就是我设置[Date]。[Quarter]的方式。

with member [Measures].[myTest] as
([Measures].[sample],
 [Date].[Fiscal Date].[Fiscal Year].&[1415],
 {[Date].[Quarter].&[Jul-Sep], [Date].[Quartr].&[Oct-Dec]}
 ),
format_string='$#,###,###,##0'
SELECT NON EMPTY 
{...

我可以有多个[Date]。[Quarter]属性吗?

看起来您有错字John: [Date].[Quartr].&[Oct-Dec]

在创建新指标之前,请尝试汇总两个季度:

WITH 
  MEMBER [Date].[Quarter].&[Jul-Dec] AS 
    Aggregate(
       {[Date].[Quarter].&[Jul-Sep]
       ,[Date].[Quarter].&[Oct-Dec]}
    ) 
  MEMBER [Measures].[myTest] AS 
    (
      [Measures].[sample]
     ,[Date].[Fiscal Date].[Fiscal Year].&[1415]
     ,[Date].[Quarter].&[Jul-Dec]
    ) 
   ,format_string = '$#,###,###,##0' 
SELECT 
  NON EMPTY 

问题是

这是一个元组:

(
 [Measures].[sample],
 [Date].[Fiscal Date].[Fiscal Year].&[1415],
 [Date].[Quarter].&[Jul-Sep]
)

虽然这不是一个元组:

(
 [Measures].[sample],
 [Date].[Fiscal Date].[Fiscal Year].&[1415],
 {[Date].[Quarter].&[Jul-Sep], [Date].[Quartr].&[Oct-Dec]}
)

将元组视为多维平面上的坐标。 每个平面的值必须是奇数。

因此,虽然(1,2,3)是有效的元组,但(1,{1,2}, 3)是无效的元组。 SSAS只是对您宽容,不在此处抛出一些语法错误。

如果要添加四分之一以上,可以执行以下操作:使用Aggregate函数:

Aggregate
         (
            {[Date].[Quarter].&[Jul-Sep], [Date].[Quartr].&[Oct-Dec]} * [Date].[Fiscal Date].[Fiscal Year].&[1415]
            ,
            [Measures].[sample]
         )

是理解集合和元组概念的一个很好的起点。

在这里,您可以了解Aggregate功能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM