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

Ajuda com Filtro de Data

Boa tarde Amigos,

Tenho um campo de DATA que está numérico no formato YYYYMM.

Utilizei a expressão para dimensão =date(date#(Max(DATA_BASE_FINAL),'YYYYMM'),'MMM/YY') e me retornou corretamente a data Out/18.

Porém estou querendo colocar ela dentro de um set analysis dessa maneira =SUM({<DATA_BASE_FINAL={"$(=date(date#(Max(DATA_BASE_FINAL),'YYYYMM'),'MMM/YY'))"}>}SDB_ATUAL)/1000000 e está me retornando zerado.

Existe algum erro na expressão?

Obrigado a todos!

Labels (3)
18 Replies
antoniodneto
Creator II
Creator II
Author

A gente na verdade usa o SAS para criar esses cubos que irão para o Qlik, então a base já está toda tratada, o que eu faço é subir no assistente nem passo pelo editor de script.

 

Nesse caso como eu deveria fazer?

antoniodneto
Creator II
Creator II
Author

Nilton no caso a base foi gerada em SAS pois fazemos todos os tratamentos na ferramenta.

Ao subir no click não passo nem pelo editor uso o assistente mesmo.

 

Nessa caso como devo proceder?

 

Abraço!

antoniodneto
Creator II
Creator II
Author

Carreguei a base e fui no editor.

criei uma nova página e coloquei assim:

Load
MAX(DATA_BASE_FINAL) as MaxDate

Resident [T691377_IFRS_DIN_HISTORICO];

LET vMaxDate = Peek('MaxDate');

LOAD
if(DATA_BASE_FINAL = $(MaxDate), SDB_ATUAL, SDB_ANT) as SDB_FINAL

Resident [T691377_IFRS_DIN_HISTORICO];

Porém ao carregar retornou o erro:

Ocorreram os seguintes erros:
Error in expression: ')' expected
 
O erro ocorreu aqui:
LOAD if(DATA_BASE_FINAL = , SDB_ATUAL, SDB_ANT) as SDB_FINAL Resident [T691377_IFRS_DIN_HISTORICO]
 
Ocorreram os seguintes erros:
Error in expression: ')' expected
 
O erro ocorreu aqui:
?
fernando_tonial
Partner - Specialist
Partner - Specialist

Nome da variável errado.

Load 
MAX(DATA_BASE_FINAL) as MaxDate

Resident [T691377_IFRS_DIN_HISTORICO];

LET vMaxDate = Peek('MaxDate');

LOAD 
if(DATA_BASE_FINAL = '$(vMaxDate)', SDB_ATUAL, SDB_ANT) as SDB_FINAL

Resident [T691377_IFRS_DIN_HISTORICO];

 

Don't Worry, be Qlik.
Thiago_Justen_

Antonio,

O max requer uma cláusula group by...

 

Load 

UMADIMENSAO,
MAX(DATA_BASE_FINAL) as MaxDate

Resident [T691377_IFRS_DIN_HISTORICO] Group By UMA_DIMENSAO;

 

Max Function - Qlik Help

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
antoniodneto
Creator II
Creator II
Author

Olá Fernando, Nilton

Deu certo agora a carga dos arquivos, trouxe o SUM desse campo novo SDB_FINAL mas parece que ele está travado trazendo todos os valores do mês, e também trazendo os filtros que eu preciso por exemplo:

sum({<MACRO={'MESMO ESTAGIO'},MOTIVO={'Continua Stage 1'},MOTIVO_2={'Amortiza Saldo'}>}SDB_FINAL)/1000000

é a mesma coisa que se eu tivesse trazendo somente o SUM(SDB_FINAL).

Obrigado!

antoniodneto
Creator II
Creator II
Author

Thiago,

Não funcionou.

Acredita que exista outro meio para solucionar esse tema?

Abraço!

Clever_Anjos
Employee
Employee

A questão é que um Set Analysis não é calculado para cada linha.

Ele é calculado antes de expandir os dados para o gráfico.

Tenta explicar por favor qual regra de negócio que você quer fazer, fica mais fácil

Clever_Anjos
Employee
Employee

Uma solução rápida seria (se eu entendi sua regra de negocio corretamente

(

sum({<MACRO={'MESMO ESTAGIO'},MOTIVO={'Continua Stage 1'},MOTIVO_2={'Amortiza Saldo'},DATA_BASE_FINAL={'$(=MAX(DATA_BASE_FINAL))'}>}SDB_ATUAL) +

sum({<MACRO={'MESMO ESTAGIO'},MOTIVO={'Continua Stage 1'},MOTIVO_2={'Amortiza Saldo'},DATA_BASE_FINAL={'$(=MAX(DATA_BASE_FINAL))'}>}SDB_ANT) ) / 1000000