Colunas calculadas no SharePoint | Uma visão geral
Descubra a importância das colunas calculadas no SharePoint e como elas podem realizar cálculos automáticos e obtenção de dados em suas listas.
Neste tutorial, falarei sobre como usar variáveis fictícias para escrever medidas DAX melhores. Isso é especialmente aplicável nos casos em que é necessário um DAX mais complexo. Usando esta técnica, você pode ser mais flexível ao lidar com diferentes variáveis e condicionais. Você pode assistir ao vídeo completo deste tutorial na parte inferior deste blog.
Decidi fazer este tutorial por causa de uma pergunta que encontrei no .
Com base nessa pergunta, Harvey queria combinar uma análise de Pareto com alguns critérios adicionais. Ele queria observar os 20% principais da classificação de vendas e, ao mesmo tempo, observar sua interseção com outros produtos que tinham margens acima de uma determinada porcentagem.
Índice
Solução de rascunho para classificação de vendas e corte de margem de lucro
Com base nos requisitos mencionados por Harvey, criei um rascunho de solução que possui controles deslizantes para a classificação de vendas e o corte de margem de lucro .
Dependendo dos parâmetros que você definir nesses controles deslizantes, a visualização de dispersão mostrará os produtos que atendem a ambos os critérios .
Digamos que o Posto de Vendas seja A e a Margem de Lucro seja B . Isso basicamente mostra uma condição . Isso requer medidas DAX relativamente padrão. Eles são mostrados aqui no painel direito em medidas, onde tenho o Sales Rank , que usa um básico . Também tenho custos totais, lucros totais e outras variáveis que obtêm seus valores dos controles deslizantes.
Usando variáveis fictícias para condições AND
Quanto à condição AND , é essa medida que faz o trabalho pesado.
Há algumas coisas interessantes que você pode notar nesta medida. Basicamente, esses condicionais são normalmente usados em um critério / . Mas, em vez de fazer isso, usei o que chamo de variáveis fictícias, nas quais, se a condição for VERDADEIRA, obtém 1. Se for FALSA, obtém 0.
Portanto, esta medida mostra que , se a classificação de vendas for menor ou igual ao corte da classificação de vendas, ela recebe 1. Se a margem de lucro for maior que a margem de lucro, ela recebe 1. Caso contrário, eles obtêm zero.
Essa abordagem é muito comum em análises estatísticas e de regressão, mas também pode ser útil quando se trata de DAX.
Usei essa abordagem porque preciso desses valores para a próxima parte, onde combino essas duas variáveis multiplicando-as .
Depois que as duas variáveis fictícias Rnk e Marg forem combinadas, posso passar para a próxima parte da medida. Se esse valor combinado for maior que zero, atribuí a cor vermelha. Se não for, é atribuída a cor azul.
Usando variáveis fictícias para condições OR
E se você quiser usar essa abordagem em uma condição ?
Você pode usar o mesmo processo, mas quando se trata da etapa em que combina as variáveis, use um sinal de mais em vez de um asterisco .
Portanto, uma condição AND exigiria um asterisco como este:
Uma condição OU exigiria um sinal de mais como este:
Depois de clicar em aceitar, ele aplicará essas condições no gráfico de dispersão. Os produtos que atendem a essas condições definidas aparecerão como esses pontos vermelhos aqui.
Por que as variáveis fictícias funcionam
Se você está se perguntando por que essas variáveis fictícias funcionam, tenho alguns diagramas aqui que podem ajudar.
Vamos começar com a condição AND .
AND implica que ambas ou todas as condições são VERDADEIRAS. Isso é caracterizado pela multiplicação. Uma vez multiplicada, qualquer condição FALSE define o termo inteiro como 0. Portanto, se você tiver duas variáveis, A e B, e ambas forem verdadeiras, isso daria um produto de 1, que retornará um TRUE.
Mas se A for igual a zero ou B for igual a zero, você obtém três condições em que todo o termo terminará em zero. Esse é o cruzamento.
Se observarmos a condição OR, por outro lado, isso significa que uma ou qualquer uma das condições é VERDADEIRA. Em vez de multiplicação, isso requer adição. Portanto, nenhum conjunto FALSE único resultará em 0, mas, desde que qualquer condição seja verdadeira, ela incrementa essa condição em 1.
Portanto, no diagrama para a condição OR, se A e B forem TRUE, o termo receberá um 2. Se A for falso, mas B for true, obterá um 1. O inverso também obterá um 1, enquanto você obterá apenas um 0 se ambas as condições forem falsas.
Onde variáveis fictícias são úteis
Evidentemente, você pode usar condições básicas AND ou OR para casos simples. No entanto, eles não funcionarão tão bem quando se trata de casos mais complexos. Aqui está um exemplo.
Este caso mostra sete variáveis. A combinação de A, B e C é VERDADEIRA. Assim como as combinações de D e E ou F e G.
Se você escrevesse uma medida DAX para essa condição, pode imaginar como isso seria demorado e confuso. Mas se você aplicar variáveis fictícias, poderá torná-lo muito mais simples. Você só precisa substituir esses operadores para obter a fórmula mais simples.
A partir daí, você usa a condição de que se o resultado for maior que 0, isso seria VERDADEIRO. Se for igual a 0, você obtém um FALSO.
Vamos voltar ao arquivo do LuckyTemplates para ver como isso funciona em um relatório real.
Portanto, neste caso, os pontos vermelhos mostram uma instância em que ambas as condições são verdadeiras, enquanto os pontos roxos mostram que apenas uma condição é verdadeira.
Indo para a medida, você verá as variáveis fictícias Rnk e Marg onde temos uma condição OR conforme mostrado pelo sinal de mais .
Então, você também verá que sob a construção TRUE , você tem um 2 resultando em vermelho, o que significa que você tem duas declarações TRUE . Se uma das afirmações for verdadeira, ela fica roxa. Se nenhuma for verdadeira, isso resultará em 0, que mostrará pontos azuis.
Isso corresponde diretamente à matriz do diagrama OR de que falamos anteriormente.
Voltando à nossa última condição, podemos ver o que acontece se quisermos olhar para dois conjuntos de outliers. Basicamente, se quisermos ver o que atende às condições A e B, os dois pontos aqui que representam os produtos 4 e 15 atendem a esses critérios.
Por outro lado, você também pode observar o outlier inferior, que é o Produto 1.
Lembre-se também que todo este relatório é dinâmico. Portanto, quanto mais você mover seus controles deslizantes, mais pontos poderá ver.
Observando a medida abaixo, ela mostra o caso final do qual falamos, onde você tem quatro variáveis fictícias — a classificação superior (TopRnk), os valores maiores ou iguais à margem (GTEMarg), a classificação inferior (BotRank) e a menor ou igual à margem (LEMar).
Olhando para o valor combinado, multiplicamos o TopRnk e o GTEMarg e, em seguida, adicionamos isso ao produto do BotRank e LEMarg.
Se qualquer uma dessas condições retornar como TRUE, isso mostrará um ponto vermelho no gráfico. Caso contrário, mostraria um ponto azul.
Usando DAX avançado para várias instruções IF no LuckyTemplates
Como usar SWITCH True Logic no LuckyTemplates
Funções DAX no LuckyTemplates: usando iteradores
Conclusão
Usando e combinando essas variáveis fictícias, você pode obter os resultados desejados usando medidas simples em comparação com as medidas DAX complicadas usuais exigidas pelas medidas textuais TRUE/FALSE.
Comece a tentar essa abordagem em outros relatórios que você usou condições TRUE ou FALSE no passado e veja como isso afeta suas medidas conforme você torna as condições mais complicadas.
Tudo de bom,
Descubra a importância das colunas calculadas no SharePoint e como elas podem realizar cálculos automáticos e obtenção de dados em suas listas.
Descubra todos os atributos pré-atentivos e saiba como isso pode impactar significativamente seu relatório do LuckyTemplates
Aprenda a contar o número total de dias em que você não tinha estoque por meio dessa técnica eficaz de gerenciamento de inventário do LuckyTemplates.
Saiba mais sobre as exibições de gerenciamento dinâmico (DMV) no DAX Studio e como usá-las para carregar conjuntos de dados diretamente no LuckyTemplates.
Este tutorial irá discutir sobre Variáveis e Expressões dentro do Editor do Power Query, destacando a importância de variáveis M e sua sintaxe.
Aprenda a calcular a diferença em dias entre compras usando DAX no LuckyTemplates com este guia completo.
Calcular uma média no LuckyTemplates envolve técnicas DAX para obter dados precisos em relatórios de negócios.
O que é self em Python: exemplos do mundo real
Você aprenderá como salvar e carregar objetos de um arquivo .rds no R. Este blog também abordará como importar objetos do R para o LuckyTemplates.
Neste tutorial de linguagem de codificação DAX, aprenda como usar a função GENERATE e como alterar um título de medida dinamicamente.