Ciclos para grabar en una base de datos
Publicado por Alberto (6 intervenciones) el 27/05/2005 17:45:01
Tengo una duda. Tengo un ciclo FOR en el que uso la propiedad Table.Locate para localizar la clave primaria y actualizar ese registro.
Pero cuando tengo que actualizar muchos registros sale un error porque no localiza la clave. El codigo es el siguiente:
if Tbl.Locate('TarNumero;CupNumero;AgeNumero',
VarArrayOf([IntToStr(NroTar), NroCup, IntToStr(NroAge)]),[loCaseInsensitive]) then
begin
Tbl.Edit;
Tbl.Fields[3].AsString:= NroLiq;
Tbl.Fields[9].AsString:= 'COBRADO';
Tbl.Post;
end
else
Raise Exception.Create('Hubo un error grave en la base de datos. Por favor consulte a su proveedor');
TmrActualiz.Enabled:= False;
muchas veces muestra el raise. Como hago para que encuentre la clave primaria sin que salga el error????
Pero cuando tengo que actualizar muchos registros sale un error porque no localiza la clave. El codigo es el siguiente:
if Tbl.Locate('TarNumero;CupNumero;AgeNumero',
VarArrayOf([IntToStr(NroTar), NroCup, IntToStr(NroAge)]),[loCaseInsensitive]) then
begin
Tbl.Edit;
Tbl.Fields[3].AsString:= NroLiq;
Tbl.Fields[9].AsString:= 'COBRADO';
Tbl.Post;
end
else
Raise Exception.Create('Hubo un error grave en la base de datos. Por favor consulte a su proveedor');
TmrActualiz.Enabled:= False;
muchas veces muestra el raise. Como hago para que encuentre la clave primaria sin que salga el error????
Valora esta pregunta


0