Erro ao tentar usar dois TFDTRANSACTIONS no Delphi

24/09/2021

0

Olá, estou com um problema no Delphi ao tentar usar dois componentes TFDTRANSACTIONS do FireDac, existem duas querys e o procedimento é uma inserção em duas tabelas diferentes, ao clicar no botão "Novo" que entra no modo de inserção ele exibe a seguinte mensagem: [FireDAC][Phys][FB]-343. Cannot set Default transaction.
Alguém sabe como resolver?
José Junior

José Junior

Responder

Posts

24/09/2021

Paulo

Olá, estou com um problema no Delphi ao tentar usar dois componentes TFDTRANSACTIONS do FireDac, existem duas querys e o procedimento é uma inserção em duas tabelas diferentes, ao clicar no botão "Novo" que entra no modo de inserção ele exibe a seguinte mensagem: [FireDAC][Phys][FB]-343. Cannot set Default transaction.
Alguém sabe como resolver?


Porque usar dois transactions?

Você também está usando dois TFDConnection? Se não estiver eu ACHO que o problema pode ser este, porque no connection tem a propriedade do transaction para setar.
Responder

25/09/2021

José Junior

Olá, estou com um problema no Delphi ao tentar usar dois componentes TFDTRANSACTIONS do FireDac, existem duas querys e o procedimento é uma inserção em duas tabelas diferentes, ao clicar no botão "Novo" que entra no modo de inserção ele exibe a seguinte mensagem: [FireDAC][Phys][FB]-343. Cannot set Default transaction.
Alguém sabe como resolver?


Porque usar dois transactions?

Você também está usando dois TFDConnection? Se não estiver eu ACHO que o problema pode ser este, porque no connection tem a propriedade do transaction para setar.


Eu estou usando dois TFDTransaction por conta que a tela faz duas inserções em tabelas diferentes ao mesmo tempo, já setei a propriedade Transaction no TFDConnection mas não resolveu, estou usando apenas um TFDConnection.
Responder

26/09/2021

Paulo

Eu estou usando dois TFDTransaction por conta que a tela faz duas inserções em tabelas diferentes ao mesmo tempo, já setei a propriedade Transaction no TFDConnection mas não resolveu, estou usando apenas um TFDConnection.


Se o problema é fazer dois insert em tabelas diferentes "ao mesmo tempo" EU não vejo problema nenhum em usar a mesma query. Poderia fazer assim.

  with qry do begin
    Close;
    SQL.Clear;
    SQL.Add('comando 1');
    ExecSQL;
    Close;
    SQL.Clear;
    SQL.Add('comando 2');
    ExecSQL;
  end;
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar