2016-02-26 75 views
0

我在报告中有一个排名列。SSAS关于多种度量和维度的排名

rank列背后的逻辑基于Measure值(计数或总和)并基于三维。

例如,

我已经表现出 选择公司的基于度量值的秩(客户总数)(这将是该报告,参数,进而 一(可以是任何年份,每半年, 季度,月度)和一个产品组

即使测量值可以从报告中选择作为一个参数,使事情变得复杂。

我该如何做到这一点?

我想我可以使用SSAS的RANK函数计算字段以及ORDER。

但是我们可以创建一个RANK函数而不用硬编码度量或维度吗?

回答

0

我会通过创建一个存储过程来为我的报告返回数据来处理这个问题。

存储过程将使用报表参数来构建MDX字符串,并使用OPENQUERY()在SSAS服务器上执行它。 MDX只需获取报告按列排序的度量值,然后按行排序期间和产品组。

在存储过程中执行MDX,将结果存储在一个临时表中,然后使用ROW_NUMBER()或RANK()函数将SELECT从临时表中添加到输出中。

相关问题