Ir para conteúdo
  • 0

Variação Mês Anterios dentro do Gráfico de Barras/Linha


PEDRO ROQUINI .
Ir para solução Solucionado por Renato Carlos Rossato ,

Pergunta

  • Alunos

Boa tarde pessoal.

 

Estou com problemas para refletir, dentro do gráfico de barras com linhas, a variação do mês atual (em ocorrência) do anterior.
Um Exemplo: se o mês atual está até o dia 15, preciso que a variação com o anterior seja a comparação com os mesmos 15 dias.

 

Conforme abaixo, o gráfico espelha os meses cheios:

 

Var. Mês Anterior =
 
VAR mAnterior =  
    CALCULATE(
        [Total Notas],
        DATEADD(
            dCalendario[Data],
            -1,
            MONTH
        )
    )
VAR Residual =
        [Total Notas] - mAnterior
 
RETURN
    IF(
        mAnterior = 0,
        0,
        divide(Residual, mAnterior)
    )


Conforme abaixo, o mês de dezembro está em -88%, ja que esta em comparação com novembro cheio. Existe a possibilidade de se comprarar com os mesmos dias?
image.png.fe12ab136a2f846babdd505131ecd152.png

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução

Olá @PEDRO ROQUINI ., tenta utilizar a SAMEPERIODLASTYEAR que acredito que você terá o resultado que espera:

Var. Mês Anterior =

VAR mAnterior =  

    CALCULATE(

        [Total Notas],

        SAMEPERIODLASTYEAR(

            dCalendario[Data])

    )

VAR Residual =

        [Total Notas] - mAnterior

RETURN

    IF(

        mAnterior = 0,

        0,

        divide(Residual, mAnterior)

    )

Para funcionar corretamente até o dia que tem realizado no mês você precisa criar uma coluna calculada na sua calendário com a seguinte instrução:

Possui dados? =

dCalendario[Data] <= MAX(tabelafato[data] --a tabelafato[data] é a coluna onde tem as datas com os movimentos da sua tabela fato.

Isso vai fazer retornar True e False na coluna.

Aí na sua medida de [Total Notas], adicione dentro da CALCULATE o seguinte filtro, vou citar um exemplo de soma:

Total Notas =

CALCULATE(

                      SUM(tabelafato[valor]),

                      dCalendario[Possui dados?] = TRUE()

)

Acredito que assim vai ter o resultado que espera.

Espero ter ajudado.

 

 

 

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
16 horas atrás, Renato Carlos Rossato disse:

Olá @PEDRO ROQUINI ., tenta utilizar a SAMEPERIODLASTYEAR que acredito que você terá o resultado que espera:

Var. Mês Anterior =

VAR mAnterior =  

    CALCULATE(

        [Total Notas],

        SAMEPERIODLASTYEAR(

            dCalendario[Data])

    )

VAR Residual =

        [Total Notas] - mAnterior

RETURN

    IF(

        mAnterior = 0,

        0,

        divide(Residual, mAnterior)

    )

Para funcionar corretamente até o dia que tem realizado no mês você precisa criar uma coluna calculada na sua calendário com a seguinte instrução:

Possui dados? =

dCalendario[Data] <= MAX(tabelafato[data] --a tabelafato[data] é a coluna onde tem as datas com os movimentos da sua tabela fato.

Isso vai fazer retornar True e False na coluna.

Aí na sua medida de [Total Notas], adicione dentro da CALCULATE o seguinte filtro, vou citar um exemplo de soma:

Total Notas =

CALCULATE(

                      SUM(tabelafato[valor]),

                      dCalendario[Possui dados?] = TRUE()

)

Acredito que assim vai ter o resultado que espera.

Espero ter ajudado.

 

 

 

Olá renato,
Quanto à SAMEPERIODLASTYEAR, não traz o resultado esperado já que a comparação não é ano a ano, e sim mês a mês

Quanto à coluna calculada achei promissor a ideia, mas não alterou o fato de dezembro, que está no dia 6, comparar com o mês cheio de novembro.

Link para o comentário
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...