編集可能な表の作成
ユーザーが1つのトランザクションのすべての変更をバックエンド・サービスに送信する前に、複数の既存の行を編集できる編集可能な表を作成できます。
この編集可能表の実装では、サービス・データ・プロバイダ(SDP)によるバッファリング・データ・プロバイダが使用されます。 バッファリング・データ・プロバイダは、基礎となるデータ・プロバイダのバッファリングを提供するラッパーで、後で編集をデータ・ソースにコミットできます。 基礎となるデータ・プロバイダ(この場合はサービス・データ・プロバイダ)がデータのフェッチを担当し、バッファリング・データ・プロバイダが基礎となるデータとバッファリングされた編集をマージして、データの統合セットとして表示されます。
従業員の編集可能な行を表示する表を作成する方法を次に示します。 すべての変更は、ユーザーが「保存」ボタンをクリックするまでバッファに格納され、RESTコールによって変更がバックエンド・サービスにポストされます。 ここで使用される例は、Visual Builderクックブックの「バッチ編集可能表(BDP)」レシピに従っています。このレシピでは、検証の実装方法や新しい行の作成方法など、追加機能を示します。
- 表をページに追加し、「データの追加」クイック・スタートを使用してデータに接続します。 クイック・スタートは、表コンポーネントに自動的にバインドされる変数を作成します。 この変数はサービス・データ・プロバイダ・タイプに基づいているため、バッファリング・データ・プロバイダ・タイプに基づいて変数を作成し、新しい変数を参照するように表を設定する必要があります。
- 表コンポーネントをページにドラッグ・アンド・ドロップし、データの追加クイック・スタートを使用してそのページにデータを追加します。
- バッファリング・データ・プロバイダ・タイプに基づく「変数の作成」 (
employeesBDPなど)。 新しく作成した変数の「プロパティ」ペインで、dataProviderコンストラクタ・パラメータをemployeeListSDPにマップします:
- 表の「データ」タブで、
employeeListSDPではなく[[ $variables.employeesBDP.instance ]]を指すようにdataプロパティを変更します。
- 表の編集イベントを処理し、表を編集可能にするイベント・リスナーおよびアクション・チェーンを作成します。
- 表の変更を追跡して保存します。 変更の保存には、バッファリング・データ・プロバイダ・インスタンスから変更を収集し、変更を送信済としてマークし、1つのトランザクションですべての変更を格納する単一の「バッチRESTコール・ペイロード」を作成し、最後にバッファリング・データ・プロバイダの変更済アイテムを送信済としてマークします。





