Usando as funções DAX do LuckyTemplates para lidar com produtos que mudam de preço ao longo do tempo

Usando as funções DAX do LuckyTemplates para lidar com produtos que mudam de preço ao longo do tempo

Nesta postagem de blog, vamos trabalhar em uma análise avançada, mas do mundo real, envolvendo funções DAX do LuckyTemplates. Você pode assistir ao vídeo completo deste tutorial na parte inferior deste blog.

O cenário em questão é quando você tem produtos que mudam de preço ao longo do tempo.

Muitas das demonstrações/vitrines que você revisou ao longo do tempo sugerem que o preço de um produto permanece exatamente o mesmo desde o início do tempo até a data mais atual. Na realidade, este não é o caso.

Em muitas tabelas de dados brutos, você provavelmente tem uma configuração em que o preço pode mudar para outro preço em diferentes intervalos de tempo. Por exemplo, os preços podem mudar devido a demandas sazonais.

Índice

Implementando funções DAX do LuckyTemplates para alterações de preço

As técnicas que abordaremos nesta postagem do blog nos ajudarão a lidar com essas mudanças de preço. Há um pouco de curva de aprendizado para acertar isso usando as funções DAX do LuckyTemplates .

Isso pode ser feito configurando seu modelo de dados corretamente e utilizando combinações de fórmulas DAX mais avançadas.

Usando as funções DAX do LuckyTemplates para lidar com produtos que mudam de preço ao longo do tempo

Para este exemplo, você pode saber de antemão quais foram suas alterações de preço historicamente e deseja integrar essas alterações de preço em seu modelo. Mas neste cenário, você pode não ter preços em sua tabela de fatos. Pense nesta tabela de vendas como uma tabela de transações.

Se houver preços nesta tabela, provavelmente você não precisará fazer isso. Mas tenho visto perguntas surgindo no fórum de suporte , onde o preço está em uma tabela separada e precisa ser integrado.

Usando as funções DAX do LuckyTemplates para lidar com produtos que mudam de preço ao longo do tempo

Criei uma tabela onde tenho todos os produtos, bem como o preço de cada produto que muda no trimestre. Portanto, tenho um nome de produto e uma dimensão de um quarto.

Portanto, para o Produto 1, seu preço durante o terceiro trimestre foi de US$ 1.680,75.

Usando as funções DAX do LuckyTemplates para lidar com produtos que mudam de preço ao longo do tempo

Mas, se rolarmos a tabela para baixo, veremos que o preço do Produto 1 mudou para US$ 2.666,79 durante o quarto trimestre.

Usando as funções DAX do LuckyTemplates para lidar com produtos que mudam de preço ao longo do tempo

Durante o período de Natal, aumentamos bastante os preços dos nossos produtos, por isso precisamos saber como esses preços foram alterados. Esta é uma ideia realmente boa para previsões futuras e análises de cenários, porque você pode se ver prevendo mudanças nos preços em muitos casos.

Relacionamento entre as tabelas

A parte complicada aqui é como colocar isso em nosso modelo. A tabela Product está listando cada produto uma vez, mas a tabela Product Pricing está fazendo referência a um produto várias vezes. Portanto, não podemos fazer um relacionamento entre a tabela Preço do produto e a tabela Vendas.

Não há como fazer isso porque há vários valores na tabela Product Pricing e queremos que a tabela de pesquisa (tabela Product) esteja no lado exclusivo.

Usando as funções DAX do LuckyTemplates para lidar com produtos que mudam de preço ao longo do tempo

Nesse cenário, precisamos ser inovadores e descobrir como podemos obter um ponto de dados da tabela Product Pricing enquanto analisamos os dados da tabela Sales usando algumas funções DAX do LuckyTemplates.

Usando as funções DAX do LuckyTemplates para lidar com produtos que mudam de preço ao longo do tempo

Cálculo do preço médio do produto

