Formatar QRExpr no Delphi
Pessoal, preciso formatar um componente QRExpr no delphi. Mas é uma data e não sei como fazer. Eu trouxe a data do SQL então veio assim: [2016-12-01]. Preciso que fique padrão: [01/12/2016].
Se alguém puder ajudar eu agradeço.
Se alguém puder ajudar eu agradeço.
Matheus Gomes
Curtidas 0
Respostas
Ruy Salles
01/02/2016
Após o open da sua query, coloque a seguinte linha:
(DataModule1.Query1.FieldByName('seucampo') as TDateTime).displayformat := 'dd/MM/yyyy';
//DataModule1.Query1 <-- Seu objeto de retorno dos dados do banco
Declare DB na cláUsula USES
Espero ter ajudado
(DataModule1.Query1.FieldByName('seucampo') as TDateTime).displayformat := 'dd/MM/yyyy';
//DataModule1.Query1 <-- Seu objeto de retorno dos dados do banco
Declare DB na cláUsula USES
Espero ter ajudado
GOSTEI 0
Matheus Gomes
01/02/2016
Obrigado pela ajuda, mas não deu certo cara. Meu objeto de retorno é uma ADOQuery.
(oQuery.FieldByName('DATA') as TDateTime).DisplayFormat := 'dd/MM/yyyy';
Dá erro. Operator not applicable this operand type.
(oQuery.FieldByName('DATA') as TDateTime).DisplayFormat := 'dd/MM/yyyy';
Dá erro. Operator not applicable this operand type.
GOSTEI 0
Ruy Salles
01/02/2016
Uso esta instrução com TADOQuery sem problemas, mas vamos ver o que pode ser:
a) O tipo do campo no banco de dados é DATE?
b) A instrução está após o open da Query?
c) Você declarou a cláusula DB?
Aguardo retorno
a) O tipo do campo no banco de dados é DATE?
b) A instrução está após o open da Query?
c) Você declarou a cláusula DB?
Aguardo retorno
GOSTEI 0
Natanael Ferreira
01/02/2016
Experimente alterar seu código.
Troque:
Por isto:
Troque:
(oQuery.FieldByName(´DATA´) as TDateTime).DisplayFormat := ´dd/MM/yyyy´;
Por isto:
TDateTimeField(oQuery.FieldByName(´DATA´)).DisplayFormat := ´dd/MM/yyyy´;
GOSTEI 0
Matheus Gomes
01/02/2016
Obrigado aí galera mas resolvi de outra forma, converti no Select mesmo. Resolvido.
GOSTEI 0