DAX Acumula Valores Somados

Play DAX Acumula Valores Somados
Sign in to queue

Description

Aprenda como criar um DAX ((Data Analysis Expressions) automaticamente com as Medidas Rápidas do Power BI, de forma que esta função irá acumular valores no decorrer das linhas

Embed

Download

Download this episode

The Discussion

  • User profile image
    kaauan

    E se eu quiser fazer a mesma coisa, porem obedecendo a ordem do valor do faturamento e nao da categoria?

  • User profile image
    Renato Haddad

    Olá Kaauan,

    A tela que é aberta das medidas rápidas vc pode arrastar o campo que deseja manipular para a lista adequada. Veja o DAX gerado para acumular o faturamento em relação à categoria.

    Faturamento total corrente em Categoria =
    CALCULATE(
    SUM('Dados'[Faturamento]),
    FILTER(
    ALLSELECTED('Dados'[Categoria]),
    ISONORAFTER('Dados'[Categoria], MAX('Dados'[Categoria]), DESC)
    )
    )

    A sua pergunta não está clara, mas acredito que queira acumular o faturamento.
    Att.,

  • User profile image
    Carlos

    Olá sr. Renato Haddad,

    Primeiramente parabéns pela iniciativa de montar vídeo aulas sobre o Power BI, esta ferramenta além de ser incrível, possui um custo-benefício excelente e infelizmente por ser um software recente que incorporou os suplementos Power do Excel não possuímos muito material em português.

    Nos minutos finais da video aula, quando se aplica a ordenação por categoria ou quantidade se bagunça o acumulado, existe alguma forma em DAX para corrigir este problema, independente da coluna ordenada.

    Abs,

  • User profile image
    renato

    Olá Carlos,
    Fico feliz em saber que o vídeo o ajudou. Esta sua questão não é possível tratar conforme vc deseja, pois o DAX está claro que o acumulado ocorre em relação ao ano apenas, e não em relação à categoria.
    Boa sorte e sucesso nos projetos.

  • User profile image
    Gabriel

    Olá Renato tudo bem?
    Estou com um cenário onde utilizei a mesma lógica do seu vídeo, porém preciso compor os valores por semana, ou seja, ao invés de usar a categoria usei a semana, até aí tudo bem, porém além da semana atual preciso trazer os mesmos dados para a semana anterior, existe a possibilidade de imputar um (-1) nessa fórmula? Ou devo utilizar outra lógica?
    A ideia era criar outra medida que assumisse o valor da segmentação feita no relatório, menos uma semana do que foi filtrado.

    Acumulado por semana do ano =
    CALCULATE(
    SUM('Movimentação'[SUM]);
    FILTER(
    ALLSELECTED('Movimentação'[Semana do Ano]);
    ISONORAFTER('Movimentação'[Semana do Ano]; MAX('Movimentação'[Semana do Ano]); DESC)
    )
    )

    Obrigado!

  • User profile image
    renatohaddad

    @Gabriel:oi Gabriel, tudo bem e vc?
    Este seu cenário segue na mesma lógica que usei, no entanto o DateAdd permite capturar a unidade de tempo em anos, trimestre, mês e dia apenas. Então, no caso de semanas é preciso construir outra maneira, terei que fazer uns testes para montar este cenário.

  • User profile image
    Isadora

    Como fazer o acumulado quando não se tem data?

  • User profile image
    renatohaddad

    @Isadora: vc pode tentar criar um DAX sem a unidade de tempo, usando outro campo da sua estrutura de dados. 

  • User profile image
    Gaberetta

    Olá Renato tudo bem?

    Eu tenho uma dúvida e acredito que possa me ajudar:

    Eu trabalho com dados acumulados mensais e no meu caso o ano se inicia em Abril (é como tratamos um ano agrícola de vai de Abril/17 até Março/18).

    No meu dashborad tenho um filtro mensal que contempla os 12 meses e quando eu seleciono um certo mês ele me volta o valor do mesmo. O que eu gostaria é quando eu selecionasse o mês de Novembro por exemplo, ele me trouxesse um acumulado de Abril até novembro na informação.

    Como eu posso fazer isso?

    Muito obrigado.

  • User profile image
    renatohaddad

    @Gaberetta:Neste caso vc terá que criar um DAX usando a função DateAdd onde vc consegue manipular a qtde de dias, meses e anos. Veja um exemplo de DAX para calcular o faturamento do mês anterior.

    FaturamentoMesPassado = CALCULATE( [TotalFatSumX], DATEADD( Dados[Data], -1, MONTH ))

    Note que o MONTH usei o -1, então vc terá que descobrir qual o mês atual (Month()) e subtrair de forma que vá até o mês de abril.

  • User profile image
    DouglasB

    Tudo ótimo? Parabéns pela iniciativa de resolver duvidas. A minha consiste em uma forma de agrupar um número dia a dia. Exemplo:
    dia 1 10 cupons acumulado 10 cupons
    dia 2 15 cupons acumulado 25 cupons
    dia 3 20 cupons acumulado 45 cupons

    Eu tenho uma estrutura que me fornece o o valor realizado dia após dia, tenho uma estrutura de tempo, porem ainda não consegui alguma formula que me retorne o acumulado naquele dia especifico. Grato por qualquer ajuda.

  • User profile image
    renatohaddad

    @DouglasB:oi Douglas, o acumulado vejo que é fácil pois vc deve fazer uma medida usando o SUMX onde o filtro é o dia atual, ou seja, manda somar tudo até o dia atual. para manipular data use o DataAdd.

    Att.,

  • User profile image
    PALOMA

    OLÁ, TENHO QUE CALCULAR A SOMA DE UM INTERVALO DOS ULTIMOS 6 MESES. COMO PODERIA APLICAR ISSO NESSA FUNÇÃO?

  • User profile image
    jgustavo

    @renatohaddad: olá. Utilizei um DAX tipo este mas faço DRILL de ano/mes/dia. Qual função me mostra a hierarquia do DRILL para usar o parâmetro YEAR/MONTH/DAY?

    Obrigado.

  • User profile image
    renatohaddad

    @jgustavo: sao estas mesmas YEAR(<date>)  YEAR(TODAY()) MONTH(<datetime>) MONTH(<DtPedido>)

  • User profile image
    jgustavo

    @renatohaddad: obrigado pelo retorno. Preciso de uma função para saber a hierarquia do drill, se está em ano/mes/dia.

    Obrigado.

  • User profile image
    Carlos Aparecido Teixeira

    Como faço para somar as receitas de agências ao longo dos meses do anos, sendo que cada agencia está em uma linha e os meses em colunas.

  • User profile image
    renatohaddad

    @Carlos Aparecido Teixeira:Sugiro vc mostrar os dados em uma matriz, pois a mesma já mostra os subtotais e totais nas colunas e linhas.

  • User profile image
    Ronaldo Junqueira

    Boa Noite Renato, tenho a seguinte situaçao, puxei lançamentos contábeis para uma tabela MovContab, e esse lançamentos tem data, campo onde linkei a uma tabela dCalendário.
    Então Fiz Uma Medida Saldo = Sum(Debitos) - Sum(Creditos).
    Agora eu precisava calcular o Saldo da Conta de Estoque em cada mês, então quando eu jogo a Data no Filtro, ele so me busca o Movimento que ocorreu no mês. Ele deveria Fazer isso, mais somar o saldo da conta que esta antes do periodo:
    Ex. Saldo da Conta em Maio = R$ 3.000,00
    Movimento de Junho Seria (Debitos = R$ 500,00) - (Créditos = R$ 200,00) Saldo = R$ 300,00
    PReciso que ele me traga o Valor de R$ 3.300,00 na coluna de Junho, e assim por diante.

    GRande Abraço Valeu

  • User profile image
    Bruno​Bougleux

    Renato,
    E se a minha categoria for um subcategoria e eu quiser usar o drill up e drill down? quando eu mudo, ele está perdendo a referencia!

  • User profile image
    renatohaddad

    @kaauan:isto não se aplica a drilldown pq o filtro é a CATEGORIA.

  • User profile image
    Carlos Aparecido Teixeira

    Caro Renato, como faço para acumular valor dentro do visual Calendar. Quero criar painel com dois segmentos de dados: ano e mês e um Calendar. Ao selecionar combinação ano e mês, gere no Calendar dados acumulados diários apenas do mês selecionado.

  • User profile image
    renatohaddad

    @Carlos Aparecido Teixeira:Oi Carlos, a sua ideia é ótima, porém o calendar necessita dos dias do mês e números. O que vc pode fazer é colocar exatamente a medida que acumula por DIA, crie uma medida onde o intervalo é o dia, assim, a sua fórmula irá mostrar o acumulado diário.

    Boa sorte!

  • User profile image
    RENATO

    Boa noite! Estou com um grande impasse no meu arquivo, preciso calcular o forecast accuracy, pra isso preciso calcular a diferenca entre dois planos de vendas, fiz isso atravez de medidas, entao tenho a medida(soma) do plano A e plano B, calculei a soma da diferenca desses dois planos atravez de uma medida tambem, para o calculo sair correto eu preciso da soma acumulada absoluta da medida da diferença entre os planos. Ja tentei usando as medidas rapidas para calcular o acumulado. mas como a diferença entre A e B é uma medida nao consigo fazer isso, pode me dar uma força, preciso do acumulado absoluto entre dois planos.

  • User profile image
    Carlos Aparecido Teixeira

    Caro Renato, não sei o que ocorreu com meu Power BI. Antes eu conseguia acessar base de dados Postgresql em uma máquina servidor dentro da rede dos correios, utilizando "obter dados" - Base de dados PostgreSQL. No entanto o Power BI gera a seguinte mensagem: "Conector n]ao pode ser utilizado pela falta do Npgsql-4.0.2. Mas fiz a instalação e mesmo assim continua com a mesma mensagem.
    - Socorro !!!!

  • User profile image
    renatohaddad

    @Carlos Aparecido Teixeira:Isto está ocorrendo somente na sua máquina ou em todas? Isto ocorreu após algum update do PBI? pode me contatar direto no email rehaddad@msn.com

  • User profile image
    Gabriella

    Boa tarde,

    Para somar acumulado sendo por semana como devo proceder? Para o mês uso o YTD mas para semana não encontrei nada similar.

    Obrigada

  • User profile image
    renatohaddad
    oi Gabriella, vc deverá montar uma fórmula que seja de acordo com o contexto, se vc inserir um dia, mês, Ano etc, o valor é somada conforme isto. em dax.guide.com vc tem todas as funções do DAX.
    A sua solução está neste artigo https://www.sqlbi.com/articles/week-based-time-intelligence-in-dax/ do Marco Russo.
  • User profile image
    Gabriella

    Oi Renato, agradeço o retorno.

    Na minha base não tenho o dia a dia, tenho a informação semana que abrange o prazo de sete dias (exemplo: 28/01/18 a 03/02/18) e uma coluna com o número da semana (seguindo o mesmo exemplo: 201805).
    Preciso calcular por exemplo, o volume acumulado por esse campo semana que abrange esses setes dias, mas não possuo a venda por dia, apenas por semana mesmo.

    Como consigo calcular o acumulado desse ano e do ano anterior (a coluna ano eu possuo também)?

    Grata.

Add Your 2 Cents