Delphi - Una rutina que...

 
Vista:

Una rutina que...

Publicado por Juan Osuna (2 intervenciones) el 23/04/2003 17:37:03
Hola a todos y gracias por leer esto. Para empezar tengo 2 meses programando en delphi, y justo ahora se me presenta un problema, estoy utilizando delphi 7 e interbase 6.5 hice un programa para capturar inventarios, todo esta bien grabo, borro actualizo, modifico etc., pero ahora me veo en la necesidad de agregar mas registros desde un disco, entonces ocupo una rutina ( que por el momento no se me ocurre nada, es un momento como el de todo programador, se me cerro la cabeza u no tengo ninguna idea fresca) la rutina que ocupo es para subir del disco a la base de datos aquellos rgistros que no esten, y los que si esten no tomarlos en cuenta.

La verdad no veo ni por donde comenzar laa rutina espero me ayuden un poco, desde el disco traigo una base de datos y es la que primero tengo que comparar con los datos que ya tengo y si no esta insertarlos, si esta pasarme al siguiente registro.

Gracias a todos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Una rutina que...

Publicado por Ernesto De Spirito (706 intervenciones) el 23/04/2003 18:51:30
Simplemente recorres la tabla de la que quieres importar, y por cada registro te fijas si está o no está en la tabla Interbase, y en caso negativo agregas un registro en la tabla de Interbase copiando los datos del registro de la tabla de la que importas.

Ejemplo simplificado:

Table1.First;
while not Table1.EOF do
begin
if not IBTable1.Locate('CampoClave1;CampoClave2', VarArrayOf([Table1CampoClave1.AsVariant, Table1CampoClave2.AsVariant]), [loCaseInsensitive]) then
begin
IBTable1.Append;
IBTable1Campo1.Value := Table1Campo1.Value;
IBTable1Campo2.Value := Table1Campo2.Value;
..........
IBTable1CampoNValue := Table1CampoNValue;
IBTable1.Post;
end;
Table1.Next;
end;

Espero que te sirva.

Ernesto De Spirito
http://www.latiumsoftware.com/es/index.php
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar