Visual studio 2015 在Visual Studio-SSAS中创建自定义维度属性

Visual studio 2015 在Visual Studio-SSAS中创建自定义维度属性,visual-studio-2015,ssas,mdx,olap,cube,Visual Studio 2015,Ssas,Mdx,Olap,Cube,我正在使用Visual Studio 2015创建一个多维数据集,我想以不同的方式对其进行探索。此外,我想使用一个报告工具,比如PowerBi(不幸的是,没有其他工具),所以我不能直接用实时连接公开命名集 我想找到一种使用计算创建自定义维度属性的方法,聚合处理特定约束的所有属性。 例如,我创建了几个计算度量值,并创建了一个命名集(使用标志度量值作为视觉过滤器间接暴露给PowerBi),其中包括基于每个计算的特定度量值的维度的所有属性 CREATE DYNAMIC SET CURRENTCUBE.

我正在使用Visual Studio 2015创建一个多维数据集,我想以不同的方式对其进行探索。此外,我想使用一个报告工具,比如PowerBi(不幸的是,没有其他工具),所以我不能直接用实时连接公开命名集

我想找到一种使用计算创建自定义维度属性的方法,聚合处理特定约束的所有属性。 例如,我创建了几个计算度量值,并创建了一个命名集(使用标志度量值作为视觉过滤器间接暴露给PowerBi),其中包括基于每个计算的特定度量值的维度的所有属性

CREATE DYNAMIC SET CURRENTCUBE.[TopX]
AS TopCount([Dim].[Dim].[All].CHILDREN, X, [Measures].[CalcMeasure]);
它是有效的。现在我想了解如何获得名为“GTTopX”的属性维度,知道我可以使用MDX命令构建它

CREATE MEMBER CURRENTCUBE.[Dim].[Dim].GTTopX
AS (AGGREGATE({EXCEPT([Dim].[Dim].[All].CHILDREN, TopX)})), 
VISIBLE = 1  ;
这不是一个维度吗?我只能在Visual Studio中将其用作“相等”筛选器,当我尝试在浏览器中包含度量值时,会显示以下错误消息:

遇到无法包含计算成员的集合

但是,如果我尝试使用SSMS直接查询多维数据集,然后以这种方式执行select,那么

WITH MEMBER [Dim].[Dim].[GTTopX] AS
AGGREGATE(EXCEPT([Dim].[Dim].[All].Children, [TopX]))
SELECT [Measures].[CalcMeasureRandom] ON ROWS, [Dim].[Dim].[GTTopX] ON COLUMNS FROM [Cube]
查询给出了正确的结果,显示了被称为“GTTopX”的所选“维度属性”


如何在Visual Studio中执行相同的操作?

这不是一个维度,您只需通过
聚合创建一个计算成员
[Dim].[Dim].[GTTopX]
,它将是现有维度的一部分。好的,但我想在Power Bi中显示这个特定维度属性,就像使用MDX查询一样。我怎么做?如果包含在新的命名集中,则它可以工作,但“GTTopX”不会在Power Bi中显示为附加维度。它不是维度,您只需通过
聚合创建一个计算成员
[Dim].[Dim].[GTTopX]
,它将成为现有维度的一部分。确定,但我想在Power Bi中显示这个特定的维度属性,就像使用MDX查询一样。我怎么做?如果包含在一个新的命名集合中,它可以工作,但“GTTopX”在Power Bi中不会作为附加维度出现。