Ver Mensaje Individual
  #5  
Antiguo 22-12-2011
MartinS MartinS is offline
Miembro
NULL
 
Registrado: nov 2011
Ubicación: Villa Cacique - Argentina
Posts: 283
Reputación: 13
MartinS Va por buen camino
Hola Ecfisa:

El codigo que utilizo para hacer el paso de datos es el siguiente:
InterPres es la tabla paradox
IbSocios es la tabla firebird


Código Delphi [-]
  ProgressBar1.Max := InterPres.RecordCount; 
  InterPres.First;
  while Not InterPres.Eof do
  Begin
    Inc(i);
    ProgressBar1.Position := I;
    Application.ProcessMessages;
    IBSocios.Append;
    IBSociosID.AsInteger := InterPresId.AsInteger;
    IBSociosAPELLIDOS.AsString := InterPresApellidos.AsString;
    IBSociosNOMBRES.AsString := InterPresNombres.AsString;
    IbSociosFoto.Value := InterPresFoto.Value;
    ...
    ...
    IbSocios.Post;
    InterPres.Next;
  end;


Despues del final de InterPres hago el commit y tambien probe hacerlo cada 100 pero el resultado sigue siendo el mismo.

Luego descubri que la foto era lo que realmente hacia todo lento, asi que elimine esa instruccion del codigo anterior para cargar la base firebird y lo hizo bastante bien.
Ahora habia que agregarles la foto y utilice esto:


Código Delphi [-]
  InterPres.First;
  while Not InterPres.Eof do
  Begin
    Indice := InterPresId.AsInteger;
    IBSocios.Locate('Id',Indice,[]);
    IBSocios.Edit;
    IBSociosFOTO.Value := InterPresFoto.Value;
    IBSocios.Post;
    InterPres.Next;
  End;


Tambien lo hice mediante SQL con Update table pero no he logrado resultados.

Como he expresado en el mensaje anterior no seria problema que tarde 2 o 3 horas en hacerlo ya que seria una vez y nunca mas pero tengo mis dudas si va a terminar de pasar los 6500 o explotara la memoria en el intento

Gracias por las respuestas.


A modo de referencia: Ecfisa: nos separan solo 150 km de distancia... yo en villa cacique (pdo Benito Juarez)
Responder Con Cita