Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

f_borges
New Contributor III

Condição de data

Boa tarde!

Estou fazendo um exemplo e quero cravar no código que quero tudo que for acima da data 20/09/2017 03:00:00.

Só que dessa forma não retorna nenhum valor:

Count({$<dtFechamentoh={'>20/09/2017 03:00:00'}>}ddtKey)

Alguem pode me dar alguma ideia?

Tags (1)
14 Replies
felipedl
Valued Contributor III

Re: Condição de data

Olá Fabiola,


Depende de como seus dados estão na questão da data, se a data estiver como string (texto) não irá conseguir fazer o set analysis em cima.

Veja se a sua data está alinhada a esquerda na celula de uma tabela simples, isso irá indicar se é texto (alinhado à esquerda) ou número / data (alinhamento à direita).

Com um código simples como o seguinte, carregando duas datas e valores:

x:

load * Inline

[

data,valor

42998,1 // corresponde ao dia 20/09/2017 no campo data

42999,2 // corresponde ao dia 21/09/2017 no campo data

];

NoConcatenate

dados:

Load

data+0.125 as data,

valor

Resident x;

drop table x;

E fazendo uma tabela com seu set analysis, eu pego apenas o segundo valor de data, conforme abaixo:

Sample.png

Sugiro que você faça uma formatação de data com date#(Campo,'DD/MM/YYYY hh:mm:ss') para que o campo vire uma data.

Felipe.

f_borges
New Contributor III

Re: Condição de data

Estou colocando na expressão, já tentei formatar usando date mas não deu certo.expressao.png

felipedl
Valued Contributor III

Re: Condição de data

Oi Fabiola,

A simples formatação pode não ter efeito no campo se ele for do tipo texto.

Você teria que transformar ele em uma data, com o Date#() para que o Qlik interprete o valor textual e transforme em uma data.

Ao invés de

Date([dtFechamento],'DD/MM/YYYY hh:mm:ss') as dtFechamento

na sua carga de dados, seria preciso fazer

Date#([dtFechamento],'DD/MM/YYYY hh:mm:ss') as dtFechamento

Você consegue disponibilizar o arquivo para poder ver o código?

Felipe.

f_borges
New Contributor III

Re: Condição de data

está exatamente desse jeito: Date([dtFechamento],'DD/MM/YYYY hh:mm:ss').

Obrigada pela dica. Vou tentar fazer como vc falou.

Highlighted
MVP
MVP

Re: Condição de data

Fabiola,

Tente com aspas duplas e reveja qual o formato exato do seu campo dtFechamentoh

Count({<dtFechamentoh={">20/09/2017 03:00:00"}>}ddtKey)


Aspas duplas - Pesquisa

Aspas simples - Literal

f_borges
New Contributor III

Re: Condição de data

Mesmo assim não funciona.

A camada 1 estou formatando a data conforme foi sugerido.

Na 2 não tem modificação

E na expressão, estou demonstrando como estou fazendo:camada1.pngcamda2.pngexpressao.png

MVP
MVP

Re: Condição de data

É importante você entender a diferença entre date#() e Date()

date#()  - Cria um campo data (numerico) partindo de um campo string e aplica a mascara padrão (lá no começo do script)

Date()   - Aplica uma mascara a um campo

A melhor maneira de verificar o formato de um campo é incluir ele "puro" em um filtro/lista

f_borges
New Contributor III

Re: Condição de data

Isso eu verifiquei, coloquei no eixo x o campo data ai aparece no formato DD/MM/YYYY hh:mm:ss , engraçado que quando eu coloco o sinal de igual ele funciona, mas quando coloco o sinal de maior ele não funciona.

Obrigada pelos ensinamentos Clever!

MVP
MVP

Re: Condição de data

Tenta colocar apenas assim

Count({<dtFechamento={">20/09/2017 03:00:00"}>} ddKey)