伙计,
我有一个相当简单的多维多维数据集,具有7个维度,几乎没有度量。
我的问题与我如何在多维数据集(SSAS项目)中的成员计算级别上定义一些逻辑,该逻辑将允许我在Axis(0)中进行度量以吐出一个相对于轴(1)上的集合中定义的成员的位置。
为此,在查询多维数据集时,我定义了查询范围内的计算成员,这些成员利用Axis()函数来确定在Axis(1)上定义的属性的顺序。这样,无需显式引用报告用户将尝试使用的实际属性来分析数据,就可以计算行级百分比。
为了使声音听起来不像单词沙拉,我给照片附加了一些非常简单的示例数据。
就快速描述数据而言,我有两套:[x]和[y]。我对它们执行交叉连接。第三列[度量]仅包含[x]和[y]乘积中每个单元格的整数值。我已将叶级数据点涂成粉红色。
我需要有一个逻辑使我可以计算最后一列[总计百分比,按第一个属性分组],而无需定义试图明确引用属性[x]或[y]的成员直到报表用户在OLAP工具中选择多维数据集之后,方可知道多维数据集中的许多层次结构及其顺序。
这里是输出的外观示例(请特别注意最后两列)IF而不是选择顺序[x]和[y],[y]和[x] 。
最后我要说的是,我能够使用上述Axis()逻辑(无需引用[x]或[y]列)在SSMS中针对多维数据集对自己运行查询,但只要我尝试将逻辑移到实际的多维数据集计算中,并尝试通过Excel或PowerView访问该多维数据集,但出现错误,表明...“ Axis函数是从SELECT以外的语句上下文间接引用的。仅当由SELECT语句间接触发时,涉及此函数的表达式才会成功。”
感谢所有阅读的人,如果不清楚,请发表评论!