Pegar o Tipo de uma Variant

Delphi

09/01/2009

Pessoal,

Estou com um problema. Em uma função é passado como paramentro 2 arrays, uma do tipo string para o nome dos campos e outra do tipo Variant para os valores dos campos, so que quando eu vou gravar na tabela os valores preciso saber qual o tipo de cada um valor da array variant.

Como posso fazer isto, estou usando o componente TADOQuery e passando por parametro ele não identifica automáticamente o tipo do valor que to passando no parametro, tenho que definir com um DataType antes.

Obrigado e toda ajuda é bem vinda.


Garoto Programa

Garoto Programa

Curtidas 0

Respostas

Johnny-walker

Johnny-walker

09/01/2009

vc terá de usar RTTI para isto, de uma olhada na vcl na definição de variant...

Acredito tb que vc precisará de TypeInfo para retornar as informações...

achei alguma informaçõa que poderá te dar uma luz...

http://www.blong.com/Conferences/BorConUK98/DelphiRTTI/CB140.htm

se quiser obter mais informações de uma procurada no google com as seguintes palavras chaves delphi ´delphi return variant type RTTI´




bye


GOSTEI 0
Fabriciocolombo

Fabriciocolombo

09/01/2009

uses a função VarType da Unit Variants. Exemplo:


 var
  AValue: Variant;
begin
  case VarType(AValue) of
    varInteger: (...);
    varDouble: (...);
    varDate: (...);
    varNull: (...);
  end;



GOSTEI 0
POSTAR