O guia DAX definitivo para iniciantes

O guia DAX definitivo para iniciantes

O terceiro pilar no desenvolvimento do LuckyTemplates são os cálculos DAX. Este tutorial contém um guia DAX completo para iniciantes, abrangendo o básico sobre formatação e edição. As funções DAX usadas com frequência também estão incluídas na discussão.

Índice

Guia do Editor DAX

Antes de mais nada, aqui estão algumas dicas do DAX Editor que você precisa saber:

Use Ctrl + roda de rolagem do mouse para aumentar ou diminuir o tamanho da fonte na janela do Editor DAX.

O guia DAX definitivo para iniciantes

Use Ctrl + Shift + L para atualizar todas as instâncias de um nome de uma só vez.

O guia DAX definitivo para iniciantes

Adicione o prefixo “ @ ” a tabelas virtuais ou nomes de colunas temporárias no DAX.

O guia DAX definitivo para iniciantes

Guia DAX para formatação

Seu código DAX precisa ser organizado e facilmente compreensível para os usuários.

Você não está apenas escrevendo código para si mesmo hoje, mas também para si mesmo no futuro.

É importante desenvolver códigos DAX que sejam facilmente legíveis e compreensíveis por você e por outras pessoas, agora e posteriormente.

Não se preocupe se editar e organizar pode acabar arruinando seu código. Os computadores são inteligentes; contanto que a sintaxe esteja correta, eles poderão interpretar e executar os códigos que você escreveu.

Uma ótima citação de Marco Russo diz:

Se não estiver formatado, não é DAX.

Há várias maneiras de formatar o DAX. A opção recomendada é usar a DAX Clean Up Tool disponível no LuckyTemplates Analyst Hub.

O guia DAX definitivo para iniciantes

Você pode acessar esta ferramenta através deste . Outra maneira é acessar o site LuckyTemplates e selecionar Recursos. Na parte inferior da página, você encontrará a DAX Clean Up Tool.

Para usar essa ferramenta, copie seu código do DAX Editor em seu arquivo do LuckyTemplates. Cole-o na DAX Clean Up Tool e clique em Formatar.

O guia DAX definitivo para iniciantes

Depois que a limpeza for concluída, você poderá colar o código formatado de volta no arquivo do LuckyTemplates.

O guia DAX definitivo para iniciantes

Você também pode editar o código na ferramenta.

Comentando em um código DAX

Ao lidar com códigos DAX complexos, é uma boa prática adicionar comentários. Você se beneficiará muito com uma explicação em pseudocódigo. Mas há exceções.

Comentar é uma atividade muito pessoal. Pode haver opiniões variadas sobre o nível certo de comentários de desenvolvedores e usuários. Novamente, ao criar códigos e comentários, é importante levar em consideração como eles serão aceitos e compreendidos por usuários ou desenvolvedores em instâncias futuras. Isso beneficiará muito você e a empresa a longo prazo.

Guia DAX para variáveis

Use nomes de variáveis ​​detalhados. A chave é clareza . É importante criar nomes claros e facilmente compreensíveis.

Mais uma vez, os computadores são inteligentes e podem descobrir facilmente o que está sendo escrito. Portanto, lembre-se de que você não está escrevendo para o computador ou para o LuckyTemplates; você está escrevendo para si mesmo e para quem usará e manterá seu código nos próximos meses.

Ao usar variáveis ​​em seu código DAX, é uma prática recomendada usar um prefixo antes de um nome de variável para ajudar a garantir que você escolherá a variável correta nas linhas subsequentes. O sublinhado ( _ ) é um prefixo recomendado para uso. Isso também ajuda a reduzir a lista apresentada no recurso IntelliSense no LuckyTemplates.

Aqui está um exemplo:

O guia DAX definitivo para iniciantes

Você pode ver que quando o sublinhado é digitado, apenas duas opções são apresentadas. O número de opções é significativamente reduzido, o que melhora a eficiência ao codificar.

Outra prática recomendada é usar a construção RETURN Result .

O guia DAX definitivo para iniciantes

Isso torna mais fácil desenvolver e depurar códigos DAX de forma incremental.

Qualificação de cálculos DAX

Ao usar colunas em expressões DAX, você precisa ser específico porque é possível ter o mesmo nome de coluna em várias tabelas.

Por exemplo, pode ocorrer uma coluna Chave do cliente nas tabelas Clientes e Vendas.

O guia DAX definitivo para iniciantes

Embora muitas vezes signifiquem a mesma coisa e contenham os mesmos dados, esse não será o caso o tempo todo. Para obter os resultados desejados, você deve sempre qualificar os nomes das colunas.

Além disso, você precisa garantir que as medidas não estejam vinculadas a uma tabela. Eles podem ser movidos de uma tabela para outra, portanto, é importante certificar-se de que os nomes das medidas não sejam qualificados.

Funções DAX importantes a saber

1. CALCULAR

é uma das funções DAX mais importantes, pois permite alterar o contexto de um cálculo.

