quando você usa um clientDataset conectado ao Datasetprovider, ele mesm (O DSP) 
se incumbe de fazer o controle de transação. E, nos casos de relacionamentos 
MD, você só dá o Apply no CDS Master. O proprio DSP vai providenciar o Apply no 
Detail



[]s



Walter Alves Chagas Junior
Belo Horizonte - MG - Brazil
[EMAIL PROTECTED]
http://www.geocities.com/SiliconValley/Bay/1058
MSN: [EMAIL PROTECTED]
SKYPE: WalterChagasJr

  ----- Original Message ----- 
  From: Ricardo Lima 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Monday, February 18, 2008 12:41 PM
  Subject: [delphi-br] dbExpress + SQLServer + Transactions


  Olá pessoal!!!

  Preciso esclarecer algumas duvidas com relação a dbExpress e Transações.

  Quando trabalho com dbExpress o ClientDataSet faz o controle de 
  transação no ApplyUpdate, mesmo quando for um Master/Detail? Tipo ou 
  grava tudo ou nada?

  O dbExpress com SQLServer tem suporte a multi-transaction?

  Fiz o código abaixo somente para testar, porem quando tenta iniciar a 
  segunda trasação da erro informando que já existe uma transação ativa.

  Var
  FTransactionDesc: TTransactionDesc;
  Begin

  FTransactionDesc.IsolationLevel := xilREADCOMMITTED;

  FTransactionDesc.TransactionID := 1;
  Connection.StartTransaction(FTransactionDesc);

  FTransactionDesc.TransactionID := 2;
  Connection.StartTransaction(FTransactionDesc);

  FTransactionDesc.TransactionID := 2;
  Connection.CommtiTransaction(FTransactionDesc);

  FTransactionDesc.TransactionID := 1;
  Connection.CommtiTransaction(FTransactionDesc);

  End;

  Obrigado a todos.

  At.
  Ricardo Lima



   

[As partes desta mensagem que não continham texto foram removidas]

Responder a