Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
Not applicable

Como negar uma data no script ao ler um arquivo qvd.

Pessoal,

Preciso ler uma arquivo qvd e negar uma data. No entanto, estou encontranto algumas dificuldades. Alguem poderia me dar uma dica de como posso fazer isso?

Em uma das bases o formato é o tradicional: 15/09/2013 por exemplo. Nesse caso em uma base com um ano de informação qual o codigo eu devo inserir no script para negar um mes? Se tenho de janeiro a setembro de 2013 como faço para negar setembro por exemplo?

Um outro problema que tenho, e que em uma das bases a data esta quebrada por campos. Tenho um campo para dia, outro para mes e outro para ano. Como devo proceder para negar nesse caso tabem?


Agradeço a ajuda de todos.

Tags (1)
1 Solution

Accepted Solutions
rphpacheco
Contributor III

Re: Re: Como negar uma data no script ao ler um arquivo qvd.

Bom, podes colocar separadamente, Ex:
Where
Date(MakeDate(Ano,Mes),'MMM/YYYY') <> 'set/2013'
And Date(MakeDate(Ano,Mes),'MMM/YYYY') <> 'out/2013';

Ou fazer um load do load pegando o campo já consolidado e incluir um match, ex:

Where Not Match([Mês e Ano],'jan/2013','fev/2013') ;

Dê uma olhada nas duas opções no QVW exemplo que está anexo.

Para a segunda pergunta, se o campo de data for padrão, trazendo apenas o primeiro dia do mês + ano, aí você pode usar o Not Match(Data,'01/09/2013','01/10/2013'). Mas certifique-se de como está vindo esta data da sua base

Ah, não esquece de marcar a resposta como certa

Abraços!

7 Replies
rphpacheco
Contributor III

Re: Como negar uma data no script ao ler um arquivo qvd.

Utilize a cláusula Where para fazer esta negação

EX:

Load

*

From ...

Where Mês <> 'Set';

Not applicable

Re: Como negar uma data no script ao ler um arquivo qvd.

Raphel,

Para bases com mais de um ano de informação, devo colocar o ano tambem?

rphpacheco
Contributor III

Re: Como negar uma data no script ao ler um arquivo qvd.

Sim, caso contrário ele irá retirar todos os meses ('Set') da seleção.

Abraço!

Not applicable

Re: Como negar uma data no script ao ler um arquivo qvd.

Raphael,

seria o codigo abaixo? dessa forma ele esta detonando todo o ano de 2013.

[MES ENTRADA],

    
[ANO ENTRADA],

    
PLATAFORMA,

    
Mes,

    
Ano,

    
COD_FILIAL,

    
FILIAL_OU_CD,

    
TIPO_FILIAL,

    
MIX2,

    
MIX,

    
LINHA,

    
FORNECEDOR,

    
FABRICANTE,

    
COD_PRODUTO,

    
PRODUTO,

    
QTDE_COMPRA,

    
VLR_LIQUIDO

FROM

C:\Users\joao.silva\Desktop\compras\Nova_Base\ME\ME2.qvd

(
qvd)



Where Mes <> 9 and Ano <> 2013;

rphpacheco
Contributor III

Re: Como negar uma data no script ao ler um arquivo qvd.

Crie um campo desta forma:

Date(MakeDate(Ano, Mes),'MMM/YYYY')                    as [Mês e Ano]

No seu Where você coloca assim:

Where

     Date(MakeDate(Ano, Mes),'MMM/YYYY') <> 'set/2013';

Not applicable

Re: Como negar uma data no script ao ler um arquivo qvd.

Raphael,

funcionou cara, perfeito.

So mais duas perguntinhas. rs

Para eu colocar um periodo de dois meses ou mais como eu poderia fazer? Tentei colocar um and e nao funcionaou.

Outra coisa, para um campo que tenha o formato padrao, '01/10/2013' por exemplo faria da mesma forma?

Valeu cara e desculpe o incomodo.

rphpacheco
Contributor III

Re: Re: Como negar uma data no script ao ler um arquivo qvd.

Bom, podes colocar separadamente, Ex:
Where
Date(MakeDate(Ano,Mes),'MMM/YYYY') <> 'set/2013'
And Date(MakeDate(Ano,Mes),'MMM/YYYY') <> 'out/2013';

Ou fazer um load do load pegando o campo já consolidado e incluir um match, ex:

Where Not Match([Mês e Ano],'jan/2013','fev/2013') ;

Dê uma olhada nas duas opções no QVW exemplo que está anexo.

Para a segunda pergunta, se o campo de data for padrão, trazendo apenas o primeiro dia do mês + ano, aí você pode usar o Not Match(Data,'01/09/2013','01/10/2013'). Mas certifique-se de como está vindo esta data da sua base

Ah, não esquece de marcar a resposta como certa

Abraços!