Assuntos relacionados a criação de medidas, fórmulas e funções DAX, relacionamentos etc
Por renmello 21 Ago 2020 às 11:00
Membro Novato
Mensagens: 4
Reputação: 0
#58097
Olá, bom dia a todos! Essa é minha primeira participação no fórum, tenho muitas dúvidas e pouca experiência em DAX e power bi, então já peço desculpas por perguntas ou erros bobos, rs. Mas vamos lá:

Eu criei uma medida que me traz o % de execução financeira dos projetos e gostaria de contar, dentro dessa medida, quantos projetos estão abaixo de 30% de execução financeira, quantos projetos estão entre 30 e 50% e quantos projetos estão acima de 80% de execução financeira.

A tabela que eu to usando e sua respectiva medida são essas:

% Executada Cronograma = if(sum(Tarefas[Custo Atual])=0,Blank(),DIVIDE(SUM('Tarefas'[Realizado]),SUM(Tarefas[Custo Atual]),0))


Imagem


Gostaria de contar a quantidade de valores dessa medida que estão entre as condições que eu falei. Já tentei calculate, filter, counta, countx, summarize (acho que não aprendi como usar essa ainda), rs. Já fiz uma medida que aplica 1 para valores abaixo de 30% e 0 para os outros valores, para tentar somar depois, mas não consegui. Todas as minhas tentativas o retorno da quantidade é sempre 1, e em outras tentativas diz que a função não trabalha com valores booleanos.

Enfim... é isso. Obrigado pela ajuda desde já! Espero contribuir também em outros tópicos.
Por renmello 21 Ago 2020 às 14:21
Membro Novato
Mensagens: 4
Reputação: 0
#58102
Descobri onde estava errando!

Eu tinha uma tabela para as medidas e uma tabela para os projetos. A minha medida usando countx estava contando na tabela de medidas ao invés da tabela de projetos. A medida que eu estava usando era essa:


Qtde <30 = Countax(Filter('Medidas Financeiras','Medidas Financeiras'[% Executada Cronograma]<0.3),'Medidas Financeiras'[% Executada Cronograma])

A nova é:

Qtde <30 = Countax(Filter('Projetos','Medidas Financeiras'[% Executada Cronograma]<0.3),'Medidas Financeiras'[% Executada Cronograma])

Corrigindo isso foi possível usar Countx com Filter.


Depois escrevi as medidas para contar as outras condições:

Qtde entre 30 e 50 = Countax(Filter(projetos,'Medidas Financeiras'[% Executada Cronograma]>=.3 && 'Medidas Financeiras'[% Executada Cronograma]<=0.5),'Medidas Financeiras'[% Executada Cronograma])

Qtde entre 50 e 80 = Countax(Filter(projetos,'Medidas Financeiras'[% Executada Cronograma]>=.5 && 'Medidas Financeiras'[% Executada Cronograma]<=0.8),'Medidas Financeiras'[% Executada Cronograma])

Qtde Maior que 80 = Countax(Filter(projetos,'Medidas Financeiras'[% Executada Cronograma]>0.8),'Medidas Financeiras'[% Executada Cronograma])

Existe uma maneira mais inteligente para contar entre esses valores? Obrigado pela atenção!