Article image

NM

Natalia Mendes26/06/2024 19:07
Compartilhe

Compreendendo a função RANKX e as suas aplicações

  • #Power BI

· Senários de Aplicação/Tipos de Análises

Em grandes redes de supermercados ou até mesmo empresas que possuem muitas filiais, é primordial entender a posição de determinados produtos para decidir se vale a pena continuar direcionando esforços, recursos ou até mesmo determinar ações para melhorar o desempenho daquele que se apresenta no final do ranking.

Com esta função, conseguimos aprimorar as nossas análises aplicando a vendas de produtos, lojas, regiões, desempenho de funcionários que atingem a meta, dentre outros.

· Compreendendo a Sintaxe da Linguagem

Para darmos os primeiros passos, é necessário compreendermos a sintaxe da função, bem como os parâmetros que ela precisa receber para funcionar corretamente. Para isso, vamos utilizar a base fornecida pelo próprio desenvolver, a Microsoft.

RANKX(<table>, <expression>[, <value>[, <order>[, <ties>]]])

Onde:

Table: É a tabela que você deseja realizar a ordenação do ranking, exemplo, tabela de produtos.

Expression: Medida que contem os valores brutos que queremos análise, exemplo, total faturado.

Value: (opcional) Aqui conseguimos parametrizar um valor específico para ranquear, caso não necessite usar a expressão para todas as linhas da tabela.

Order: (Opcional) Aqui configuramos o tipo de ordenação, por ser opcional, ele assumirá o padrão que é crescente, mas caso queira mudar o comportamento, adota-se 0 para DESC ou 1 para ASC.

Ties: (opcional) Por fim, conseguimos configurar como lidar com valores “empatados”, onde adotamos skip para receberem a mesma classificação e a classificação seguinte pula quantidade de empates ou Dense onde recebe a mesma classificação, mas a seguinte não pula os empates.

· Aplicando a Função em um Dataset

Agora é mão na massa! Utilizei um dataset que usei recentemente para fazer umas análises. Gostaria de analisar a posição de cada produto que essa loja tem em seu portfólio. Na foto a seguir, após incluir os parâmetros obrigatórios, abaixo o resultado:

RankingProd1 = RANKX((Produtos),[Faturamento])

image

É possível identificar que algo não está certo, afinal todos os produtos ficaram na posição 1.

Eu trouxe este contexto, pois na vida real, é realmente assim que acontece. Em quase todas as situações, será necessário irmos mais a fundo na documentação para entender como a linguagem realmente funciona.

Consultando a nossa amiga “documentação” literalmente no rodapé desta sessão, encontrei o seguinte exemplo:

= RANKX(ALL(Products), SUMX(RELATEDTABLE(InternetSales), [SalesAmount]))

Mas por que esse ALL ?

O parâmetro expression avalia individualmente linha por linha, ou seja, ele vai considerar cada produto comparando individualmente o faturamento com ele mesmo. A função ALL faz com que ele olhe para todos os produtos da minha tabela e faça a comparação como deve ser feita.

Abaixo o resultado após a aplicação correta da sintaxe.

RankingProd2 = RANKX(ALL(Produtos),[Faturamento])

image

· Conclusão

Com este artigo concluímos que o uso desta função facilita a visualização dos dados, possibilitando uma tomada de decisão rápida e assertiva.

· ⁣Documentação

Acesso em 26/06/2024: https://learn.microsoft.com/pt-br/dax/rankx-function-dax

Compartilhe
Comentários (0)