DBAdapt.TDataSetAdapter
Delphi
TDataSetAdapter = class(TCustomDataSetAdapter)
C++
class PASCALIMPLEMENTATION TDataSetAdapter : public TCustomDataSetAdapter
プロパティ
| 種類 | 可視性 | ソース | ユニット | 親 |
|---|---|---|---|---|
| class | public | DBAdapt.pas DBAdapt.hpp |
DBAdapt | DBAdapt |
説明
TDataSetAdapter は TDataSet コンポーネントのスクリプト インターフェイスを定義し、それをステートレス環境で正しく動作するようにします。
アプリケーション ロジックのカスタム インターフェイスを定義するには、TAdapter のような TDataSetAdapter を使用します(Adapter の一般的な説明は TAdapter を参照)。スクリプトからアクセス可能なデータセット フィールドを定義するには、Add を使用して TDataSetAdapter にアダプタ フィールド コンポーネントを追加します。アダプタ フィールド コンポーネントのプロパティを設定して、このデータセット フィールドで提供されるメタ データを拡張します。たとえば、ValuesList プロパティは、選択リストやラジオ ボタンなどのフィールド編集用の HTML 要素を導入するために使用できる名前/値ペアを定義します。アダプタ フィールドを追加しない場合は、サポートされているすべてのデータセット フィールド型のすべてのアダプタ フィールドがデフォルトで追加されます。デフォルトのアダプタ フィールドはオブジェクト ツリーには表示されませんが、スクリプトからはアクセスできます。また、TAdapterPageProducer を使用してフォームやグリッドを作成するときに使用されます。
データセットに対して実行可能なコマンドを定義するには、TDataSetAdapter にアダプタ アクション コンポーネントを追加します。TDataSetAdapter には、Delete、Next Row、Edit などのコマンドが組み込まれています。アダプタ アクションを追加しない場合は、これらすべてのアクションがデフォルトで追加されます。デフォルトのアダプタ アクションはオブジェクト ツリーには表示されませんが、スクリプトからはアクセスできます。また、TAdapterPageProducer を使用してフォームやグリッドを作成するときに使用されます。
TDataSetAdapter にはモードがあります。モードの値には、Edit、Insert、Browse、Query があります。TDataSetAdapter のモードは、スクリプト文によって取得されたアダプタ フィールドの値に影響を与えます。また、モードは TAdapterPageProducer コンポーネントによって生成された HTML にも影響を与えます。たとえば、Edit、Insert、Query の各モードでは、フォーム フィールドは入力要素を使用して表示されますが、Browse モードでは読み取り専用テキストとして表示されます。TDataSetAdapter のモードは、TDataSetAdapter の EditRowAction などのアダプタ アクション コンポーネントを実行すると変更されます。また、サーバー側スクリプト(たとえば、<% Adapter.Mode = 'Edit' %>)を使用して、モードを変更することもできます。TAdapterPageProducer にモードを変更するためのスクリプトを生成させるには、TAdapterFieldGroup コンポーネントの AdapterMode プロパティを変更します。
TDataSetAdapter は、データセット間のマスター/詳細関係をサポートします。TDataSetAdapter をマスターと詳細の各データセットに関連付けて、MasterAdapter プロパティを使用して、TDataSetAdapter コンポーネント間のマスター/詳細関係を表します。
WebSnap アプリケーションでは、同じユーザーからの連続した要求に応答するために同じ Web モジュールが使われることは保証されていません。TDataSetAdapter は、データセット コンポーネントの状態を管理して、データの整合性を保証します、TDataSetAdapter は、データセットのオープンとクローズ、レコードの検索、編集内容の検証、変更の適用、変更のキャンセル、例外処理も担当します。