データベースの「項目設定」で一律「入力を必須にする」を設定している場合、空欄のままではレコードを登録・更新できません。
しかし、特定の条件に合致する場合(例:「請求区分が『請求不要』の場合は請求日の入力をスキップしたい」など)は、大元の必須設定を外し、入力制限(画面設定)と必須設定(メニュー設定)を組み合わせることで、「入力可能な時だけ必須(グレーアウト時は必須チェックをスキップ)」という動的な必須制御を実現できます。
大元のデータベース項目設定で必須がオンのままだと、そもそも入力制限が設定できず、非表示や非活性にした際にも必須エラーになります。
そのため、まずは大元の必須制限を解除します。
【設定箇所】 データベース設定>基本設定>項目設定
1. 対象となる「請求日」項目の右端にある「設定」ボタンをクリックして詳細設定を開きます。
2. 「入力を必須にする」のチェックボックスのチェックを外します。
3. 画面下部の「確定」ボタンをクリックして保存します。
次に、特定の条件を満たすときだけ「請求日」を入力可能(活性化)にし、それ以外はグレーアウトされるように設定します。
【設定箇所】 データベース設定>表示設定>レコード入力画面設定
1. 対象の入力画面設定の「設定」ボタンをクリックして開きます。
2. 「項目設定エリア」にある「請求日」項目の右端にある「設定」ボタンをクリックします。
3. 「入力制限」の項目にある「条件に一致したときのみ入力可能にする」にチェックを入れます。
4. 条件に「請求区分(などのフラグ項目) が 『請求あり』 と等しい」を設定し、「確定」ボタンをクリックして保存します。
最後に、ユーザーが操作する特定のメニューにのみ「請求日」を必須とするルールを適用します。
【設定箇所】 データベース設定>基本設定>メニュー設定
1. 対象の「レコード一覧タイプ」または「レコード入力タイプ」メニューの右端にある「設定」ボタンをクリックします。
2. 「レコード入力画面に関する設定」内にある「入力項目設定」の「設定」ボタンをクリックします。
3. 項目の一覧から「請求日」を選択し、「この項目を必須項目にする」にチェックを入れて「追加」します。
4. メニュー設定画面に戻り、最下部の「確定」ボタンをクリックして保存します。
ポイント: 仕様上、入力制限によってグレーアウト(非活性)になっている項目は、メニューの入力項目設定で「必須」にしていても必須チェックが自動的にスキップされます。
これにより、「入力可能な時だけ必須」という理想の挙動が実現します。
詳細な仕様の違いや作成手順については、下記記事をご確認ください。
データベース全体の共通ルールとして必須にする方法と、メニューごとにルールを変える方法の使い分けについて解説しています。
項目設定とメニュー設定でできる必須項目設定の違い
特定の条件を満たした時だけ項目を入力可能にする(グレーアウトさせる)設定の詳細な仕様です。
レコード入力画面設定:入力制限
(記事ID:2855)