Consulta MDX para RANK, independentemente da hierarquia

10

Espero adicionar um cálculo ao meu SSAS Cube (SSAS 2012) que mostre a classificação relativa de qualquer membro atual contra todos os outros membros dessa garoupa, sem especificar antecipadamente os agrupadores .

Por exemplo, digamos que eu já tenha um cálculo Efficiencydefinido como $$ / hora.

Gostaria de adicionar também um Efficiency Rankcálculo que me diga qual a posição relativa que o membro atual tem nele.

A sintaxe que tentei foi

RANK([Measures].[Efficiency].CurrentMember, [Measures].[Efficiency])

O que eu percebo está incorreto.

Parece que não consigo localizar um guia para isso em nenhum outro lugar, então espero que exista alguma prática recomendada ou padrão para isso, pois parece ser um requisito comercial relativamente comum.

JNK
fonte

Respostas:

4

Por favor, explique com mais detalhes o que você quer dizer com "garoupas"?

Por exemplo, se você deseja classificar um membro em um conjunto, é necessário informar ao SSAS qual é o conjunto em que você está classificando.

RANK( Tuple, Set, Measure to rank by)

então

RANK( Machines.Machines.CurrentMember, Machines.Machines.AllMembers, Measures.Efficiency)

Agora, acho que o que você está tentando fazer é que todos os membros sejam dinâmicos?

A pergunta é "Como você especificaria o membro atual e o conjunto?"

E aqui está um exemplo: a ferramenta de front-end que você está usando também fará a diferença aqui

MarkGStacey
fonte
Este é um bom começo, obrigado! O front end será uma tabela dinâmica do Excel ou relatórios SSRS.
JNK