Transações e DBExpress

Delphi

06/05/2004

Apesar de ler os artigos disponiveis na net sobre transação no IB, ainda não sei como usá-la com os componentes DBExpress. Minha principal dúvida é:
->ONDE devo passar os parâmetros para a transação, se no inicio da unit ou no bloco do código, por exemplo, gravar?
-> o que significa quando eu passo o número 1 para TransactionID e GlobalID? Sempre será este numero?

Obrigada

[]s,Naty :wink:


Divi_naty

Divi_naty

Curtidas 0

Respostas

Leandro_si

Leandro_si

06/05/2004

olá, tente algo assim:

procedure TForm1.Button1Click(Sender: TObject);
var t : TTransactionDesc;
begin
  // dbExpress
  try
    t.IsolationLevel := xilREADCOMMITTED;
    SQLConnection1.StartTransaction(t);
    ClientDataSet1.Edit;
    ClientDataSet1.Post;
    ClientDataSet1.ApplyUpdates(-1);
    SQLConnection1.Commit(t);
  except
    SQLConnection1.Rollback(t);
  end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  ClientDataSet1.Edit;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  ClientDataSet1.Append;
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
  ClientDataSet1.Cancel;
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
  ClientDataSet1.Delete;
end;


vc terá que controlar os botões.. de modo que sempre terá que clicar em salvar.. apos clicar em novo.. editar ou deletar...
nesse exemplo ae de cima nao coloquei no datamodule os componentes.
espero ter ajudado... qualquer coisa grita...


GOSTEI 0
POSTAR