Foi assim que eu fiz. Quando fiz a simulação desse cenário, também fiz várias coisas adicionais. Eu tenho aqui essa tabela específica que tem o nome do produto, o preço médio atual e o preço médio do produto, que vai mudar de acordo com o trimestre que a gente selecionar.

Usando as funções DAX do LuckyTemplates para lidar com produtos que mudam de preço ao longo do tempo

Para calcular o preço médio do produto, você deve se lembrar que na verdade não há relação entre a tabela Date (que é de onde vem o trimestre) e a tabela Product Pricing.

Utilizando a Função TREATAS

Portanto, quando fazemos uma seleção aqui, precisamos filtrar de alguma forma a tabela Vendas para garantir que o preço correto para o trimestre esteja chegando. Para isso, utilizei a função TREATAS , que permite criar essas relações virtuais.

Usando as funções DAX do LuckyTemplates para lidar com produtos que mudam de preço ao longo do tempo

Depois de criar virtualmente o relacionamento por meio do TREATAS , o nome e os detalhes do produto serão alterados com base na seleção trimestral que fizermos.

Há muita aplicação para a função TREATAS em previsão, publicidade e marketing, onde os preços dos produtos nem sempre permanecem constantes. Você terá que usar uma combinação de técnicas para realmente resolver esses tipos de coisas.

Usando as funções DAX do LuckyTemplates para lidar com produtos que mudam de preço ao longo do tempo

Agora, quero comparar as vendas totais historicamente com base apenas em um preço único. Quero comparar o Total de vendas com os ajustes de preços, que contém todas as nossas vendas, mas levando em conta todos esses ajustes de preços para os trimestres.

Utilizando a função LOOKUPVALUE

Usando as funções DAX do LuckyTemplates para lidar com produtos que mudam de preço ao longo do tempo

Para obter os resultados desejados, criei a fórmula usando a função LOOKUPVALUE . Para o cálculo Total Sales with Price Adjustment, usei a função SUMX sales, fiz referência à tabela Sales e pulei para a tabela Quantity. Como passo final, usei a função LOOKUPVALUE .

LOOKUPVALUE é o mais próximo possível de um VLOOKUP . É basicamente fazer um tipo de VLOOKUP dentro da tabela Product Pricing, mas depois trazê-lo para a iteração que estamos fazendo na tabela Sales.

O melhor de LOOKUPVALUE é que você não precisa de nenhum relacionamento para usá-lo. Você pode pular para outras tabelas apenas referenciando certos elementos em uma tabela específica.

Usando as funções DAX do LuckyTemplates para lidar com produtos que mudam de preço ao longo do tempo

Usando a função LOOKUPVALUE , você poderá acompanhar as mudanças de preço. Vamos dar uma olhada no que aconteceu em 26 de abril de 2018. Vendemos 1 produto, Produto 53.

A coluna Vendas totais levará em consideração o novo preço de US$ 1.526, enquanto a coluna Vendas totais com ajuste de preço levará em conta US$ 1.327,62 como Preço médio do produto.

Mergulhe fundo na função TREATAS – Relacionamentos virtuais para LuckyTemplates Como criar relacionamentos virtuais usando TREATAS no LuckyTemplates Lógica de várias moedas no LuckyTemplates – Exemplo de VALOR DE PROCURA

Conclusão

Neste exemplo, usei a função TREATAS como forma de criar um relacionamento virtual exclusivo em meu modelo de dados. Este é um ótimo truque para aprender ao trabalhar com dados mais complexos.

Também vimos a função LOOKUPVALUE . Esta é outra função exclusiva que não é usada com frequência, mas há uma razão lógica pela qual precisamos usá-la neste exemplo específico.

Implementamos algumas técnicas de desenvolvimento de alta qualidade que abrangem cenários de dados do mundo real com os quais você provavelmente lidará em algum momento de seus negócios.

Para muitos outros exemplos de análise de negócios, confira o módulo da minissérie abaixo no LuckyTemplates Online.

Divirta-se trabalhando com este vídeo detalhado.


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