No entanto, esta função muitas vezes causa confusão não porque é difícil de usar, mas sim por causa de seu nome. Mesmo que seja chamado CALCULATE, na verdade não está realizando um cálculo. Em vez disso, está mudando o contexto de um cálculo.

Por exemplo, nesta medida Sales LY, a função CALCULATE é usada para alterar o contexto do cálculo de Total Sales para um ano antes do contexto de avaliação atual.

O guia DAX definitivo para iniciantes

2. DATAADD

Existem muitas funções de inteligência de tempo disponíveis no DAX. Os códigos DAX comuns provavelmente usarão as funções , e entre muitas outras. Mas é uma das funções de inteligência de tempo DAX mais versáteis. E esta função deve ser sua primeira escolha.

Com DATEADD, a mesma sintaxe pode ser usada para vários cálculos, retrocedendo ou avançando no tempo, e para YEAR, QUARTER, MONTH ou DAY. Isso torna muito fácil criar várias medidas de inteligência de tempo usando copiar e colar com pequenas edições.

O guia DAX definitivo para iniciantes

3. DIVIDA

A divisão no LuckyTemplates pode ser feita de várias maneiras. A maneira mais básica é usar a divisão aritmética simples.

O guia DAX definitivo para iniciantes

No entanto, os casos de divisão por zero geralmente requerem testes elaborados antes de prosseguir. Felizmente, há uma função DAX que cuida disso para você.

A função lida automaticamente com casos de divisão por zero e também permite adicionar um resultado alternativo. Como isso é mais simples para a divisão aritmética no LuckyTemplates, o código é mais legível.

O guia DAX definitivo para iniciantes

4. TROCA PARA VERDADEIRO

Outro código DAX é a lógica .

Quando você tem várias condições para avaliar, isso o levará a criar várias instruções aninhadas que geralmente são difíceis de ler e rastrear.

A instrução SWITCH TRUE oferece flexibilidade para modificar o código em uma data posterior e para ajustar as condições às novas. Também é mais compacto, facilitando a leitura.

O guia DAX definitivo para iniciantes

Guia DAX para tabelas virtuais

Ao construir uma tabela virtual em seu código DAX, use a função para agrupar colunas em uma tabela base. Em seguida, cerque-o com a construção para adicionar colunas.

Para reiterar, use o prefixo “ @ ” nas colunas usando a função ADDCOLUMNS para evitar ambigüidade e garantir que a coluna da tabela virtual escolhida esteja correta.

Além disso, ao lidar com tabelas virtuais, é recomendável usar o DAX Studio ou o Tabular Editor para ajudá-lo.

Pode haver muitos relacionamentos entre um par de tabelas no LuckyTemplates. O código DAX usará o relacionamento ativo por padrão. Mas pode ser modificado para usar um relacionamento inativo específico por meio do uso do comando .

Por exemplo, pode haver muitos relacionamentos entre as colunas Date da tabela Dates e a tabela Sales. Vendas [Data do pedido] é o relacionamento ativo, enquanto Vendas [Data da fatura] é o relacionamento inativo. Quando você deseja usar as vendas [data do pedido] em um cálculo, nenhum esforço extra é necessário. No entanto, se você quiser usar as vendas [data da fatura] em um cálculo, precisará usá-lo junto com o comando USERELATIONSHIP .

O guia DAX definitivo para iniciantes

Na exibição do modelo no LuckyTemplates, passar o mouse sobre a linha sólida mostra o relacionamento ativo. Considerando que as duas linhas pontilhadas mostram a relação inativa entre cada elemento nas duas tabelas.

O guia DAX definitivo para iniciantes

Examinando o relatório de amostra, também pode ser visto que há uma diferença entre a coluna Vendas por Data do Pedido, coluna Vendas por Data da Fatura e coluna Vendas por Data de Envio.

O guia DAX definitivo para iniciantes

Medidas Vs Colunas Calculadas

É um lugar de conforto para quem vem de experiência em Excel para usar Colunas Calculadas , pois permite que você veja os dados. Mas a prática recomendada no DAX e no LuckyTemplates é usar Medidas o máximo possível.

Há certos casos em que colunas calculadas são usadas. Eles geralmente são desenvolvidos como ponto de partida para ajudar na visualização de um cálculo. Mas então, você precisa substituí-los posteriormente por medidas depois de ter o cálculo totalmente visualizado em sua cabeça. Além disso, as colunas calculadas podem ser usadas em segmentações em contraste com as medidas.

Uma medida não aumenta o tamanho físico do seu modelo de dados à medida que é calculada; ele só faz quando usado em um visual. Uma coluna calculada, no entanto, aumenta o tamanho físico de seu modelo de dados porque é calculada e armazenada fisicamente cada vez que o arquivo é atualizado.

Guia DAX para medir a ramificação

Uma das técnicas mais valiosas no LuckyTemplates é a ramificação de medida .

Uma ótima maneira de modularizar seu código é começar com medidas simples ou básicas que executam cálculos simples e depois combiná-las conforme necessário para realizar cálculos mais complexos. Coloque medidas básicas e intermediárias em tabelas para ver os cálculos à medida que são executados.

