Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
daniel_vale
Contributor

Somar datas por período

Bom dia Comunidade!

Estou tentando fazer um set Analysis onde preciso a partir do meu campo DATA no calendário somar:

- Os valores desse mês - 03/2018

- Os valores do mês passado - 02/2018

- Os valores desse mês do ano passado - 03/2017

- Os valores do mês passado do ano passado - 02/2017

Podem me ajudar?

Tags (1)
11 Replies

Re: Somar datas por período

Perhaps this?

- Sum ({<Year = {$(=Max(Year)), Month = {$(=Max(Month))}}>} Sales)

- Sum ({<Year = {$(=Max(Year)), Month = {$(=AddMonths(Max(Month), - 1))}}>} Sales)

- Sum({<Year = {$(=Max(Year-1)), Month = {$(=Max(Month))}}}} Sales)

- Sum({<Year = {$(=Max(Year-1)), Month = {$(=Max(Month-1))}}}} Sales)

In fact, we have other ways to achieve this? Does this helps

daniel_vale
Contributor

Re: Somar datas por período

Thanks for the help but it did not work.

Re: Somar datas por período

When you say it is not working, That means - Your field holding Year-Month format. I would suggest you to split into 2 fields which called Year and Month (Which are numbers) should work above conditions

daniel_vale
Contributor

Re: Somar datas por período

Correct, the structure of my calendar looks like this:

Calendar:

Month(DataBase)          as Mês,

Year(DataBase)          as Ano

and making the expression the way it showed it was like this:

thiago_justen
Valued Contributor III

Re: Somar datas por período

Como o loveisfail bem disse, seu campo data está com formato MM/YYYY. O que seria interessante é criar um novo campo em script para utiliza-lo no set analysis que o Anil Badu já te passou:

Date(Date#([Finish Date],'MM/YYYYY'),'DD/MM/YYYY') as NOVA_DATA


Isso facilitaria o set analysis...

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

Re: Somar datas por período

Daniel,

Use esse campo DataBase (que suponho estar formatado dd/mm/yyyy) no set analysis que o Anil te passou.

Se você "dropa" esse campo no script seria legal mante-lo para facilitar o set...

Podes fazer com ele algo como:

Date(Floor(DataBase)) as DataBase

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

Re: Somar datas por período

May be try for first result expression?

Num(Month(DataBase)) as Mês,

Year(DataBase) as Ano

For Current one - Sum ({<Ano = {$(=Max(Ano)), Mês = {$(=Max(Mês))}}>} Sales)


daniel_vale
Contributor

Re: Somar datas por período

Ah sim, ele já está nesse formato com o floor.

thiago_justen
Valued Contributor III

Re: Somar datas por período

Nesse caso:

- Os valores desse mês - 03/2018

Sum({<DataBase={">=$(=MonthStart(Max(DataBase)))"}>}SEU_VALOR)

- Os valores do mês passado - 02/2018

Sum({<DataBase={">=$(=MonthStart(AddMonths(Max(DataBase),-1)))<=$(=MonthEnd(AddMonths(Max(DataBase),-1)))"}>}SEU_VALOR)


- Os valores desse mês do ano passado - 03/2017

Sum({<DataBase={">=$(=AddYears(MonthStart(Max(DataBase)),-1))<=$(=AddYears(MonthEnd(Max(DataBase)),-1))"}>}SEU_VALOR)

- Os valores do mês passado do ano passado - 02/2017

Sum({<DataBase={">=$(=AddYears(MonthStart(AddMonths(Max(DataBase),-1)),-1))<=$(=AddYears(MonthEnd(AddMonths(Max(DataBase),-1)),-1))"}>}SEU_VALOR)

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