Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
thiago_mlg
Creator II
Creator II

Valor baseado na data máxima de cada Produto

Prezados, 

Estou tendo problema em uma coisa que parece simples, porem não consigo chegar a uma solução.

Tenho a seguinte tabela dinâmica:

 aa.jpg

 Onde tenho as seguinte informações..

Produto.

Valor. A coluna valore é um sum(Valor)

Valor baseado na (Data Máxima, deste produto)... aqui esta o meu problema.. eu preciso que exiba exatamente como está na imagem acima, ou seja, só exiba o valor daquele produto na maior data em que aquele produto tem Valor, conforme eu sublinhei.

Tentei algumas funções como Aggr, IF e outras.. mas não deve estar montando corretamente.

 

dimensões: Produto e Data

Expressão: sum(Valor)

Agradeço...

 

9 Replies
Clever_Anjos
Employee
Employee

Tens como adicionar pelo menos o modelo de dados com uma amostra?

thiago_mlg
Creator II
Creator II
Author

Segue arquivo anexo..

Desde já agradeço pela ajuda..

 

IvanOsatchuk
Contributor III
Contributor III

Olá Thiago,

tenta essa solução

 

Sum({<DATA_COMPETENCIA={'$(=Date(Max(DATA_COMPETENCIA)))'}>}VALOR_LIQUIDO)

thiago_mlg
Creator II
Creator II
Author

Boa tarde,

Com essa expressão: Sum({<DATA_COMPETENCIA={'$(=Date(Max(DATA_COMPETENCIA)))'}>}VALOR_LIQUIDO)
é retornado a data máxima da seleção, ou seja, não a data máxima que cada produto possui valor.

Com isso o valor será preenchido apenas na última coluna de datas e apenas para os produtos que possuem valor, conforme imagem abaixo.

Preciso que também seja preenchido onde está grifado em vermelho.

teste.jpg

Obrigado pela ajuda.

Att,

 

IvanOsatchuk
Contributor III
Contributor III

Entendi, acredito que seja melhor implementar a solução no script:

tabela_dados:
LOAD
    DATA_COMPETENCIA,
    Produto,
    VALOR_BRUTO
FROM [fonte de dados];

tabela_ultimo_valor:
Load 
	Produto,
    LastValue(VALOR_BRUTO) as maxvalor
Resident tabela_dados
Group By Produto;

Ao usar Sum(maxvalor) é para trazer o último valor onde tenha valor.

 

thiago_mlg
Creator II
Creator II
Author

Então, no script tbm não é possível, pois eu preciso que a data máxima de cada produto respeite a seleção de data que o usuário está fazendo no momento da consulta, ou seja, a cada mudança de filtro de data, as datas máximas de cada produto mudarão.

 

De qualquer forma, obrigado pela ajuda.

thiago_mlg
Creator II
Creator II
Author

Boa tarde!

Quando puder e se puder me ajudar, agradeço imensamente.
IvanOsatchuk
Contributor III
Contributor III

Não sei se entendi exatamente o que você precisa, mas fiz um pequeno ajuste na primeira expressão que talvez seja um caminho:

Sum({<DATA_COMPETENCIA={"<=$(=Date(Max(DATA_COMPETENCIA)))"}>} VALOR_BRUTO)
lfetensini
Partner - Creator II
Partner - Creator II

O texto está um pouco confuso para entender, mas seria algo do tipo que você precisa?

Aggr(SUM(VALOR_BRUTO), DATA_COMPETENCIA, ANO_MES_COMPETENCIA, RP)

Support your colleagues. Remember to "like" the answers that are helpful to you and flag as "solved" the one that helped you solve. Cheers.