Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Uma variável para duas datas

Boa tarde, alguém consegue me ajudar?

Preciso colocar uma variável na fórmula abaixo para que eu possa obter os resultados automaticamente sem ter que criar várias expressões.

Tenho que ter a posição no final do mês dos valores em aberto e gostaria de substituir a data "31/01/13" por uma variável de data auxiliar.

(Atualmente tenho que ficar fazendo uma expressão para cada mês)

sum(if(date(DtEmissao,'DD/MM/YYYY')<= date('31/01/13','DD/MM/YYYY')

   and(date(DtRecbto,  'DD/MM/YYYY')>  date('31/01/13','DD/MM/YYYY')

  or isnull(DtRecbto)  or trim (DtRecbto)=''),  Valor ))

Abraço,

Rlb

4 Replies
rphpacheco
Creator III
Creator III

Boa tarde.

Você quer uma variável que te traga o último dia do mês? É isso?

Not applicable
Author

let ultimoDiaDoMes = monthend(today());

MonthEnd( data [, turno = 0] )

Retorna um valor correspondente à data/hora com o último milissegundo

da última data do mês que contém a data. O formato de saída

padrão será a configuração de DateFormat no script. Deslocamento

é um inteiro, em que o valor 0 indica o mês que contém a data. Os

valores negativos no deslocamento indicam meses precedentes e os

valores positivos indicam meses subseqüentes.

Exemplos:

monthend ( '2001-02-19' ) retorna '2001-02-28' com um valor

numérico subjacente correspondente a '2001-02-28 23:59:59.999'

monthend ( '2001-02-19', -1 ) retorna '2001-01-31' com um valor

sum(if(date(DtEmissao,'DD/MM/YYYY')<= $(ultimoDiaDoMes);

Not applicable
Author

Boa tarde,

Quero ter uma tabela auxiliar de data que ao selecionar Jan/13 ele me traga o resultado automaticamente na expressão. (a data seria sim a posição do último dia de cada mês)

felipe_dutra
Partner - Creator
Partner - Creator

Olá!

Pelo fórmula que você postou, creio que você precise disto:

Sum({<DtEmissao={"<=$(=MonthEnd(Max(DATA)))"}, DtRecbto={*}-{"<=$(=MonthEnd(Max(DATA)))"}>}Valor)

Alterar "DATA" pelo campo de data relacionado ao "Mês/Ano" que você selecionará.

A fórmula considera as "DtEmissao" <= ao último dia do "Mês/Ano" selecionado

e

desconsidera as "DtRecbto" <= ao último dia do "Mês/Ano" selecionado.

Abs,

Felipe