プリインストールプラグインです。
コマンドに「リストビューデータの受け渡し」が指定できるようになり、リストビューの任意のデータを、別のリストビューへ追加することができます。
対象行 |
リストビュー内のどの行を受け渡しの対象とするかを指定します。
|
---|---|
インポートモード |
インポートモードが「追加」の場合、単純にデータを追加します。インポートモードが「マージ」の場合、新しいデータが追加され、更新対象となる既存のデータは更新されますが、それ以外の既存のデータが削除されることはありません。インポートモードが「置き換え」の場合、新しいデータを追加し、既存のデータを更新および削除を行います。 「マージ」、および「置き換え」の場合、Forguncyが行を一意に識別するために「一意となる列」を指定する必要があります。 既定値は「追加」です。 |
列の関連付け定義を追加 |
クリックすると、受け渡す列の定義をリストの末尾に1行追加します。 |
列の関連付け定義を削除 |
クリックすると、フォーカスのある受け渡す列の定義を削除します。 |
すでに存在する行は更新しない |
本チェックオプションは、インポートモードが「マージ」、および「置き換え」の場合にのみ表示されます。本チェックオプションをチェックした場合、受け渡し先のリストビューにすでにその行が存在する場合(行の存在は「一意となる列」の値が同一であることが条件)、その行については一切の更新を行いません。 |
2つのテーブルを作成します。
各テーブルに、3つのテキストフィールドを作成し、片方のテーブルにデータを入力しておきます。
テーブル1
テーブル2
ページに2つのリストビューを配置して、手順1で作成したテーブルとデータ連結させておきます。
コマンド設定するために、ボタンを配置します。
以下のようなページに設定します。
手順2で配置したボタンを選択し、右ペインの[セル型]タブの[コマンド...]をクリックして「リストビューデータの受け渡し」コマンドを追加します。
次の図のように、受け渡し元のリストビューのどの列を、受け渡し先のリストビューのどの列に受け渡すのかを設定します。[インポートモード]が「マージ」、および「置き換え」の場合には、レコードを識別するための[一意となる列]を指定します。内部データベースのテーブルの場合、通常は「ID」フィールドを使用します。
ここではリストビュー1のすべての行をリストビュー2に受け渡し、マージ処理を行っています。
参考:
受け渡し元のリストビュー
コマンドを実装するページ上のリストビューである必要があります。
列の指定は、行テンプレート上のセル参照を設定します。
受け渡し先のリストビュー
同一ページだけでなく、別ページやポップアップウィンドウで開いたページにあるリストビューも指定できます。同一ページにない場合は、「リストビューデータの受け渡し」コマンドの次のコマンドで、「ページ遷移」や「ポップアップウィンドウの表示」、「ポップアップウィンドウの終了」を指定してください。
列の指定は、行テンプレート上のセル参照、もしくは列名で記載します。
[ホーム]リボンタブにあるデバッグの[開始]ボタンをクリックし、アプリケーションの動作を確認します。
実行した直後はテーブル1がデータ連結されているリストビューのみ値が表示されます。
ボタンをクリックすると、以下のようにテーブル2にデータ連結しているリストビューに「すべての行」の値がマージされます。今回の場合、何もレコードがないリストビューに対してマージしたため、動作は「追加」と変わりがありません。
参考:
内部データベースの場合、IDフィールドは各テーブルに自動的に作成され、レコードが書き込まれるタイミングで一意の連番が自動的に振られます。このためIDの値はコピーされません。
本コマンドによるデータの受け渡しは、リストビュー2の表示上でのみ追加されており、データ連結先のテーブル2に対する確定処理は含まれていません。テーブル2にデータを反映するには、本コマンドの実行後に[リストビューデータの更新]コマンドを使用する必要があります。
インポートモードが「マージ」、および「置き換え」の場合において、受け渡し先のリストビューに対象となる行が複数存在している場合([一意となる列]チェックオプションをチェックした列の値が一意となっていない場合)、該当するすべての行に対して更新が行われます。