クライアント データセットとの通信
プロバイダとクライアントデータセットまたは XML ブローカ間のすべての通信は,Datasnap.Midas.IAppServer インターフェースを通して行われます。プロバイダがクライアントと同じアプリケーションの場合,このインターフェースは自動的に生成された隠れたオブジェクトによって実装されるか,または Datasnap.Win.TConnect.TLocalConnection コンポーネントによって実装されます。プロバイダが多層アプリケーションの一部の場合,このインターフェースはアプリケーションサーバーのリモートデータモジュール用インターフェースまたは(SOAP サーバーの場合)接続コンポーネントによって生成されたインターフェースです。
ほとんどのクライアントアプリケーションは直接 IAppServer を使用しないで,クライアントデータセットまたは XML ブローカのプロパティとメソッドを通して間接的に呼び出します。ただし必要であれば,クライアントデータセットの AppServer プロパティを使用して,IAppServer インターフェースを直接呼び出すことができます。
下の表は,IAppServer インターフェースのメソッドと,プロバイダコンポーネントとクライアントデータセット内で対応するメソッドとイベントの一覧です。この IAppServer メソッドには,Provider パラメータが含まれています。多層アプリケーションではこのパラメータは,クライアントデータセットの通信相手であるアプリケーションサーバー上のプロバイダを指示します。またほとんどのメソッドには OwnerData という OleVariant パラメータがあり,これによってクライアントデータセットとプロバイダは相互にカスタム情報を受け渡すことができます。OwnerData はデフォルトでは使用されませんが,すべてのイベントハンドラに渡されるので,クライアントデータセットからの呼び出しの前後に,プロバイダがアプリケーションで定義された情報を調整するコードを書くことができます。
AppServer インターフェースのメンバー :
IAppServer | プロバイダコンポーネント | TClientDataSet |
---|---|---|
AS_ApplyUpdates メソッド |
ApplyUpdates メソッド,BeforeApplyUpdates イベント,AfterApplyUpdates イベント |
ApplyUpdates メソッド,BeforeApplyUpdates イベント,AfterApplyUpdates イベント |
AS_DataRequest メソッド |
DataRequest メソッド,OnDataRequest イベント |
DataRequest メソッド |
AS_Execute メソッド |
Execute メソッド,BeforeExecute イベント,AfterExecute イベント |
Execute メソッド,BeforeExecute イベント,AfterExecute イベント |
AS_GetParams メソッド |
GetParams メソッド,BeforeGetParams イベント,AfterGetParams イベント |
FetchParams メソッド,BeforeGetParams イベント,AfterGetParams イベント |
AS_GetProviderNames メソッド |
使用可能なすべてのプロバイダを識別するために使用される |
ProviderName プロパティの設計時リストを作成するために使用される |
AS_GetRecords メソッド |
GetRecords メソッド,BeforeGetRecords イベント,AfterGetRecords イベント |
GetNextPacket メソッド,Data プロパティ,BeforeGetRecords イベント,AfterGetRecords イベント |
AS_RowRequest メソッド |
RowRequest メソッド,BeforeRowRequest イベント,AfterRowRequest イベント |
FetchBlobs メソッド,FetchDetails メソッド,RefreshRecord メソッド,BeforeRowRequest イベント,AfterRowRequest イベント |