Skip to main content
Announcements
Qlik Community Office Hours, March 20th. Former Talend Community users, ask your questions live. SIGN UP
cancel
Showing results for 
Search instead for 
Did you mean: 
Jônatas
Contributor III
Contributor III

Ajuda com Script

boa tarde! Tenho uma Tabela Seguinte revisado_sim_nao.png

 

Sempre que houver Dados no Campo Data_Revisao, Deve-se repetir os mesmos Dados no Campo Nova_Data, para os documentos de mesmo número, mudando SOMENTE O Último Número. A lógica que estou usando é: 

Se (IsNull ([Nova_Data]), 'Não', 'Sim') as Revisado?

Utilizando Dessa forma, Não está ficando correto! Quando o campo da coluna Nova_Data não tem data, não está marcando com "Não".

Estou utilizando QlikView

Alguém poderia me Ajudar? Obrigado!

1 Solution

Accepted Solutions
afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP


Tabela_Tmp:
LOAD
   NumDoc,
   left(NumDoc,8) as NumDoc_Raiz,
   DtRevisao
Inline [
NumDoc ,DtRevisao
223145670 , 10/02/2019
223145671 ,
223145672 ,
800642780 ,
332215140 , 05/06/2019
600558790 ,
60055879 ,
];

Tabela_Final:
LOAD
   NumDoc,
   NumDoc_Raiz,
   DtRevisao,
   if(if(NumDoc_Raiz = Previous(NumDoc_Raiz),Peek(New_Data),DtRevisao) >0,'Sim','Não') as Revisao,
   if(NumDoc_Raiz = Previous(NumDoc_Raiz),Peek(New_Data),DtRevisao) as New_Data
Resident Tabela_Tmp Order by NumDoc_Raiz,NumDoc;
//
Drop Table Tabela_Tmp;

furtado@farolbi.com.br

View solution in original post

15 Replies
victorbertoldo
Contributor II
Contributor II

Não deveria ser?

 

IF(IsNull([Data_Revisao]), 'Não', 'Sim') as Revisado

 

Se for a Nova_Data mesmo, faz o teste com o IF(len(Nova_Data)>0,'Sim','Não') as Revisado.

afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP

Opa....ve se ajuda

 

2019-07-25 23_45_53-QlikView x64 - [F__tmp_New_Data.qvw_].png


Tabela_Tmp:
LOAD
   Num_Documento,
   date#(Data_Revisao,'DD/MM/YYYY hh:mm') as Data_Revisao,
   left(Num_Documento,12) as Num_Documento_Raiz
Inline [
Num_Documento , Data_Revisao
038326GHI0000 ,
038326GHI0001 ,
080041ABX0000 , 22/03/2019 13:00
080041ABX0001 ,
080041ABX0002 ,
080041ABX0003 ,
];

Tabela:
LOAD
   Num_Documento,
   Data_Revisao,
   Num_Documento_Raiz,
   if(Num_Documento_Raiz=Previous(Num_Documento_Raiz),rangemax(peek(Data_Revisao),peek(New_Data)),Data_Revisao) as New_Data
Resident Tabela_Tmp;
//
DROP Table Tabela_Tmp;

 

 

furtado@farolbi.com.br
Jônatas
Contributor III
Contributor III
Author

Bom dia, @afurtado ! Obrigado pela atenção! Ajuda sim e muito, porém preciso que tenha mais uma coluna com um campo de "Revisado", se tiver data no campo New_Data, marcar como revisado, se não, Não Revisado. O problema é que quando não tem data ele não marca como "Não Revisado" põe apenas um '-'. Poderia me ajudar? Obrigado!

Obs: Você me ajudou em outro post a desenvolver essa lógica, funcionou muito bem, porém não consegui acrescentar esse campo de "Não Revisado"

Jônatas
Contributor III
Contributor III
Author

Bom dia, @victorbertoldo !

O resultado foi o mesmo encontrado com outra lógica, dessa forma somente o "Revisado" aparece corretamente quando não é revisado ele aparece "-".

victorbertoldo
Contributor II
Contributor II

Eu fiz o teste dessa maneira e deu certo:

Tabela_Tmp:
LOAD 
    NumDoc,
    left(NumDoc,8)			as NumDoc_Raiz,
    DtRevisao
Inline [
NumDoc    ,DtRevisao
223145670 , 10/02/2019
223145671 ,
223145672 ,
800642780 ,
332215140 , 05/06/2019
600558790 ,
60055879  ,
];

Tb:
Load *,
	if(len(DtRevisao)>0,'Sim','Não') as Revisado;
Load 
	NumDoc,
    NumDoc_Raiz,
    DtRevisao    
Resident Tabela_Tmp;    

Drop Table Tabela_Tmp;

 

Veja se isso atende.

afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP

2019-07-27 17_24_01-Qlik Sense Desktop.png

furtado@farolbi.com.br
Jônatas
Contributor III
Contributor III
Author

Boa tarde, @afurtado ! Poderia por gentileza me enviar o código por aqui ou o arquivo .qvw? Não consigo abrir essa extensão .qvf

 

Obrigado!!! 

afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP


Tabela_Tmp:
LOAD
   NumDoc,
   left(NumDoc,8) as NumDoc_Raiz,
   DtRevisao
Inline [
NumDoc ,DtRevisao
223145670 , 10/02/2019
223145671 ,
223145672 ,
800642780 ,
332215140 , 05/06/2019
600558790 ,
60055879 ,
];

Tabela_Final:
LOAD
   NumDoc,
   NumDoc_Raiz,
   DtRevisao,
   if(if(NumDoc_Raiz = Previous(NumDoc_Raiz),Peek(New_Data),DtRevisao) >0,'Sim','Não') as Revisao,
   if(NumDoc_Raiz = Previous(NumDoc_Raiz),Peek(New_Data),DtRevisao) as New_Data
Resident Tabela_Tmp Order by NumDoc_Raiz,NumDoc;
//
Drop Table Tabela_Tmp;

furtado@farolbi.com.br
Jônatas
Contributor III
Contributor III
Author

Perfeito, @afurtado ! Deu certo! Muito obrigado!!!!