Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Estou tendo muita dificuldade em encontrar uma solução para fazer com que uma expressão calcule x meses para trás
Para ilustrar, trago o gráfico abaixo:
A linha verde divide a barra verde escura pela verde clara, sempre no mesmo mês.
Porém, preciso que a expressão da linha verde considere os números das barras com uma defasagem de 4 meses.
Ou seja, o valor da linha verde em julho vai considerar as barras de março no cálculo, etc.
De preferência, queria fazer isso via set analysis, sem modificar diretamente o script.
Segue a minha tentativa falhada de fazer essa divisão (com base nesse post do rogerioalmeida Cálculo através de datas)
Count({$< IndDesembolso={'S'},
DtInclusaoProposta-={'1/1/1900'},
DtInclusaoProposta = {">=$(=AddMonths(max(DtInclusaoProposta),-4)) <$(=AddMonths(max(DtInclusaoProposta),0))"}>} NroProposta)
/
Count({$<StatusAprovacao={'RAC-A','RAC-O','RAC-A Automática'},DtInclusaoProposta-={'1/1/1900'},
DtInclusaoProposta = {">=$(=AddMonths(max(DtInclusaoProposta),-4)) <$(=AddMonths(max(DtInclusaoProposta),0))"}>} NroProposta)
Consegui, com base nesse link: Accumulative Sums
Segue a resposta:
(Sum(Aggr((Above(Count(
{$<IndDesembolso={'S'},
DtInclusaoProposta-={'1/1/1900'},
[DtInclusaoProposta.autoCalendar.Year],
[DtInclusaoProposta.autoCalendar.YearMonth]>} NroProposta),4,0)),[DtInclusaoProposta.autoCalendar.YearMonth])))
William,
segue um modelo que eu tinha feito para algum post similar. Este mostra para tras e frente. Daria para adaptar.
Alessandro, boa noite.
Abri o seu arquivo e não encontrei a expressão para usar de exemplo, nem o gráfico do seu gif. É porque eu estou usando Qlik Sense Desktop?
se voce quer um tudo dividido pelo atual.
voce precisa colocar um TOTAL
exemplo:
Mes atual / Acumulado dos Ultimos 4 Meeses
Sum( {< MesAno = {'$(vMesAno)'} >} nValor
/
Sum( Total {< MesAno = ">=$(vMesAnoMenos4) <= $(vMesAnoMenos1)"}> nvalor)
Segue em Sense
Alessandro,
Talvez eu tenha me expressado mal, mas eu não quero mostrar +/- 3 meses com base na seleção, eu quero que a posição do mês M reflita o valor de M-3
Tentei fazer isso:
Sum({<Ano=,Mes=,Periodo ={"=$(=Date(addmonths(Max(Periodo), -3), 'YYYY/MM'))"} >} Valor)
Tens alguma ideia?
Thiago,
Na verdade não preciso fazer nada acumulado, só preciso que a posição de M reflita o valor de M-3
Então aqui em 2016/12, preciso que o valor seja 25 ao invés de 84.
Destaco também que tenho outras medidas que precisam estar em "tempo real"; é só uma delas que precisa estar defasada no gráfico
Ah acho que entendi, pq o Mes de Dezembro ta vindo somado com outros meses ne ?
Se nao for isso desculpe ainda nao entendi eu acho... e ignora o texto abaixo e le so que esta dentro do Sinxtase bonito
Tem duas forma de fazer isso...
Uma bonita e nao lembro se ira funcionar
Bonita:
Sum(
Aggr(
Sum( {< MesAno = ">=$(vMesAnoMenos4) <= $(vMesAno)"}> nvalor)
, MesAno)
)
Se tu quer repeti o 25 para geral...
Pegar assim
Sum( Total {< MesAno = {'vMesAnoMenos3'} }> nvalor)
ele deve repetir para a geral o 25
uma solução seria utilizar uma tabela AsOf e criar um flag para contemplar os 4 meses anteriores,
Ficaria um set Analysis bem simples
algo como
Count({$< IndDesembolso={'S'},DtInclusaoProposta-={'1/1/1900'},Flag4Meses= {"1"}>} NroProposta)
Oi Thiago, acho que abaixo ficou bem claro:
Preciso que essa expressão sempre calcule 4 meses para trás continuamente, independente de seleção de mês, etc.
Digamos que eu selecione o ano de 2017 como filtro. Preciso que a expressão use como base o período de Set/16 - Ago/17 , ao invés de Jan/17 - Dez/17.
Você poderia também detalhar como foram definidas as suas variáveis?