Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
luizclaudio
Contributor

String para data

Tenho uma planilha em excel onde as datas estão gravadas como 28032011

Tentei alterar isso para data no script utilizando:

Timestamp#(ULTALT,  'DD/MM/YYYY hh:mm:ss') AS ULT_ALTERACAO

ou ainda

Date#(ULTALT, 'DD/MM/YYYY hh:mm:ss') AS ULT_ALTERACAO

Porém o campo continua vindo no formato original quando carrego na tabela.

Alguma dica?

Abs

Luiz Cláudio

Tags (1)
1 Solution

Accepted Solutions
felipe_dutra
Contributor

Re: String para data

Luiz, Tente o seguinte:

Date(Date#(ULTALT, 'DDMMYYYY'), 'DD/MM/YYYY') AS ULT_ALTERACAO


Abs,

Felipe

7 Replies
egnaldo_sousa
Contributor II

Re: String para data

Tenta utilizar a seguine formula:

MAKEDATE(Left(ULTALT,2), MID(ULTALT,3, 2),MID(ULTALT,5, 2)) AS ULT_ALTERACAO

rphpacheco
Contributor III

Re: String para data

Boa tarde Luiz Claudio.

Isto acontece por que o QlikView está considerando este registro como um número inteiro e não como um campo de data formatada. Sendo assim a data de Hoje 11/08/2014 deveria vir como 41862, aí sim ele entenderia. No seu caso, acredito que utilizando o MakeDate você consiga o resultado esperado. Ficaria mais ou menos assim:

Date(MakeDate(Right(ULTALT, 4),Num(Left(Right(ULTALT,6),2)),If(Len(ULTALT) = 8, Left(ULTALT,2), Left(ULTALT,1))),'DD/MM/YYYY hh:mm:ss')

Abs.

felipe_dutra
Contributor

Re: String para data

Luiz, Tente o seguinte:

Date(Date#(ULTALT, 'DDMMYYYY'), 'DD/MM/YYYY') AS ULT_ALTERACAO


Abs,

Felipe

luizclaudio
Contributor

Re: String para data

Valeu amigos

As três respostas estão corretas... apenas escritas de forma diferente.

Como só posso assinalar uma fiz a opção pela resposta mais 'clean'...

Abraços

rphpacheco
Contributor III

Re: String para data

Bom dia Luiz.

Como é apresentada a data no xls quando temos por exemplo uma data como 01/08/2014?

Normalmente ela será apresentada como 1082014 pela conversão automática do Excel. A não ser que este dado esteja formatado como texto, pois senão terá que incluir uma tratativa para este caso

luizclaudio
Contributor

Re: String para data

Bom dia Raphael

Nesse caso, se trata de uma planilha que recebo para verificação de informações. Na planilha, as células estão no formato texto.

Postei a dúvida porque encontrei vários exemplos onde o tratamento da data era feito através do Timestamp e (não nego) fiquei com dúvida sobre a utilização do mesmo. Sabemos que existem inúmeras formas de se atingir determinado objetivo em programação, diferenciando-se justamente pela adequação quanto ao tempo de processamento, uso de memória, etc...

E o uso adequado é atingido pelo estudo e pela experiência no uso, certo?

Infelizmente ainda temos uma deficiência de literatura sobre o qlikview e isso acaba nos levando para o aprendizado "mão na massa"...rsrs

rphpacheco
Contributor III

Re: String para data

Entendo perfeitamente esta questão... A maioria dos casos (onde eu também me incluo) temos que aprender na marra mesmo!
Minha pergunta foi apenas para tentar entender o cenário do seu problema. Uma vez que temos muitas formas de resolução, é necessário também obter o maior número de informações para ajudar da melhor maneira possível.

Grande abraço!