Datasnap.Win.MtsRdm.TMtsDataModule.SetAbort
Delphi
procedure SetAbort;
C++
void __fastcall SetAbort();
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
procedure function |
public | Datasnap.Win.MtsRdm.pas Datasnap.Win.MtsRdm.hpp |
Datasnap.Win.MtsRdm | TMtsDataModule |
説明
MTS データモジュールが非アクティブになったり,現在のトランザクションを中止することを許可します。
SetAbort メソッドを呼び出すと,MTS データモジュールを含む現在のトランザクションが中止されることを示すことができます。MTS または COM+ がトランザクションを自動的に開始させた場合(データモジュールがトランザクションを要求するため),現在のメソッド呼び出しが終了するときにトランザクションは中止されます。MTS データモジュールが以前から存在するトランザクションにある場合,クライアントトランザクションは最終的に失敗します。通常,SetAbort は try..except 文の except ブロックで呼び出されます。
現在のトランザクションを中止することに加えて,SetAbort は現在のインターフェース呼び出しが終了するときに MTS データモジュールを非アクティブにできることを示します。つまり,ステート情報は次回にクライアントがデータモジュールのインターフェースを呼び出すときのために保持されません。ステート情報を失わずにトランザクションがコミットされるのを防ぐためには,かわりに DisableCommit メソッドを使用します。
ヒント: メソッドの最初に SetAbort を呼び出すと,予期しない戻り値の結果として MTS データモジュールが早まってコミットするのを防ぐことができます。メソッド呼び出しが普通に終了する場合,SetComplete の呼び出しはこの影響なくトランザクションの完了を許可します。