Ver Mensaje Individual
  #8  
Antiguo 22-09-2010
TaaDow TaaDow is offline
Registrado
 
Registrado: sep 2010
Posts: 8
Reputación: 0
TaaDow Va por buen camino
Al Gonzales, gracias por contestar, cuando dejo el applyupdates adentro del while, es si termina de hacer el copiado, el problema es que se demora bastante, tengo asociado a la funcion solo una barra de progreso, y el boton que lanza la funcion, hago pruebas con 2000 registros y lo hace rapido, pero ya con esa carga, lo hace muy lento.
Código Delphi [-]
procedure TForm1.CopiarRegistro(sql_Origen :TSimpleDataSet; sql_Destino :TSimpleDataSet);
var
  lint_Cursor : Integer;
  x            : Integer;
begin

  sql_Destino.Open;
  sql_Origen.Open;

   self.cxProgressBar1.Clear;
  self.cxProgressBar1.Properties.Min:= 1;
  self.cxProgressBar1.Properties.Max:= sql_Origen.RecordCount;
  self.cxProgressBar1.Position:=1;

 while(not sql_Origen.Eof) do
  begin
        sql_Destino.Append ;

        for lint_Cursor := 0 to (sql_Destino.Fieldcount-1) do
             sql_Destino.fields[lint_Cursor].Value := sql_Origen.fields[lint_Cursor].Value;
        sql_Destino.Post;

        sql_Origen.Next;

        self.cxProgressBar1.Position:= self.cxProgressBar1.Position+1;
        self.cxProgressBar1.Refresh;
   
   end;
   sql_Destino.ApplyUpdates(-1);
 end;

es mi primer reto con delphi, no tengo el criterio o la suficiente experiencia para saber si es normal que se demore tanto, alguna sugerencia?
Responder Con Cita