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?