Existem diferentes escolas de pensamento sobre onde medidas específicas devem residir, e há prós e contras para todos os métodos. Mas é mais vantajoso usar um grupo de medidas dedicado no desenvolvimento do LuckyTemplates. Se todas as medidas estiverem localizadas no mesmo local na parte superior do painel Campos, será mais fácil rastrear a lógica em seus cálculos DAX.

O guia DAX definitivo para iniciantes

Contexto em cálculos DAX

Um dos principais pontos fortes do LuckyTemplates é o contexto. E também é um dos conceitos mais difíceis de entender para os desenvolvedores.

Contexto é o ambiente no qual um cálculo é executado.

Dois contextos são freqüentemente apresentados: contexto de linha e contexto de filtro . Mas, na verdade, existe um terceiro: o contexto da avaliação .

E isso o traz de volta ao comando CALCULATE , que novamente permite ao usuário alterar o contexto de um cálculo. Existem duas classes principais de funções no DAX e no LuckyTemplates: funções de agregação e funções de iteração .

As funções de agregação são aquelas que agregam os valores de uma única coluna. Exemplos de funções de agregação incluem , e . Embora a maioria das funções de agregação funcione apenas em valores numéricos ou de data, MAX e MIN também funcionam em valores de texto.

As funções de iteração são aquelas que calculam uma expressão para cada linha de uma tabela. Eles também são conhecidos como funções X. Os exemplos incluem , , e . Eles têm dois parâmetros: a tabela para iterar e a expressão que executa o cálculo. Isso pode usar várias colunas da tabela base ou de outras tabelas relacionadas.

Aqui está um breve exemplo de como as funções de agregação e iteração são usadas de forma diferente e ainda fornecem o mesmo resultado:

O guia DAX definitivo para iniciantes

Conclusão

Este guia DAX tem como objetivo auxiliar novos usuários do LuckyTemplates que ainda estão explorando e aprendendo. Isso também é muito útil como uma lista de verificação completa para desenvolvedores experientes que precisam de um curso rápido de atualização. Este tutorial é um excelente bloco de construção para o desenvolvimento avançado de relatórios no LuckyTemplates.

LuckyTemplates tem vários recursos em tutoriais DAX desde o básico até a codificação avançada. Certifique-se de dar uma olhada neles para se familiarizar mais com a linguagem de programação DAX.

grego


O que é self em Python: exemplos do mundo real

O que é self em Python: exemplos do mundo real

O que é self em Python: exemplos do mundo real

Como salvar e carregar um arquivo RDS em R

Como salvar e carregar um arquivo RDS em R

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.

Primeiros N dias úteis revisitados - uma solução de linguagem de codificação DAX

Primeiros N dias úteis revisitados - uma solução de linguagem de codificação DAX

Neste tutorial de linguagem de codificação DAX, aprenda como usar a função GENERATE e como alterar um título de medida dinamicamente.

Apresentar insights usando a técnica de visuais dinâmicos multithread no LuckyTemplates

Apresentar insights usando a técnica de visuais dinâmicos multithread no LuckyTemplates

Este tutorial abordará como usar a técnica Multi Threaded Dynamic Visuals para criar insights de visualizações de dados dinâmicos em seus relatórios.

Introdução ao contexto de filtro no LuckyTemplates

Introdução ao contexto de filtro no LuckyTemplates

Neste artigo, analisarei o contexto do filtro. O contexto do filtro é um dos principais tópicos sobre os quais qualquer usuário do LuckyTemplates deve aprender inicialmente.

Melhores dicas para usar os aplicativos no serviço online do LuckyTemplates

Melhores dicas para usar os aplicativos no serviço online do LuckyTemplates

Quero mostrar como o serviço online do LuckyTemplates Apps pode ajudar no gerenciamento de diferentes relatórios e insights gerados de várias fontes.

Analisar alterações de margem de lucro ao longo do tempo – Analytics com LuckyTemplates e DAX

Analisar alterações de margem de lucro ao longo do tempo – Analytics com LuckyTemplates e DAX

Aprenda a calcular suas alterações de margem de lucro usando técnicas como ramificação de medida e combinação de fórmulas DAX no LuckyTemplates.

Ideias de materialização para caches de dados no DAX Studio

Ideias de materialização para caches de dados no DAX Studio

Este tutorial discutirá sobre as ideias de materialização de caches de dados e como elas afetam o desempenho dos DAXs no fornecimento de resultados.

Relatórios de negócios usando o LuckyTemplates

Relatórios de negócios usando o LuckyTemplates

Se você ainda estiver usando o Excel até agora, este é o melhor momento para começar a usar o LuckyTemplates para suas necessidades de relatórios de negócios.

O que é o Gateway do LuckyTemplates? Tudo o que você precisa saber

O que é o Gateway do LuckyTemplates? Tudo o que você precisa saber

O que é o Gateway do LuckyTemplates? Tudo o que você precisa saber