Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
agnaldoneves
Valued Contributor

Variável parar de mostrar dias até virar o mês.

CodigoVendedorApelidoMovimento_Tipo_OperacaoDate1AnoMêsPreco_FinalDt_Passou1
2CARLOSVND26/03/20182018mar1000
2CARLOSVND28/02/20182018fev2000
2CARLOSVND24/03/20182018fev3000
22ANDRESSAVND26/03/20182018mar1500
22ANDRESSAVND28/02/20182018fev2500
22ANDRESSAVND24/03/20182018mar3500
2CARLOSVND26/03/20172017mar1100
2CARLOSVND28/02/20172017fev2100
2CARLOSVND24/03/20172017fev3100
22ANDRESSAVND26/03/20172017mar1600
22ANDRESSAVND28/02/20172017fev2600
22ANDRESSAVND24/03/20172017mar3600

Estou com problema, não sei como resolver.

Faço acompanhamento diário das minhas vendas mas por período de

25/02/2018 a 24/03/2018

O problema é que quando chegar no dia 25/03/2018 ele parar de mostrar dados.

Só vai mostrar dados apenas quando virar o mês no dia 01/04/2018. Fico 6 dias sem informações

Como faço para resolver. Abaixo a variavel e o set analysys

Qual seria a solução para eu corrigir isso?

Variável:

vMesAnt =AddMonths(Makedate(year(today()), month(today()),25), -1)

vMesAtual =Makedate(year(today()),month(today()),24)

Set Analysis:

Sum({$<Ano =,Mes=,Date1 = {">=$(=vMesAnt)<=$(=vMesAtual)"},

[Movimento_Tipo_Operacao]={'DEV','VND','VPC','VEF','ACE','FPV','CVE'},[Dt_Passou1]={'0'} >}Preco_Final)

2018-03-08_06-25-59.png

Tags (1)
1 Solution

Accepted Solutions
thiago_justen
Valued Contributor III

Re: Variável parar de mostrar dias até virar o mês.

Na verdade me equivoquei na resposta. Se queres manter o período de avaliação de 25 a 24, faça assim:

vMesAnt =If (Day (today ())>25,

Makedate(year(today()), month(today()),25),

AddMonths(Makedate(year(today()), month(today()),25), -1))


vMesAtual = If(Day (today ())>25,

AddMonths(Makedate(year(today()), month(today()),24), 1),

Makedate(year(today()),month(today()),24)

)


Thiago Justen Teixeira Gonçalves
WhatsApp: 24 98152-1675
Skype: justen.thiago
24 Replies
thiago_justen
Valued Contributor III

Re: Variável parar de mostrar dias até virar o mês.

Agnaldo,

Mude suas variáveis da seguinte maneira:

vMesAnt =AddMonths(Makedate(year(today()), month(today()),MonthStart (today ())), -1)


vMesAtual =Makedate(year(today()),month(today()),MonthEnd (today ()))


Abs e Sucesso!!

Thiago Justen Teixeira Gonçalves
WhatsApp: 24 98152-1675
Skype: justen.thiago
thiago_justen
Valued Contributor III

Re: Variável parar de mostrar dias até virar o mês.

Na verdade me equivoquei na resposta. Se queres manter o período de avaliação de 25 a 24, faça assim:

vMesAnt =If (Day (today ())>25,

Makedate(year(today()), month(today()),25),

AddMonths(Makedate(year(today()), month(today()),25), -1))


vMesAtual = If(Day (today ())>25,

AddMonths(Makedate(year(today()), month(today()),24), 1),

Makedate(year(today()),month(today()),24)

)


Thiago Justen Teixeira Gonçalves
WhatsApp: 24 98152-1675
Skype: justen.thiago
agnaldoneves
Valued Contributor

Re: Variável parar de mostrar dias até virar o mês.

Thiago o valor bateu coloquei a data acima no dia 26/03/2018

Preciso que fique no titulo a data para correspondentes.

Tem alguma sugestão:

='Venda : '&vMesAnt &' a '& vMesAtual

2018-03-26_08-47-55.png

2018-03-26_08-48-12.png

thiago_justen
Valued Contributor III

Re: Variável parar de mostrar dias até virar o mês.

Coloque na expressão do título o seguinte:

='Venda : '& $(vMesAnt) &' a '& $(vMesAtual)


O dollar expansion deve resolver aí.


Thiago Justen Teixeira Gonçalves
WhatsApp: 24 98152-1675
Skype: justen.thiago
agnaldoneves
Valued Contributor

Re: Variável parar de mostrar dias até virar o mês.

Ficou alguma errado.

qvw acima

2018-03-26_09-01-44.png

agnaldoneves
Valued Contributor

Re: Variável parar de mostrar dias até virar o mês.

Thiago, Cara depois que o cliente pediu isso me deu um nó

Agora preciso criar duas variaveis: com o Ano Anterior. do mesmo jeito das varíaveis que você fez.

Mas trazendo

vMesAnoAnt =If (Day (today ())>25,

Makedate(year(today()), month(today()),25),

AddMonths(Makedate(year(today()), month(today()),25), -1))


vMesAnoAtual = If(Day (today ())>25,

AddMonths(Makedate(year(today()), month(today()),24), 1),

Makedate(year(today()),month(today()),24)

)


Como ficaria...


2018-03-26_08-59-48.png

Set Analysis simples:

Sum({$<Ano ={$(=Year( addmonths( today() ,-12)))},Mes={$(=Month( addmonths(  today() ,-12)))},

[Movimento_Tipo_Operacao]={'DEV','VND','VPC','VEF','FPV','CVE','DVF'},[Dt_Passou1]={'0'} >}Preco_Final)

thiago_justen
Valued Contributor III

Re: Variável parar de mostrar dias até virar o mês.

Como estão os resultados das suas variáveis?

Veja se isso resolve:

='Venda : '& Date($(vMesAnt)) &' a '& Date($(vMesAtual))

Thiago Justen Teixeira Gonçalves
WhatsApp: 24 98152-1675
Skype: justen.thiago
thiago_justen
Valued Contributor III

Re: Variável parar de mostrar dias até virar o mês.

Editado:

Para as variáveis com os anos faria assim (considerando 25/03/2017 a  24/03/2018, por exemplo):

vMesAnoAnt =If (Day (today ())>25,

AddYears(Makedate(year(today()), month(today()),25),-1),

AddYears(AddMonths(Makedate(year(today()), month(today()),25), -1),-1))


vMesAnoAtual = If(Day (today ())>25,

AddMonths(Makedate(year(today()), month(today()),24), 1),

Makedate(year(today()),month(today()),24)

)


No set analysis faria assim:


Sum({$<Ano ={">=$(=Max(Today())-1)"},

[Movimento_Tipo_Operacao]={'DEV','VND','VPC','VEF','FPV','CVE','DVF'},[Dt_Passou1]={'0'} >}Preco_Final)

Thiago Justen Teixeira Gonçalves
WhatsApp: 24 98152-1675
Skype: justen.thiago
agnaldoneves
Valued Contributor

Re: Variável parar de mostrar dias até virar o mês.

Só conseguir fazendo assim>direto

='Data de :'&If (Day (today ())>25,

Makedate(year(today()), month(today()),25),

AddMonths(Makedate(year(today()), month(today()),25), -1)) &' Até '&

If(Day (today ())>25,

AddMonths(Makedate(year(today()), month(today()),24), 1),

Makedate(year(today()),month(today()),24)

)

2018-03-26_09-17-25.png