Autor Téma: Nastavenie parametra - chyba expecting explicit transaction start  (Přečteno 897 krát)

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 5970
  • Karma: 43
    • Verze Delphi: W10 + D11

To Delphi mi nedopraje pokojnú mladosť.
Kód: [Vybrat]
  FQryGroupRightsIns.ParamByName('IDUSERGROUPS_USERRIGHTS').AsInteger := NewPrimaryKey;
Citace
Project JasotSVB.exe raised exception class EIBNativeException with message '[FireDAC][Phys][FB]invalid transaction handle (expecting explicit transaction start)'.
Lenže pri požadovanej akcii nemusí byť aktívna transakcia. Aj keď použijem StartTransaction, tak sa nič nezmení.
Reštartoval som PC aj znovu vytvoril transakciu. Nepomohlo.
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 5970
  • Karma: 43
    • Verze Delphi: W10 + D11
Re:Nastavenie parametra - chyba expecting explicit transaction start
« Odpověď #1 kdy: 03-06-2020, 18:00:41 »
Klasika, problém objavím po odoslaní príspevku. Chyba bola vo funkcii NewPrimaryKey
Kód: [Vybrat]
function NewPrimaryKey: Integer;
begin
  dtmdBasic.conFOC.Transaction.StartTransaction;  //  Doplnené. Doteraz to fungovalo.
  try
    Result := dtmdBasic.conFOC.ExecSQLScalar('SELECT GEN_ID(COMMON_ID, 1) AS PK'+
    ' FROM RDB$DATABASE');
    Assert(Result > 0, '  PrimaryKey: PKey = 0  ');
  ...
end;
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 5970
  • Karma: 43
    • Verze Delphi: W10 + D11
Re:Nastavenie parametra - chyba expecting explicit transaction start
« Odpověď #2 kdy: 03-06-2020, 18:06:04 »
Upresňujem chybu, aby sa s tým druhý netrápili.
V minulosti som musel manipulovať s TFDConnection a nemalo definované Transaction. Teraz som mu najprv priradil zlú transakciu. Bez automatického spustenia sa. Preto som tam musel doplniť StartTransaction.
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.