Tag: mdx

当在Excel中过滤子成员时,Adventureworks MDX计算不会更新成员

我有一个MDX计算问题。 基本上在立方体中的计算是 [Operating Profit] = [Gross Margin] – [Operating Expenses] 当我使用excel过滤掉[Operating Expenses]子成员时,这个计算不会更新。 例如取消选中[Labor Expenses]营业利润应该改变,但是它保持不变。 我在Excel2013中创build了以下计算成员作为testing,但是这也是静态的。 WITH MEMBER [Account].[Accounts].[Operating Profit Calc] as [Account].[Accounts].&[49] – [Account].[Accounts].&[58] 我已经花了一些时间尝试MDX existing function ,但我无法得到这与[Operating Expenses] (&[58]) member的Descendants [Operating Expenses] (&[58]) member 。 (请下载并更新连接到您当地的AW多维数据集) AdventureWorks例子

使用Powerpivot在Excel中的多维数据集函数在工作表中显示特定的行值

这是一个高度专业化的问题,我search了networking,没有运气的答案无济于事。 我正在使用连接到SQL数据库的Powerpivot来创build本质上与Web应用程序相比较的东西。 我使用cubevalue函数很多来获取工作簿中的总和和其他输出关于特定的查询参数。 我正在寻找一种方式来查询具有某个键值的行,并输出数据库中同一行上的某个不同列的值。 从本质上讲,这就像一个简单的查找,如果我只是从一张纸到另一张纸,并且数据不是很大,它必须存储在powerpivot中。 这里有一点我正在看。 鉴于对applicantid的查询,我想inputlearner_id。 这是我希望能工作,但它给#N / A =CUBEMEMBERPROPERTY("ThisWorkbookDataModel","[MasterStartQuery].[applicantid].[1119195]","[learner_id]") 任何洞察力将超级赞赏,或者如果你知道某人可能知道。 谢谢。

Excel切片器中的SSAS维度安全结果

我在Analysis Services多维数据集中创build了一个angular色(SQL Server 2012),并应用了维度安全性,以便只select其中一个维度属性的成员。 当我使用Excel 2013中的多维数据集和针对某个数据透视表的特定维度属性的切片器时,我只能看到一个项目,这正是我所需要的。 但是,当我单击切片器项目时,数据透视表的值不会更改,它将显示总值而不是为特定维度属性成员过滤的值。 奇怪的是,当我通过浏览多维数据集查看数字,我得到正确的数字,而在Excel切片器,当我点击属性成员,它不会更改数据透视表值。 如果我selectangular色允许的2维属性成员,那么Excel切片器工作得非常好,而且当我单击2维属性成员时,数据透视表值会更改。 我不确定这是否是Excel中的错误,或者在实现所需的function之前还有其他事项需要确定。 谢谢。

Power pivot命名为MDX字段

我在Excel 2013中有一个PowerPivot数据模型。我已经使用MDX将其分组到一个命名集合中,如下所示: {[Measures].[Sum of Value1], [Measures].[Sum of Value2], [Measures].[Sum of Value3]} 通过使用这个命名的Set,我可以在Excel数据透视表的行或列中进行多个度量。 我的问题是,是否有任何方式使用MDX(或PowerPivot屏幕中的DAX在使用各个度量时)根据单个度量值(不pipe该度量是否包含在集合中)过滤或隐藏整个集合? ? 最好,我正在寻找一种方法来做到这一点,而不包括另一个成员(即不是一个措施)。 Ror的例子,如果在上面的例子Value3的总和为零,我希望整个集隐藏数据透视表。 我知道我可以在数据模型中编辑DAX以基于另一个度量值的值返回BLANK()集合中包含的每个度量值,但是可能有些时候我想在所有情况下显示这些度量值。 这就要求我现在每个人至less有两个措施,我不喜欢这样做。 更新: Sourav的答案看起来不错,但不幸的是我不能在我的特定情况下工作,我相信,因为我正在使用“使用MDX创build集”function(在字段,项目和设置function区菜单中的pipe理集选项下) Excel中。 它只会让我写MDX为: IIF([Measures].[Sum of Value3]=0, {}, {[Measures].[Sum of Value1],[Measures].[Sum of Value2],[Measures].[Sum of Value3]}) 一旦我将这个新的集合添加到数据透视表,它仍然会显示[Value3的总和]为0的所有成员的全部3个度量。 我想我将不得不find使用DAX和Excel数据模型度量的方法。 更新2: 下面是帮助说明的截图。 请记住我的示例中的数据源不是外部多维数据集,它只是一个链接到数据模型中的Excel文件,可以运行MDX查询(有限制?)。 在这个例子中,我希望集合只返回行A和C,因为Value3的和不为零。 但是,正如你所看到的,所有的行都被返回。 谢谢!

使用AVERAGE()计算的DAX度量的MDX语法

