display format campo data

Delphi

16/07/2008

Pessoal, tenho um relatorio gerado no quickreport e estou utilizando QRDBText para mostra campo tipo data da minha tabela, porem, se coloco na propriedade mask desde QRDBText assim DD/MM/YYYY, se na tabela o campo de data for nulo, no relatorio me mostra 30/12/1899 e deveria nao aparecer nada. como resolver isso

ja tentei colocar na propriedade displayformat do Tfield do campo, so que nao consigui obter a data, ai todos os campos ficam no jeito que coloco a mascara la na propriedade, ex, se coloco no displayformat 99/99/9999, no relatorio as datas tb so aparecem 99/99/9999 e nao a data da tabela.


Aguardo


Ieustaquio

Ieustaquio

Curtidas 0

Respostas

Joaoshi

Joaoshi

16/07/2008

Colega, já tentou não colocar nada na propriedade mask do QRDBText ?


GOSTEI 0
Brunodsr

Brunodsr

16/07/2008

Cara, o sistema imprime 30/12/1899 por que essa é a data ´ZERO´ do formato date.

Quando vc da um formatdatetime passando esse formato, ele converte o teu zero ou nulo nisso daí veio.

Sugiro que vc trate o campo diretamente na query usando um decode ou case para definir o retorno e impri-lo como texto mesmo.

Tipo:

Select decode(data,null,´´,To_Char(data,´dd/mm/yyyy´)) from tabela

Daí ele retorna logo string de uma vez. Outra solução é usar o beforeprint p/ saber o q vai ser impresso e tratar.

Espero ter ajudado


GOSTEI 0
POSTAR