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

Comparar valores com o mesmo período no ano anterior

Tenho a seguinte tabela

Ano MêsValor
jan 2018

1.000,00

fev 20181.200,00
mar 20181.150,00

Estou tentando criar uma coluna adicional com a variação em relação ao mesmo período anterior, no caso gostaria que se compara-se

jan 2018 x jan 2017 | fev 2018 x fev 2017 assim sucessivamente...

Tentei utilizar a seguinte fórmula na nova coluna na tabela.

sum({<[Ano Mês]={'$(=num(AddMonths([Ano Mês], -12)))'}>} Valor)

Porém não está funcionando a fórmula, ela me retorna sempre zero.

Como poderia proceder, para poder fazer essa comparação?

Labels (3)
6 Replies
pedrolyra
Contributor III
Contributor III

Isaias,

Peguei em uma das aplicações que está funcionando.

Aqui eu utilizo a data inteira e evito que leve em conta ano ou mês na aplicação.

COUNT({$< [DATA.Cld.Ano]=,[DATA.Cld.Mês]=,[DATA.Cld.Data]

=  {">=$(= makedate(year(addmonths(max([DATA.Cld.Data] ),-12)),1,1))

<=$(= makedate(year(addmonths(max([DATA.Cld.Data] ),-12)),month(max([DATA.Cld.Data] )),day(max([DATA.Cld.Data] ))))"} >} IDCOMPRA)

isaiasdd
Creator
Creator
Author

Pedro,

Em minha aplicação não tenho o campo "Data" somente "Mês" e "Ano Mês", assim não consigo fazer uma comparação utilizando a data inteira.

Anonymous
Not applicable

Bom dia Isaias

Provavelmente o seu cálculo não esteja funcionando devido aos valores comparados serem diferentes, isole esta parte "num(AddMonths([Ano Mês], -12))" do seu cálculo e veja se o formato do retorno é igual ao valor do campo [Ano Mês].

Acredito que com essa resposta vc conseguirá resolver o seu problema.


Abraços,

pedrolyra
Contributor III
Contributor III

Utiliza o campo ANO/MES no lugar da data completa, testei aqui na minha aplicação e funcionou.

pedrolyra
Contributor III
Contributor III

ficou assim o meu:

COUNT({$<[DATA.Cld.Ano Mês] =  {">=$(= makedate(year(addmonths(max([DATA.Cld.Ano Mês]),-12)),1,1)) <=$(= makedate(year(addmonths(max([DATA.Cld.Ano Mês]),-12)),month(max([DATA.Cld.Ano Mês])),day(max([DATA.Cld.Ano Mês]))))"} >} IDCOMPRA)

mbrenzan
Contributor III
Contributor III

Tente assim:

Anterior: Sum({$<DT_ANO= {$(=Year(DT_MESANO)-1) }>}Valor))

É importante que o campo MESANO esteja num formato válido para data.

Coordenador de BI - Hospital Santa Casa de Maringá