我在Excel中有以下expression,工作正常。 =CUBESET("ThisWorkbookDataModel", "TopCount( [ProductBV].[Product Name].Children,10, sum( ( [Calendar].[Week Ending].[All].[1/6/2013]:[Calendar].[Week Ending].[All].["&TEXT($E$2,"m/d/yyyy")&"], [ProductBV].[Moderation Status (ALL)].[All].["&$E$3&"] ), [Measures].[Product Review Count] ) )", "Top 10 to date") “产品检查计数”度量使用以下DAX公式。 Product Review Count:=COUNTROWS(ProductBV) 但是,当我将DAX度量更改为使用AVERAGE函数(Product Avg Review)时,CUBESET函数无法正常工作。 它仍然有正确数量的CUBESET中的项目,但是当我使用CUBERANKEDMEMBER(1-10)时,它没有显示出平均评分前10位的产品。 Product Avg Review:=AVERAGE(ProductBV[Rating]) 下面的expression不正确: =CUBESET("ThisWorkbookDataModel", "TopCount( [ProductBV].[Product Name].Children,10, sum( ( [Calendar].[Week Ending].[All].[1/6/2013]:[Calendar].[Week Ending].[All].["&TEXT($E$2,"m/d/yyyy")&"], [ProductBV].[Moderation Status (ALL)].[All].["&$E$3&"] ), [Measures].[Product Avg Review] ) )", "Top 10 […]

如何在MDX计算的度量上使用Excel单元格?

我们正在使用Excel来访问一个SSAS Olap立方体。 我们使用Excel表中定义的一些计算的度量。 在其中之一,我们需要使用在特定单元格上input的用户值。 有点 [Measures].[Sales]*$a$10 我们找不到任何办法。 任何想法? 编辑 : 由于看起来我们找不到解决scheme,我们正在考虑创build一个有效值的新表(这是一个有限的短列表),并将它们用作filter,所以我们可以使用公式中的值。 我无法想象如何做到这一点,因为这将是一个与立方体中任何其他表格无关的表格……这是否有意义? 编辑 :解决,见下文。

在CUBESET函数中使用带有三个参数的EXISTS

这是我现在返回的公式#N/A : =CUBESET("MyConnection","EXISTS([Customers].[Customer Names].MEMBERS,[Date].[Date – Calendar Month].[Calendar Month].&[201312],""CustomerMeasureGroup"")") 如果我将其更改为以下,则它的function正常,但需要使用EXISTS的第三个参数来获取该集合中正确的项目数量: =CUBESET("MyConnection","EXISTS([Customers].[Customer Names].MEMBERS,[Date].[Date – Calendar Month].[Calendar Month].&[201312])")

使用Cubeset创build指定时间段的前10个项目列表

我正在使用Excel 2010在指定的时间段内按销售额创build前10名供应商的列表。 问题是,我只需要考虑属于特定集合的成员的客户。 我发现这篇文章帮助我从所有的客户那里获得销售额的十大供应商,但是我正在为如何总结一个特定集合的成员而苦苦挣扎。 我尝试了注释中页面下方的Sum / CrossJoin示例,但是我无法使其工作。 这可能是因为我对此很新,只是不明白哪些部分需要去哪里。 这是我到目前为止(我的连接名称在单元格M1): 所有客户(完美的作品): =CUBESET($M$1, "TopCount( [Product].[Brand].Children, 10, Sum( [Time].[Calendar].[Calendar Month].&[2011]&[8], [Measures].[Revenue] ) )", "Top 10 Brands" ) 客户子集(似乎返回正确的集合): =CUBESET($M$1, "Intersect( Intersect( exists( [Customer].[Cust Num].Members, {[Customer].[Is Internal].&[False],[Customer].[Is Internal].[All].UNKNOWNMEMBER} ), exists( [Customer].[Cust Num].Members, [Customer].[Type].&[CAT] ), ALL ), exists( [Customer].[Cust Num].Members, [Market].[Market ID].[All].Children – [Market].[Market ID].&[3] – [Market].[Market ID].&[4] ), ALL […]

Excel中OLAP SSAS Cube Pivot Tables的替代scheme

我正在使用Excel 2007数据透视表访问2005 SQL Server上的OLAP SSAS多维数据集,并发现刷新某些表需要超过10分钟。 我的同事似乎认为这是一个可悲的现实,但我想知道是否有其他select,我应该看看。 我有一些想法: 显然,如果我可以升级服务器硬件,但我只是一个没有这种能力的分析师,所以我不认为硬件改进是一个很好的select。 迁移到一个更新的SQL服务器也是如此,我想这也会加快这个过程。 更新到更新版本的Excel会加快这个过程吗? 我遇到了这个问题: http : //olappivotextendtend.codeplex.com/ ,它让我能够访问MDX,这显然是无效的(听起来像VBA的macroslogging器),所以将改变MDX(我知道一点点,它给了数据透视表的查询似乎并不复杂)是一个选项? 在excel之外运行MDX是一个select吗? 我可以写查询,但我想它不会像数据透视表一样简单。 看起来OLAP Cubes在许多方面都是一个很好的解决scheme,而这些是一些大规模的数据透视表处理相当多的信息,但如果有一个合理的方法来加速整个过程,我想知道更多关于它。 感谢您的想法。