Assuntos relacionados a criação de medidas, fórmulas e funções DAX, relacionamentos etc
#56014
Olá! Tudo bem?
Sou novo aqui no fórum e espero não ter publicado nada de forma incoerente às regras.

Estou com uma dúvida sobre um código que vi no canal do YouTube da Karine Lago (https://www.youtube.com/watch?v=ENOL_LggsbQ).

O código funciona corretamente somando o acumulado de todos os anos da empresa, porém, preciso ir um pouco mais além.

Ao selecionar um filtro de ano na dashboard, preciso que a coluna respeite o intervalo selecionado e não continue mostrando a soma acumulada dos outros anos.

Se for selecionado apenas o ano de 2015, que é o primeiro ano, os valores acumulados estão perfeitos como mostra a primeira imagem (podem não bater algumas casas decimais porque eu apaguei o valor completo. Mas eu conferi e está tudo correto!)

Imagem

O que tem acontecido quando eu seleciono o ano de 2020 é a seguinte situação:

Imagem

Ele continua somando o valor acumulado dos anos anteriores!

O código que a Karine desenvolveu em vídeo é o seguinte (de acordo com o meu arquivo):
Soma Acumulada = CALCULATE(SUM(FtFaturamento[Faturamento]), FILTER(ALL(DimTempo), DimTempo[Data]<=MAX(DimTempo[Data])))

Eu fiz algumas modificações para que a soma acumulada não aparecesse nos meses seguintes, porque apenas repetiria o valor do último mês, e cheguei no seguinte código:
Soma Acumulada = IF(MIN(DimTempo[Data<=CALCULATE(MAX(FtFaturamento[Faturamento]),ALL(FtFaturamento[Faturamento])),CALCULATE(SUM(FtFaturamento[Faturamento]), FILTER(ALL(DimTempo), DimTempo[Data]<=MAX(DimTempo[Data]))))

De qualquer forma, ainda não consegui entender como fazer o código respeitar o filtro por cada ano.

Espero não ter sido muito confuso.
Obrigado pela ajuda e qualquer dúvida estou a disposição!
#56024
Veja a explicação da função ALLEXCEPT:

https://docs.microsoft.com/pt-br/dax/al ... nction-dax

Veja se ajuda:
Código: Selecionar todos
Soma Acumulada = IF(MIN(DimTempo[Data<=CALCULATE(MAX(FtFaturamento[Faturamento]),ALL(FtFaturamento[Faturamento])),CALCULATE(SUM(FtFaturamento[Faturamento]), FILTER(ALLEXCEPT(DimTempo, DimTempo[Ano]), DimTempo[Data]<=MAX(DimTempo[Data]))))
#57087
felipegare escreveu:Olá! Tudo bem?
Sou novo aqui no fórum e espero não ter publicado nada de forma incoerente às regras.

Estou com uma dúvida sobre um código que vi no canal do YouTube da Karine Lago (https://www.youtube.com/watch?v=ENOL_LggsbQ).

O código funciona corretamente somando o acumulado de todos os anos da empresa, porém, preciso ir um pouco mais além.

Ao selecionar um filtro de ano na dashboard, preciso que a coluna respeite o intervalo selecionado e não continue mostrando a soma acumulada dos outros anos.

Se for selecionado apenas o ano de 2015, que é o primeiro ano, os valores acumulados estão perfeitos como mostra a primeira imagem (podem não bater algumas casas decimais porque eu apaguei o valor completo. Mas eu conferi e está tudo correto!)

Imagem

O que tem acontecido quando eu seleciono o ano de 2020 é a seguinte situação:

Imagem

Ele continua somando o valor acumulado dos anos anteriores!

O código que a Karine desenvolveu em vídeo é o seguinte (de acordo com o meu arquivo):
Soma Acumulada = CALCULATE(SUM(FtFaturamento[Faturamento]), FILTER(ALL(DimTempo), DimTempo[Data]<=MAX(DimTempo[Data])))

Eu fiz algumas modificações para que a soma acumulada não aparecesse nos meses seguintes, porque apenas repetiria o valor do último mês, e cheguei no seguinte código:
Soma Acumulada = IF(MIN(DimTempo[Data<=CALCULATE(MAX(FtFaturamento[Faturamento]),ALL(FtFaturamento[Faturamento])),CALCULATE(SUM(FtFaturamento[Faturamento]), FILTER(ALL(DimTempo), DimTempo[Data]<=MAX(DimTempo[Data]))))

De qualquer forma, ainda não consegui entender como fazer o código respeitar o filtro por cada ano.

Espero não ter sido muito confuso.
Obrigado pela ajuda e qualquer dúvida estou a disposição!
O que eu estava procurando era a função ALLSELECTED.

A solução ficou da seguinte maneira:
CALCULATE(SUM(FtFaturamento[Faturamento]), FILTER(ALLSELECTED(DimTempo), DimTempo[Data]<=MAX(DimTempo[Data])))

Boa noite!!! Que desafio!!! Veja se era isso que e[…]

Boa tarde! Precisava de um fórmula que con[…]

Do e-mail para o excel

https://support.microsoft.com/pt-br/office/importa[…]

Copiar colunas em nova guia

... o cplicado...odigo acima enviado pelo cole[…]

Segue dados de Exemplo extraidos no SQL id_cliente[…]

Gente, muito obrigado!! Com a ajuda de voces cons[…]

DESLOC LARGURA

Olá Pessoal, Minha dúvida é […]

Copiar Aba e colar em nova aba

Estamos a disposição... Fico muito f[…]