amigos perdon por el desastre,
grasias por responder tan rapido, bueno la base de datos que estoy usando es access, el proceso que uso para insertar es.Código Delphi
[-]
INSERTAR UNA VENTA
function Insertar(cn:TADOConnection; var Error:String;NroCredito:string; IDCliente:string;Cuenta:string; Monto:string; TipoDoc:String;SerieDoc:string;NroDoc:String;Fecha:string; Cancelado:string;Contabilidad:string; Almacen:string;Fiscal:string;Responsable:string;Grid:TStringGrid):Boolean;
var Retorno:boolean; cm : TADOCommand; i:integer;
Begin
Try Retorno:=True; cn.BeginTrans;
cm := TADOCommand.Create(nil);
cm.Connection := cn;
INSERTAR CABECERA DEL CREDITO cm.CommandText := ' INSERT INTO TCREDITO VALUES ('+ (NroCredito)+
','+ QuotedStr(IDCliente)+
','+ QuotedStr(Cuenta)+
','+ Monto+
','+ QuotedStr(TipoDoc)+
','+ QuotedStr(SerieDoc)+
','+ QuotedStr(NroDoc)+
','+ QuotedStr(Fecha)+
','+ QuotedStr(Cancelado)+
','+ QuotedStr(Contabilidad)+
','+ QuotedStr(Almacen)+
','+ QuotedStr(Fiscal)+
','+ QuotedStr(Responsable)+')';
cm.Execute;""ESTA ES LA LINAR DONDE SEPRODUCE EL ERRORR""
for i := 1 To Grid.RowCount-2 do
begin
cm.Connection := cn;
cm.CommandText := ' INSERT INTO TDETALLECREDITO VALUES ('+ (NroCredito)+
','+ QuotedStr(grid.cells[1,i])+
','+ (grid.cells[0,i])+
','+ QuotedStr(grid.cells[2,i])+
','+ (grid.cells[3,i])+
','+ (grid.cells[4,i])+
','+ (grid.cells[5,i])+')';
cm.Execute;
end;
cn.CommitTrans;
except on E : Exception do begin Error:=E.Message;
cn.RollbackTrans;
Retorno:=False;
end;
end;
Insertar:=Retorno;
End;
amigos una cosa mas la base de datos se a reducido de tamaño, no se porque, pero no es perdido registros, bueno antes era de 80 mb pero ahora es de 5