Ir para conteúdo
  • 0

Ano dinâmico na medida, alterando conforme o filtro de segmentação


Silvano Spada
Ir para solução Solucionado por Bruno Abdalla de Souza ,

Pergunta

  • Alunos

Prezados, preciso de ajuda para aperfeiçoar uma medida.

Ela até  está funcionando para o ano atual, mas quando eu filtro anos anteriores, no filtro de segmentação de dados, por exemplo, filtrar 2023, 2022... só que não sei como fazer na medida, para ficar dinâmico.

A medida que estou usando é essa:

% EMPENHADO ABR =

VAR vEMPENHADO = CALCULATE(

    SUM(

        fExecucao[valor]),fExecucao[cod_metrica]=29 || fExecucao[cod_metrica]=9,

        dCalendario[Mês]<= 4)

VAR vDESCENTRALIZADO = CALCULATE(

    SUM(

        fExecucao[valor]),fExecucao[cod_metrica]=2,

        dCalendario[Mês]<= 4)

VAR vDIVISAO = DIVIDE(

    vEMPENHADO,

    vDESCENTRALIZADO

)

RETURN

IF(

   MAX(dCalendario[Date]) >= DATE(2024,1,30),

   vDIVISAO,

   0

)

 

Eu acho que a mudança seria no "RETURN", mas não sei como, quem puder me ajudar, desde já agradeço!

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução
% EMPENHADO ABR =
VAR vAno = MAX(dCalendario[Ano]
VAR vEMPENHADO = 
	CALCULATE(
    	SUM(fExecucao[valor]),
		fExecucao[cod_metrica]=29 || fExecucao[cod_metrica]=9,
        dCalendario[Mês]<= 4
    )
VAR vDESCENTRALIZADO = 
	CALCULATE(
    	SUM(fExecucao[valor]),
        fExecucao[cod_metrica]=2,
        dCalendario[Mês]<= 4
	)
VAR vDIVISAO = DIVIDE(vEMPENHADO, vDESCENTRALIZADO)
VAR vRESULTADO = 
	IF(
		MAX(dCalendario[Date]) >= DATE(vAno,1,30),
		vDIVISAO,
   		0
	)
RETURN
vRESULTADO

Tenta isso acima. Tentei deixar o ano de forma dinâmica. Se não for isso, por favor, anexe o pbix e mostre claramente o resultado esperado.

Editado por Bruno Abdalla de Souza
Link para o comentário
Compartilhar em outros sites

  • 0
  • Admin
1 hora atrás, Bruno Abdalla de Souza disse:
% EMPENHADO ABR =
VAR vAno = MAX(dCalendario[Ano]
VAR vEMPENHADO = 
	CALCULATE(
    	SUM(fExecucao[valor]),
		fExecucao[cod_metrica]=29 || fExecucao[cod_metrica]=9,
        dCalendario[Mês]<= 4
    )
VAR vDESCENTRALIZADO = 
	CALCULATE(
    	SUM(fExecucao[valor]),
        fExecucao[cod_metrica]=2,
        dCalendario[Mês]<= 4
	)
VAR vDIVISAO = DIVIDE(vEMPENHADO, vDESCENTRALIZADO)
VAR vRESULTADO = 
	IF(
		MAX(dCalendario[Date]) >= DATE(vAno,1,30),
		vDIVISAO,
   		0
	)
RETURN
vRESULTADO

Tenta isso acima. Tentei deixar o ano de forma dinâmica. Se não for isso, por favor, anexe o pbix e mostre claramente o resultado esperado.

Fala incomparáveis @Bruno Abdalla de Souza @Silvano Spada

Na variável "vAno" faltou fechar a função MAX com " ) "... 
Acho que vai ficar chumbado o mês <=4, talvez eu deixaria dinâmico com " <= MONTH ( TODAY () ) "... Mas tudo depende do objetivo o que quer analisar. 


Silvano só não entendi este filtro de mês <=4 qual o objetivo dele?  Consegue dar mais detalhes? Se possível manda print. 

  • Like 1
Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Bom dia Tiago, 

Em relação a chumbar o mês <=4 é isso mesmo, pois serão realizadas várias leituras durante o exercício, sendo que a primeira é no mês de abril e durante o ano terão mais.

 

Quanto a "data >= aaaa/01/30", realmente estava incorreta, fiz os ajustes.

 

Obrigado pelo apoio.

  • Like 1
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...