我有一个维度的计算成员(非度量),它在SSMS中有效,但在Excel 2013中不起作用。
我已按照this问题中描述的有关如何创建计算成员的建议。
所以我的彩票维度中有一个新属性叫做“相关彩票”。只有一名成员'范围内的所有彩票'通过DSV定义。
我有一个像这样的计算成员:
CREATE MEMBER CURRENTCUBE.[Lottery].[Relative Lotteries].[All].[This Lottery]
AS NULL, VISIBLE = 1;
然后是这样的SCOPE声明:
SCOPE ([Lottery].[Relative Lotteries].[All].[This Lottery]
,[Lottery].[Lottery Number].members);
THIS = 10000;--([Lottery].[Lottery Number].currentmember,measures.currentMember);
END SCOPE;
我已尝试过SCOPE和THIS =的大量组合,其中大多数都是通过SSMS工作但没有通过Excel 2013工作。
我使用OLAP扩展来获取Excel 2013生成的MDX脚本,MDX是:
SELECT
{ [Measures].[Response - Sale Amt], [Measures].[Response - Qty of Orders] } DIMENSION PROPERTIES PARENT_UNIQUE_NAME
, HIERARCHY_UNIQUE_NAME ON COLUMNS
, NON EMPTY Hierarchize (
{
DrilldownLevel (
{ [Lottery].[Relative Lotteries].[All] }
,
,
, INCLUDE_CALC_MEMBERS
)
}
) DIMENSION PROPERTIES PARENT_UNIQUE_NAME
, HIERARCHY_UNIQUE_NAME ON ROWS
FROM [Lottery]
WHERE ( [Lottery].[Lottery Number].&[141] ) CELL PROPERTIES VALUE
, FORMAT_STRING
, LANGUAGE
, BACK_COLOR
, FORE_COLOR
通过SSMS,此查询产生预期结果:
但是通过Excel 2013,我得到了这个结果:
我唯一能想到的是它与Excel连接字符串有关。但是很难测试。 Excel不会让我删除或添加任何属性,它只是将连接字符串返回到编辑前的状态。我的Excel连接字符串是:
Provider = MSOLAP.6; Integrated Security = SSPI; Persist Security Info = True; Initial Catalog = Cube_Name; Data Source = ServerName; MDX Compatibility = 1; Safety Options = 2; MDX Missing Member Mode = Error
我一直在用砖头撞墙试图解决这个问题。任何想法???