Tipos de Dados do TDBXReader

06/02/2013

1

Caros boa tarde !

Estou querendo otimizar a geração do JsonArray do mas não estou conseguindo detectar o tipo de campo de TDBXReader

Veja a função
var
DataSet: TDBXCommand;
Reader: TDBXReader;
Obj: TJSONObject;
I: Integer;
begin
Result := TJSONArray.Create;
DataSet := Connection.CreateCommand;
Obj := TJSONObject.Create;
try
DataSet.Text := 'SELECT '+
' BE_BAIRROS.*, '+
' BE_MUNICIPIOS.DSC_MUNICIPIO '+
'FROM BE_BAIRROS '+
'INNER JOIN BE_MUNICIPIOS '+
' ON BE_BAIRROS.ID_MUNICIPIO = BE_MUNICIPIOS.ID_MUNICIPIO';

Reader := DataSet.ExecuteQuery;

for I := 0 to Reader.ColumnCount - 1 do begin
Obj.AddPair(Reader.ValueType[I].Name,TJSONString.Create(Reader.ValueType[I].Name));
end;
Result.AddElement(Obj);

while Reader.Next do begin
Obj := TJSONObject.Create;
if Reader.ValueType[I].DataType = "Aqui eu queri detectar o tipo de campo" then
Obj.AddPair(Reader.ValueType[I].Name, TJSONString.Create(Reader.Value[I].GetString));
Result.AddElement(Obj);
end;
finally
FreeAndNil(DataSet);
end;
end;

Alguém pode me ajudar ?

Desde já agradeço.. Abraços
Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira