明細行が未入力(1行も登録しない)での登録を制限する方法・設定手順
明細行数をカウントする「数値計算」項目をヘッダに作成し、最小値を設定することで制御可能です
項目設定で明細項目に対して「入力を必須にする」と設定しても、それは「明細行を追加・編集する際」にのみ機能するチェックとなります。
そのため、明細行を1行も追加せずにレコード全体の「確定」ボタンを押した場合には、必須チェックがかからず、明細が空のまま登録できてしまいます。
この挙動を回避し、必ず1行以上の明細入力を必須にするには、ヘッダ項目を用いて明細の行数をチェックし、計算結果が一定の基準を満たさない場合にエラーを出す仕組みを構築する必要があります。
設定手順(常に1行以上の明細入力を必須にする場合)
すべてのレコードにおいて、明細が1行も無い状態での登録を禁止する手順です。
【設定箇所】 左パネル > 対象のデータベース > 設定(スパナアイコン) > 基本設定 > 項目設定
1. 明細行数をカウントする項目を作成する
「項目設定」画面にて、以下の内容で項目を追加します。
・項目名:明細行数チェック(任意の名称)
・タイプ:数値計算
・明細項目にする:チェックを入れない(※必ずヘッダ項目として作成してください)
2. 計算式と制限値を設定する
作成した項目の「設定」ボタンをクリックし、詳細設定画面にて以下の通り設定します。
・計算方法:「(明細の)レコード数」を選択
・計算する項目:「明細」を選択
・最小値:「1」を入力
・必須:「入力を必須にする」にチェックを入れる
この設定により、明細が0行の状態で保存しようとすると「'明細行数チェック'の計算結果が'1'以上の数字になるように入力してください」というエラーが表示され、登録をブロックできます。
※運用途中でこの設定を追加した場合は、既存レコードに対しても「一括再計算」を実行して、現在の行数をシステムに認識させる必要があります。
関連マニュアル
詳細な仕様の違いや作成手順については、下記記事をご確認ください。
数値計算項目の詳細な設定方法と最小値・最大値の制限について
数値計算タイプで利用可能な計算ロジックや、エラーメッセージが表示される条件について解説しています。
項目設定:項目タイプ「数値計算」
1レコードに入力できる明細行の数を制限する具体的な活用例
ヘッダ項目で行数をカウントし、上限や下限を設ける際の考え方が記載されています。
1レコードに入力できる明細行の数を任意の行数に制限することは可能か?
(記事ID:2823)
「項目設定」の関連記事一覧
こちらの記事もあわせてご確認ください。
- 既存データベースに項目を追加・変更するときのよくある問い合わせと解決方法
- 「物理削除」と「論理削除」の違いとは?(「論理削除」の設定方法)
- 「ファイル」項目に登録したファイルをダウンロードせずにブラウザでプレビューすることは可能か
- 「数値計算」項目の結果に「+」や「-」の符号を自動で表示する方法・設定手順
- 顧客マスタの顧客IDを自動採番に変更する方法・設定手順
- DBリンク項目の検索で「完全一致」に近い候補のみを表示したい
- データベースのプルダウンに登録・表示できる選択肢の上限数
- DBリンク項目の検索画面で表示項目(検索対象)の上限数を拡張、または以前の仕様に戻すことは可能か
- DBリンク項目において独自の「ID(例:得意先コード)」を入力して情報を自動表示させる方法・設定手順
- 明細行でDBリンク項目の「明細キー」を選択した際に親の「キー項目」を自動取得し、入力画面では非表示状態でデータを登録する方法