【AppSheet】refのIs a part of?とは?

refのIs a part of?とは?

ColumnsでTYPEをRefとした場合、以下のような設定画面が開きます。

今回はIs a part?について解説します。

説明文と日本語訳は以下のようになります。

These rows will be considered ‘part of’ the referenced table. They can be added as line items in the form view of the referenced table, and will be deleted if the referenced row is deleted (these deletes will not trigger workflow rules).

これらの行は、参照されるテーブルの「一部」として考慮されます。参照されるテーブルのフォームビューに行アイテムとして追加することができ、参照される行が削除されるとこれらも削除されます(この削除はワークフローのルールをトリガーしません)。

実際にアプリとスプレッドシート上の挙動を見てみましょう。

記録シートと参照先シート

今回は、以下のように銘柄の取得金額と評価額を入力する記録シートと銘柄情報がまとめられている銘柄リストを準備しました。

記録シート
銘柄リスト(参照先)

「銘柄」が参照先の「銘柄リスト」において「KEY」となるようにDataのColumnsで設定しています。

一方、参照元の記録シート側では検索値に相当する「銘柄」のTYPEをRefとしています。

AppSheetを使い、アプリの入力画面から入力した情報を、記録シートのスプレッドシートに自動反映させられるようなアプリを作成しています。

アプリの入力画面に以下のような情報を入力します。

すると記録シート(スプレッドシート)には以下のように、アプリで入力した情報が反映されます。

Is a part of?のチェックがなしの場合

まずはIs a part of?のチェックがない場合を見ていきます。

参照先の「銘柄リスト」の銘柄の一部の情報を削除してみます。

参照先の「銘柄リスト」のスプレッドシートは削除されましたが、記録シートの記録は残ったままです。

Is a part of?のチェックがありの場合

同じ条件でIs a part of?のチェックがある場合を見ていきます。

参照先の「銘柄リスト」の銘柄の一部の情報を削除してみます。

参照先の「銘柄リスト」のスプレッドシートは削除され、記録シートの記録も削除されました。

元々は以下のような情報が入力されていましたが、参照先の「銘柄リスト」の情報がなくなりましたので、「記録シート」のレコードも削除されました。

TYPEをrefにした行で、参照先で一致する行が削除されるとこれらも削除されることがわかります。

記録シート側で削除した場合のIs a part of?チェックありの挙動

Is a part of?のチェックがある場合で、記録シート側の情報を削除した場合、どのような挙動になるでしょうか?

アプリ上で入力済のレコードを削除すると、スプレッドシートのレコードも削除されます。

一方で参照先の銘柄リストは削除されていないことがわかります。

参照先を親、記録シートを子だとすると、Is a part of?のチェックにより、親の変更は子に影響が及びますが、子の変更の影響は親には及ばないことがわかります。

今回の内容が参考に参考になれば幸いです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA