Buen dia amigos del club!
Tengo un problema con una aplicacion en delphi. Al intentan "Postear" un nuevo registro en una tabla me genera el siguiente error:
Record/Key deleted.
Utilizo Delphi 2010 con informix. Cabe mensionar que la tabla donde quiero hacer el post no contienen llaves primarias y contiene un campo autoincrementable (creo que va por ahi el problema).
Código Delphi
[-]
with DM.tblMKard do
begin
if not Active then
Active := true;
DM.dsMKard.DataSet := nil;
Close;
Open;
Insert;
FieldByName('PEDI').AsInteger := StrToInt(cbxIsot.Items[cbxIsot.ItemIndex].Text[2]);
FieldByName('ISOT').asInteger := StrToInt(cbxIsot.Items.Items[cbxIsot.ItemIndex].Text[4]);
vActi := StrToFloat(dbeActi.Text);
if cbxUM.Text = 'mCi' then
FieldByName('ACTI').AsFloat := DM.fncmCi2uCi(vActi)
else
FieldByName('ACTI').AsFloat := vActi;
FieldByName('VOLU').AsFloat := StrToFloat(dbeVolu.Text);
FieldByName('TECN').AsInteger := DM.gTenc;
FieldByName('FECH').AsDateTime := now;
if _actual then
FieldByName('TIPOMOVI').AsString := 'D'
else
FieldByName('TIPOMOVI').AsString := 'E';
FieldByName('DESCMOVI').AsString := '1';
FieldByName('DOCU').AsString := vDocu;
FieldByName('LOTE').AsString := cbxIsot.Items.Items[cbxIsot.ItemIndex].Text[1];
FieldByName('UNIDMEDI').AsString := cbxUM.Text;
if _actual then
FieldByName('TipoReng').AsString := 'S'
else
FieldByName('TipoReng').AsString := 'P';
Post;
...
end;
Lo gracioso (bueno no tanto para mi) es que sucede solo en ocaciones. Alguien sabe a que se pueda deber este error.Saludos!