Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   error: Record/Key Deleted al importar datos a Access (https://www.clubdelphi.com/foros/showthread.php?t=19248)

Capo 08-03-2005 22:59:21

error: Record/Key Deleted al importar datos a Access
 
Buen dia a todos. Saludos desde Colombia Y DE ANTEMANO Agradesco cualquier ayuda ke me puedan brindar.

Estoy trabajando en un proceso de importacion de datos desde un Excel file a una tabla en una BD Access, en dicha tabla de access llamada {CLIENTES} tengo un Campo Index AutoIncremental llamado {ID_CLIENTE}. al intentar importar los datos del StringGrid donde subo el Excel file genera el error: Record/Key Deleted y solo llega a importar el primer registro/fila de dicho StringGrid.

Al quitar dicho campo de la tabla {ID_CLIENTE}, logro importar todo sin problema alguno, desafortunadamente esa tabla es parte de una relacion y debo encontrarle otra solucion.

Sera que estoy metiendo la pata en algo? Gracias.
Este es el codigo que utilizo.

Código Delphi [-]
  
procedure TCONSOLA_FRM.btn_GuardarClick(Sender: TObject);
Var I:Integer;
begin
StatusBar1.Panels[0].Text := 'Guardando Informacion en la Base de Datos';
StatusBar1.Refresh;
progressBar1.Position := 0;
progressBar1.Max := StrToInt(IntToStr(StringGrid1.RowCount-1)+'0');
   For I := 1 to StringGrid1.RowCount-1 do
       begin
          ProgressBar1.StepIt;
          if StringGrid1.Cells[16,I] = 'True' then 
             begin
                if DM1.CLIENTES.Locate('NOMBRES',StringGrid1.Cells[6,I],[]) = False then
                   begin
                   DM1.CLIENTES.Insert;
                   DM1.CLIENTES.FieldByName('NOMBRES').AsString := StringGrid1.Cells[6,I];
                   DM1.CLIENTES.FieldByName('DIRECCION').AsString := StringGrid1.Cells[7,I];
                   DM1.CLIENTES.FieldByName('BARRIO').AsString := StringGrid1.Cells[8,I];
                   DM1.CLIENTES.FieldByName('LOCALIDAD').AsString := StringGrid1.Cells[9,I];
                   DM1.CLIENTES.FieldByName('TELEFONO').AsString := StringGrid1.Cells[10,I];
                   DM1.CLIENTES.FieldByName('ACTIVO').Value := True;
                   DM1.CLIENTES.Post;
                   end;
             end;
       end;
End;


La franja horaria es GMT +2. Ahora son las 07:08:22.

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