Code: Select all
FBTable := TIBCTable.Create(nil);
FBTable.Connection := DataMod.FBConnection;
FBTable.Active := false;
FBTable.GeneratorMode := gmPost;
FBTable.TableName := TableName;
FBTable.KeyFields := IDColumn;
FBTable.KeyGenerator := SequenceName;
try
FBTable.Active := true;
FBTable.Insert;
for i := 0 to High(Params) do
begin
FBTable.FieldByName(Params[i].Name).AsVariant := Params[i].Value;
end;
FBTable.Post;
except
on E: Exception do
begin
FBTable.Active := false;
FBTable.Free;
ShowMessage(E.ClassName + ' ' +E.Message + ' TableName: ' + TableName);
end;
end;
Result := FBTable.FieldByName(IDColumn).AsInteger;
FBTable.Active := false;
FBTable.Free;