Ver Mensaje Individual
  #1  
Antiguo 17-05-2007
andresenlared andresenlared is offline
Miembro
 
Registrado: oct 2003
Posts: 153
Reputación: 21
andresenlared Va por buen camino
Question Exportar a TXT-Mejorar rendimiento

Saludos.

Necesito mejorar el rendimiento al exportar datos de un Objeto SimpleDataset de los IBexpert, este objeto se crea en runtime, y no se conocen los campos totales de la consulta. en este momento estoy haciendo un recorrido sobre el resultado de la consulta y un ciclo interno que me indica los campos y los valores los capturo en una cadena que luego la asigno al archivo. El proceso es muy lento...si conocen un metodo mas rapido o algo parecido al BUlk pero para exportar, porque siempre los datos que se recuperan estan entre los 200000 y millon.

Muchas gracias por su valiosa ayuda.


Código Delphi [-]
procedure TfrmGenerador.salvar_txt(datos: Tdataset);
var
 i,j:integer;
 archivo: Textfile;
 registro: String;
begin
  DBGrid1.Columns.SaveToFile('c:\plano.txt');
  AssignFile(archivo,ExtractFileDir(Application.ExeName) + '\tmp\Datos.txt');
  Rewrite(Archivo);
  datos.Prior;
  for i:=0 to datos.RecordCount-1 do
     begin
     registro:='';
       for j:=0 to datos.FieldCount-1 do
         if j=datos.FieldCount-1  then
           registro:=registro+VarToStr(datos.Fields[j].Value)
         else
           registro:=registro+VarToStr(datos.Fields[j].Value)+',';
       writeln(archivo,registro);
       datos.Next;
     end;
     CloseFile(archivo);
     ShowMessage('Archivo Exportado');
end;

Última edición por andresenlared fecha: 17-05-2007 a las 23:05:39. Razón: no se indico la base de datos utilizada y el codigo quedo resaltado como php y e sdelhi
Responder Con Cita