Identifica tipo do campo

11/08/2004

Tenho uma função na qual passo o campo da query e gostaria de identificar o tipo de campo...

if s_campo = asstring then
showmessage(´Campo é string)
else if s_campo = asinteger then
showmessage(´Campo é inteiro)
....

isto é possivel ? Procurei em tópicos anteriores e nao consegui...

Alguem pode me ajudar ? Uso o IBX x Firebird.

Grato


Midas

Respostas

11/08/2004

Vinicius2k

Colega,

Eu trabalho com filtros interativos onde preciso desta identificação para trabalhar a instrução SQL e eu utilizo algo +/- assim...
procedure VerificarTipo (aTField: TField);
var FieldType: String;
begin
  FieldType:= aTField.ClassName;
  if (FieldType = ´TStringField´)     or
     (FieldType = ´TWideStringField´) then
    begin
     { É Texto }
    end;
  if (FieldType = ´TDateField´)     or
     (FieldType = ´TDateTimeField´) or
     (FieldType = ´TTimeField´)     then
    begin
     { É Data / Data/Hora }
    end;
  if (FieldType = ´TIntegerField´)  or
     (FieldType = ´TSmallIntField´) or
     (FieldType = ´TLargeintField´) then
    begin
     { É Inteiro }
    end;
  if (FieldType = ´TFloatField´)    or
     (FieldType = ´TCurrencyField´) or
     (FieldType = ´TBCDField´)      or
     (FieldType = ´TFMTBCDField´)   then
    begin
     { É Numérico ou Valor }
    end;
end;


Espero ter ajudado...
T+


Responder Citar

11/08/2004

Midas

Vinicius....

Muito obrigado companheiro, a dois dias procurei pela resposta....
Ficou perfeito...

Muito obrigado.

[]´s que Deus o Abençoe


Responder Citar