Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

 
 
Herramientas Buscar en Tema Desplegado
  #4  
Antiguo 27-02-2007
Giniromero Giniromero is offline
Miembro
 
Registrado: may 2003
Ubicación: Madrid
Posts: 296
Poder: 24
Giniromero Va por buen camino
Hola,

tras las instrucciones que me disteis para usar ADO en Delphi 6, efectivamente he conseguido ver datos de la tabla en cuestion, el problema me surge cuando tengo que guardar datos, de una tabla ADO, a la de IB.

Me explicaré. Tengo este código:

Código:
//===============================
    //========Tomamos los datos desde access a la tabla TODO


    //=======copiamos los registros de una tabla a la otra
    FrmDmodule.TbADOAsisImport.first;
    //mientras no llegue al final de los registros
    WHILE not FrmDmodule.TbADOAsisImport.EOF DO BEGIN
     
  
      With FrmDmodule.TbIBAsistencia_todo do begin

        FrmDmodule.TbIBAsistencia_todo.Insert;


        FieldByName('CODIGO').Value := FrmDmodule.TbADOAsisImportCODIGO.Value;
        FieldByName('GRUPO').Value := FrmDmodule.TbADOAsisImportGRUPO.Value;
        FieldByName('FECHA').Value := FrmDmodule.TbADOAsisImportFECHA.Value;
        FieldByName('NUMALU1').Value := FrmDmodule.TbADOAsisImportNUMALU1.Value;
        FieldByName('ASISTENCIA1').Value := FrmDmodule.TbADOAsisImportASISTENCIA1.Value;


        FieldByName('NUMALU2').Value := FrmDmodule.TbADOAsisImportNUMALU2.Value;
        FieldByName('ASISTENCIA2').Value := FrmDmodule.TbADOAsisImportASISTENCIA2.Value;

        FieldByName('NUMALU3').Value := FrmDmodule.TbADOAsisImportNUMALU3.Value;
        FieldByName('ASISTENCIA3').Value := FrmDmodule.TbADOAsisImportASISTENCIA3.Value;

        FieldByName('NUMALU4').Value := FrmDmodule.TbADOAsisImportNUMALU4.Value;
        FieldByName('ASISTENCIA4').Value := FrmDmodule.TbADOAsisImportASISTENCIA4.Value;

        FieldByName('NUMALU5').Value := FrmDmodule.TbADOAsisImportNUMALU5.Value;
        FieldByName('ASISTENCIA5').Value := FrmDmodule.TbADOAsisImportASISTENCIA5.Value;

        FieldByName('NUMALU6').Value := FrmDmodule.TbADOAsisImportNUMALU6.Value;
        FieldByName('ASISTENCIA6').Value := FrmDmodule.TbADOAsisImportASISTENCIA6.Value;

        FieldByName('NUMALU7').Value := FrmDmodule.TbADOAsisImportNUMALU7.Value;
        FieldByName('ASISTENCIA7').Value := FrmDmodule.TbADOAsisImportASISTENCIA7.Value;

        FieldByName('NUMALU8').Value := FrmDmodule.TbADOAsisImportNUMALU8.Value;
        FieldByName('ASISTENCIA8').Value := FrmDmodule.TbADOAsisImportASISTENCIA8.Value;

        FieldByName('NUMALU9').Value := FrmDmodule.TbADOAsisImportNUMALU9.Value;
        FieldByName('ASISTENCIA9').Value := FrmDmodule.TbADOAsisImportASISTENCIA9.Value;

        FieldByName('NUMALU10').Value := FrmDmodule.TbADOAsisImportNUMALU10.Value;
        FieldByName('ASISTENCIA10').Value := FrmDmodule.TbADOAsisImportASISTENCIA10.Value;

        FieldByName('NUMALU11').Value := FrmDmodule.TbADOAsisImportNUMALU11.Value;
        FieldByName('ASISTENCIA11').Value := FrmDmodule.TbADOAsisImportASISTENCIA11.Value;

        FieldByName('NUMALU12').Value := FrmDmodule.TbADOAsisImportNUMALU12.Value;
        FieldByName('ASISTENCIA12').Value := FrmDmodule.TbADOAsisImportASISTENCIA12.Value;

        FrmDmodule.TbIBAsistencia_todo.Post;

        END;


      End;  //With
      FrmDmodule.TbADOAsisImport.next;

    END;//While del TbADOAsisImport
    
    

   
    //Cerramos tablas
       FrmDmodule.TbADOAsisImport.close;
    FrmDmodule.IBTransHyperion.CommitRetaining;
Donde la tabla TbADOAsisImport es la que tiene los datos que quiero pasar a IB, y la que los tiene que recoger es la tabla TbIBAsistencia_todo.

El problema viene al copiar el último registro de la tabla de ADO a la de IB. No es necesario que todos los campos tengan datos, (no se obliga a la BD Access que así sea), pero si en el último registro, no encuentra datos para un campo concreto, ¡¡¿copia los del registro inmediatamente superior????!!!! para rellenar esos vacios??????!!!!
Si el registro que no tiene datos en todos los campos, NO es el último, todo funcionará OK

Esto es así justo cuando pasa por el Post, antes de pasar por el "next"

He puesto para que vaya mostrandome los valores cada pasada, y antes del post ya da el problema.

Por favor, alguien puede ayudarme, no se que hacer con este tema.

Muchas gracias,


virginia
__________________
Sonrie al mundo, y el mundo te sonreirá :)
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Conectar a MySQL desde Delphi 2005 hmrvivas MySQL 1 20-01-2007 18:01:48
Trabajar Access desde Delphi JoAnCa Conexión con bases de datos 4 16-08-2006 12:39:49
ejecutar consulta access desde delphi pepe2000 Conexión con bases de datos 1 04-05-2006 09:33:42
Conectar a Delphi mediante Access marc.carrasco Conexión con bases de datos 1 19-05-2005 22:41:37
Conectar a access desde otro pc davezf Conexión con bases de datos 6 08-01-2005 01:24:43


La franja horaria es GMT +2. Ahora son las 02:14:23.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi