MDX - 当添加多个属性时,成员不工作

时间:2015-07-20 10:28:06

标签: mdx cube olap-cube

当我尝试添加多个Quarter属性时,我似乎遇到了问题。以下工作没有问题。

Started GET "/sessions/new" for 127.0.0.1 at 2015-07-20 18:24:58 +0800
Processing by SessionsController#new as HTML
Redirected to http://localhost:3000/sessions/new
Filter chain halted as :verify_authenticity rendered or redirected
Completed 302 Found in 5ms (ActiveRecord: 0.0ms)
cache: [GET /sessions/new] miss

现在,当我尝试再添加一个季度时,我得到了:

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

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

这就是我正在做[日期]。[季度]设置。

class ApplicationController < ActionController::Base
  # Prevent CSRF attacks by raising an exception.
  # For APIs, you may want to use :null_session instead.
  protect_from_forgery with: :exception
  before_action :verify_authenticity, except: [:session]

  private
    def verify_authenticity
      redirect_to sessions_new_url unless current_user
    end
end


class SessionsController < ApplicationController
  skip_before_action :verify_authenticity

  def new
    redirect_to index_url if current_user
  end

end

我可以有多个[日期]。[季度]属性吗?

2 个答案:

答案 0 :(得分:1)

看起来你有一个错字约翰:[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 

答案 1 :(得分:0)

问题是

这是一个元组:

(
 [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]
         )

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

Here您可以了解Aggregate功能。