Como usar uma função de iteração no LuckyTemplates

Este tutorial ensinará sobre diferentes funções de iteração e como usá-las com eficiência em seus cálculos.

Costumo discutir como as colunas calculadas não são necessárias ao fazer alguns cálculos. Isso ocorre por causa dos iteradores.

Iteradores ou funções de iteração podem ajudá-lo a fazer um cálculo sem colocar fisicamente os resultados na tabela.

Essa técnica pode ajudá-lo a economizar a memória necessária para carregar seu modelo de dados do LuckyTemplates . Nas próximas seções, mostrarei como otimizar seus cálculos usando iteradores.

Índice

Calculando o total de vendas usando uma função iteradora

Para começar, crie uma nova medida para Total Costs . Certifique-se de selecionar o grupo de medidas onde deseja que essa nova medida seja colocada.

Pressione Shift e Enter para descer uma linha antes de colocar a primeira função de iteração, que é .

Na barra de fórmulas do LuckyTemplates, você já consegue ver exatamente o que precisa colocar depois da função conforme sugerido pelo IntelliSense. Para SUMX , você precisa adicionar uma tabela depois dela.

A fórmula SUMX executará a lógica em cada linha da tabela fornecida. É por isso que os iteradores estão associados ao contexto de linha . Dentro da medida, os iteradores podem transformar a fórmula em um contexto de linha.

Você precisará referenciar a tabela Sales após a função SUMX . Para calcular os custos totais, você deve multiplicar a Quantidade do Pedido pelo Custo Unitário Total .

Não precisamos referenciar a nova coluna que foi criada. Os custos totais são uma medida e posso trazê-los para a minha tabela para avaliar nossos custos totais.

Agora, arraste a medida dentro da tabela para ver os resultados. Certifique-se de ter selecionado um contexto inicial no filtro Cidade .

Podemos alterar o contexto inicial do nosso cálculo clicando nas diferentes regiões que queremos ver.

O Total Costs funciona de forma semelhante em termos de contexto inicial. O contexto inicial é aplicado à tabela Vendas, mas, em cada um desses resultados individuais, calculamos a Quantidade do pedido multiplicada pelo Custo unitário total.

Nos bastidores de nosso modelo de dados, ativamos nosso filtro e temos o contexto vindo de nossa tabela Regiões e outro contexto vindo de nossa tabela Data. Eles fluem para nossa tabela Sales, que é filtrada pela função de iteração SUMX.

Como a função SUMX avalia virtualmente cada linha da tabela Sales , não há necessidade de uma coluna física para os resultados.

Após o contexto inicial, a SUMX obtém o produto da Quantidade do Pedido e do Custo Unitário Total para cada linha. Por fim, avalia todos os resultados calculados de todas as linhas.

Se você percebeu, a coluna Custos original foi criada através de uma coluna calculada. Como eu disse, é desnecessário, pois os iteradores já podem fazer seu trabalho. Você pode excluí-lo porque pode ocupar memória desnecessária em seu modelo.

As fórmulas de iteração executam avaliações em cada linha, enquanto as fórmulas de agregação não.

Este é um exemplo simples, mas você pode ser mais avançado aqui e escrever instruções IF e SWITCH. Além disso, você não precisa criar uma tabela física; você pode usar um virtual em seu lugar.

Muitas dessas informações são abordadas em profundidade no curso Mastering DAX , mas isso é apenas para mostrar o início das funções de iteração e como começar a usá-las quando for apropriado.

Se você sentir a necessidade de criar uma coluna calculada dentro de sua tabela de fatos, posso quase garantir que uma função de iteração fará o trabalho para você.

Usando outras funções do DAX Iterator

Agora, mostrarei outro exemplo de como os iteradores podem fazer maravilhas em seus cálculos. Desta vez, vamos calcular o custo médio.

Basta copiar a fórmula Custos totais e colá-la em uma nova medida. Você só precisa mudar o nome para Average Costs e usar em vez de SUMX .

A nova fórmula executa uma lógica semelhante porque avalia cada linha da tabela Sales . Além disso, você ainda precisa obter o produto Quantidade do pedido e Custo unitário total . A única diferença aqui é em vez de soma, a fórmula calcula a média.

Agora, se você trouxer a medida Custos médios para a tabela, poderá ver como ela se compara à medida Custos totais .

É incrível como você pode executar uma lógica semelhante apenas alterando a função de iteração.

Técnicas adicionais de otimização de dados 

Para otimizar sua tabela, você pode excluir informações redundantes como a coluna Total Revenue .

Como você pode obter facilmente os custos médios, não precisará mais da coluna Receita total em sua tabela. Contanto que você tenha as colunas Preço unitário e Custo unitário total , está tudo bem.

Agora, você pode criar uma nova medida para Total Sales (Iteração) usando a função SUMX . Você só precisa fazer referência à tabela de vendas e obter o produto da quantidade do pedido e do preço unitário .

Depois disso, você pode comparar os resultados nas colunas Total Sales e Total Sales (Iteration) . Ambos têm os mesmos resultados, certo?

Em termos de desempenho, não há muita diferença entre usar colunas calculadas e iteradores. Mas quando se trata do modelo de dados, uma função iteradora pode eliminar uma coluna inteira e economizar centenas de linhas de dados.

Além disso, você pode excluir colunas redundantes porque os iteradores podem calcular os resultados necessários virtualmente. Essa prática deixará sua mesa muito mais fina e seu modelo muito mais rápido. Certifique-se de aplicar esta técnica de otimização em seus próprios cálculos.

Conclusão

Para resumir, uma função de iteração avalia cada linha enquanto os agregadores não.

A letra X no final da função facilita a identificação dos iteradores. Os exemplos incluem as funções SUMX , AVERAGEX , , e muito mais.

O uso de funções de iteração não criará tabelas físicas adicionais . Isso pode ajudar você a economizar memória no LuckyTemplates.

Os exemplos de SUMX e AVERAGEX que abordei são cenários simples. Posteriormente, abordaremos os mais avançados adicionando instruções IF e SWITCH .

Tudo de bom!


Funções DAX no LuckyTemplates: usando iteradores
Funções de iteração na linguagem DAX – um exemplo detalhado
Trabalhando com funções de iteração no DAX

*****






Leave a Comment

Colunas calculadas no SharePoint | Uma visão geral

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.

Atributos pré-atentivos: como isso pode afetar seu relatório

Atributos pré-atentivos: como isso pode afetar seu relatório

Descubra todos os atributos pré-atentivos e saiba como isso pode impactar significativamente seu relatório do LuckyTemplates

Calcular Dias de Estoque Zero – LuckyTemplates Inventory Management Insights

Calcular Dias de Estoque Zero – LuckyTemplates Inventory Management Insights

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.

Usando exibições de gerenciamento dinâmico (DMV) no DAX Studio

Usando exibições de gerenciamento dinâmico (DMV) no DAX Studio

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.

Variáveis ​​e expressões dentro do editor do Power Query

Variáveis ​​e expressões dentro do editor do Power Query

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.

Como calcular a diferença em dias entre compras usando o DAX no LuckyTemplates

Como calcular a diferença em dias entre compras usando o DAX no LuckyTemplates

Aprenda a calcular a diferença em dias entre compras usando DAX no LuckyTemplates com este guia completo.

Calculando a média no LuckyTemplates: isolando os resultados do dia da semana ou do fim de semana usando o DAX

Calculando a média no LuckyTemplates: isolando os resultados do dia da semana ou do fim de semana usando o DAX

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

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.