SSAS在多重度量和维度方面的排名

SSAS在多重度量和维度方面的排名,ssas,ranking,rank,Ssas,Ranking,Rank,我的报告中有一个排名栏 秩列后面的逻辑基于度量值(计数或求和)和三维 例如, 我必须显示一个基于度量值(总客户数)的排名 所选公司(将作为报告的参数,依次为 维度)基于期间(可以是任何一年、半年、, 季度、月度)和产品组 甚至可以从报告中选择度量值作为参数,这使得事情变得复杂 我怎样才能做到这一点 我想我可以使用SSAS的秩函数作为计算字段和顺序 但是,我们可以创建一个秩函数而不必硬编码度量或维度吗 我将通过创建一个存储过程来为我的报告返回数据来处理这个问题 存储过程将使用报表参数构建MDX字

我的报告中有一个排名栏

秩列后面的逻辑基于度量值(计数或求和)和三维

例如,

我必须显示一个基于度量值(总客户数)的排名 所选公司(将作为报告的参数,依次为 维度)基于期间(可以是任何一年、半年、, 季度、月度)和产品组

甚至可以从报告中选择度量值作为参数,这使得事情变得复杂

我怎样才能做到这一点

我想我可以使用SSAS的秩函数作为计算字段和顺序


但是,我们可以创建一个秩函数而不必硬编码度量或维度吗

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

存储过程将使用报表参数构建MDX字符串,并使用OPENQUERY()在SSAS服务器上执行它。MDX只需获取报表在列上的排名依据,然后在行上获取时段和产品组

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