Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
josh_ben86
Contributor III
Contributor III

Cálculo RANGE

Bom dia pessoal,

Possuo 4 RANGES, conforme imagem abaixo, e cada range possui um ATP(Sum(a)/Count(b)), ou seja, soma de tarifas/ quantidade de transações.

Para calcular o SAVING de cada RANGE o cálculo é: Maior ATP - o ATP do outro RANGE * Transação do maior ATP.

Screenshot_4.png

Preciso fazer em um kpi o seguinte:

Quando o usuário entrar na pasta de análise vai me aparecer o SAVING do menor ATP e, caso ele filtre aparece o cálculo correspondente a cada RANGE.

Estou tentando fazer da seguinte maneira:

Crieri 3 Váriaveis:

1) $v_TRXMAX -> Max(Total Aggr(count({<MOVIMENTO={"AÉREO"}

,PeriodoID = {"<=$(=max(PeriodoID))"},Ano={"$(=max(Ano))"}>}Replace(localizador,localizador,'1')),RANGE))

TRAZ a quantidade de transações do maior ATP.


2)$v_ATP -> (Sum ({<MOVIMENTO={"AÉREO"},PeriodoID = {"<=$(=max(PeriodoID))"},Ano={"$(=max(Ano))"}>}tarifa)/count({<MOVIMENTO={"AÉREO"},PeriodoID = {"<=$(=max(PeriodoID))"},Ano={"$(=max(Ano))"}>}Replace(localizador,localizador,'1')))

Cálculo do ATP

3)$v_ATP15 ->  Min(Total Aggr(SUM({<MOVIMENTO={"AÉREO"},PeriodoID = {"<=$(=max(PeriodoID))"},Ano={"$(=max(Ano))"}>}tarifa)/count({<MOVIMENTO={"AÉREO"},PeriodoID = {"<=$(=max(PeriodoID))"},Ano={"$(=max(Ano))"}>}Replace(localizador,localizador,'1'))

,RANGE))

Traz o menor ATP do RANGE

E para finalizar o cálculo do kpi:

if($(v_ATP15)<$(v_ATP),$(v_TRXMAX) * ($(v_RANGE)-$(v_ATP15)),$(v_TRXMAX) * ($(v_RANGE)-$(v_ATP)))

Ele faz o seguinte:

Para me trazer sempre o valor de SAVING do menor ATP eu coloquei um IF(OK, ele me traz o valor),mas, após filtrar por cada RANGE em um gráfico ele me retorna zero.

Gostaria de saber se há alguma maneira de realizar isso de forma mais prático ou o erro que estou cometendo.

Labels (3)
9 Replies
nicolett_yuri

Consegue nos enviar uma app de exemplo?

Vai facilitar o entendimento do problema

josh_ben86
Contributor III
Contributor III
Author

Yuri,

Inseri alguns dados fictícios em um excel só pra lhe enviar. Fiz os comentários na pasta. Não consegui calcular o SAVING.

Caso tenha dúvida só me informar. Deixei alguns comentários de como realizar o calculo. Agradeço desde já.

nicolett_yuri

Eu fiz o cálculo, etapa a etapa na tabela.

Veja se isso te ajuda

josh_ben86
Contributor III
Contributor III
Author

Olá Yuri,

Ajudou muito... Tenho só uma questão... a coluna 'trx maior atp' aparece 66, está correto, porém ao selecionar algum RANGE ele altera o trx... como faria pra ficar sempre 66, com base no maior ATP?

Desde já agradeço pelo auxílio.

nicolett_yuri

Desta maneira não poderemos utilizar o FirstSortedValue, o ideal será embutir a validação do RANGE dentro de um set analysis (identificar o RANGE com maior valor e fixar no set analysis).

Hoje não vou conseguir te ajudar nisso, mas depois monto um exemplo e envio, caso ninguém mais consiga te ajudar

josh_ben86
Contributor III
Contributor III
Author

Oi Yuri,

Vi o Sortedvalue e logo percebi isso... mas quando puder me orientar eu agradeço!! Obrigado desde já!

nicolett_yuri

Ainda não achei uma maneira de fazer isso

josh_ben86
Contributor III
Contributor III
Author

Oii Yuri,

Também não encontrei nenhuma maneira rss... as vezes os clientes abusam rsss... Mas só de ver você falando isso creio que seja realmente bem complicado ou impossível de se fazer..

nicolett_yuri

rsrs

Mas da pra fazer sim, ainda não consegui parar e me concentrar nisso