すべての列の定義には、列で許可される値を指定する型と、列が非表示であるかどうか、列が入力に必要であるかどうかなどを指定するフラグがあります。これは多くのアプリにとって適切ですが、より動的でデータドリブンのメカニズムが必要な場合もあります。これが列制約が提供するものです。
列制約は、ユーザーが値を入力または変更しようとしたときに、特定の列の振る舞いを決定するために動的に計算される式です。
3 つの列制約は、その列に対する入力値の有効性を管理します。
Valid_If: 許容される値は何か?Required_If: 空の値は許容されるか?Editable_If: 変更可能か?
さらに 2 つの制約が列の表示に関するものです。
追加の制約は、レコードがどのように更新されるかに影響を与えることができます。
-
編集時にリセットするか: そのレコードがユーザーによって編集されるたびに値をクリアします。
列制約を追加するには、[Data] > [Columns] タブをクリックし、対応する列定義の左にある Edit アイコンをクリックします。
使ってみる
アプリでの列制約の使用について詳しくは、こちらの動画をご覧ください。
ベスト プラクティス
列制約を使用すると、非常に微妙な条件や複雑な条件を定義できますが、ユーザーには結果の動作しか見えません。アプリの作成者として、これらの式によって影響を受ける列、特に Valid_If 条件に対して適切な説明を提供することが重要です。これにより、ユーザーは無効な式値を提供した場合にどのように処理すればよいかを知ることができます。そのための最良の方法は、意味のある列の説明を提供することです。
これらの式が行の他のフィールド([_THIS] だけではない)を参照する場合、常にユーザーがすでに見たフィールド(スプレッドシートで考慮される列の前にあり、Columns タブで考慮される列の上に表示される列を意味する)への「後方」参照であることを確認するのが最善です。「前方」参照を含む条件は、ユーザーを混乱させ、複数ページのフォームで問題を引き起こす可能性があります。