データ ソースの決定

提供: RAD Studio
移動先: 案内検索

プロバイダ コンポーネントの利用:インデックス への移動


プロバイダ コンポーネントを使用する際は、データの取得に使用されるソースを指定する必要があります。プロバイダ コンポーネントは、取得したデータをまとめてデータ パケットにします。 お使いの Delphi のバージョンに応じて、以下のどちらかをソースに指定できます。

データセットをデータのソースとして使用する

プロバイダがデータセット プロバイダ(TDataSetProvider)の場合、プロバイダの DataSet プロパティは、そのソース データセットを示すように設定します。設計時には、[オブジェクト インスペクタ]DataSet プロパティのドロップダウン リストに含まれている使用可能なデータセットの中から選択します。

TDataSetProvider は、Data.DB.IProviderSupport インターフェイスを使用して、ソース データセットとやり取りします。このインターフェイスは TDataSet により組み込まれるため、あらゆるデータセットに使用できます。 ただし、TDataSet に実装されている IProviderSupport のメソッドはほとんどが、何もしないか例外を発生させるスタブです。

Delphi に付属しているデータセット クラス(BDE 対応データセット、ADO 対応データセット、dbExpress データセット、InterBase Express データセット)では、これらのメソッドをオーバーライドして IProviderSupport インターフェイスをもっと有用な形で実装しています。 クライアント データセットは、継承した IProviderSupport 実装に何も追加しませんが、それでも、プロバイダの ResolveToDataSet プロパティが True である限り、ソース データセットとして使用できます。

TDataSet のカスタム下位クラスを独自に作成するコンポーネント開発者は、データセットがデータをプロバイダに提供する場合、該当するすべての IProviderSupport メソッドをオーバーライドする必要があります。 プロバイダがデータ パケットを読み出し専用でのみ提供する場合(つまり更新を適用しない場合)は、TDataSet に実装されている IProviderSupport メソッドで十分な可能性があります。

XML ドキュメントをデータのソースとして使用する

プロバイダが XML プロバイダの場合、プロバイダの XMLDataFile プロパティを、そのソース ドキュメントを示すように設定します。

XML プロバイダでは、ソース ドキュメントをデータ パケットに変換する必要があるため、ソース ドキュメントを示すだけでなく、そのドキュメントをデータ パケットに変換する方法も指定しなければなりません。 この変換は、プロバイダ TransformRead プロパティによって処理されます。TransformRead は、TXMLTransform オブジェクトを表します。このオブジェクトのプロパティを設定することで、使用する変換を指定でき、オブジェクトのイベントを使用して変換に独自の入力を渡すことができます。 XML プロバイダの利用の詳細については、 「プロバイダのソースとしての XML ドキュメントの使用」をを参照してください。

関連項目