1レコードに入力できる明細行の数を任意の行数に制限することは可能か?
明細項目自体に直接「登録できる明細の行数を制限する」機能は備わっていません。
そのため、初期状態のままではユーザーが1レコードに対して明細行を何行でも追加できてしまう仕様となっています。
【代替案】数値計算項目を活用し、明細行数を制限する
1レコードに入力できる明細行の数を「最大10行まで」のように上限を制限したい場合や、「必ず5行以上」のように下限を制限したい場合は、ヘッダ側に明細の行数を監視する数値計算項目を設け、その項目に「最大値」または「最小値」を指定する代替案で解決できます。
これにより、設定した明細行数の制限を満たさない不適切なデータの登録や更新をシステム的に未然に防ぐことができます。
明細項目に登録できる行数を任意の数に制限する具体的な設定手順
明細項目の登録行数を制限するためには、データベースの項目設定を変更する必要があります。以下の手順に沿って設定を行ってください。
手順1:行数制限を判定するためのヘッダ項目を追加する
対象データベースの項目設定画面にて、以下の内容で新しい項目を追加してください。
設定箇所:DB設定> 基本設定 > 項目設定
- 項目名:任意(例:「明細行数チェック」「明細上限確認」など)
- タイプ:数値計算
- 明細項目にする:チェックを入れない(※明細行全体の総数をカウントするため、必ずヘッダ項目として作成してください)
手順2:追加した数値計算項目に行数をカウントする計算式と制限値を設定する
手順1で追加した数値計算項目の「設定」ボタンをクリックし、詳細設定画面にて以下の通り設定を行ってから「確定」ボタンをクリックしてください。
- 計算方法:「(明細の)レコード数」を選択します。
- 最大値 または 最小値:制限したい任意の明細行数を入力します。
- 明細行数の上限を制限したい場合(例:5行まで):最大値に「5」と入力します。
- 明細行数の下限を制限したい場合(例:5行以上):最小値に「5」と入力します。
- 必須:「入力を必須にする」にチェックを入れます(※チェックを入れない場合、制限が正しく機能しない場合があります)。
設定した明細行数の制限を満たさない状態で入力画面を確定した場合のエラー表示
上記の設定を行うことで、ユーザーが明細行数の制限を満たさないままレコード入力画面の「確定」ボタンを押下して登録・更新をしようとしたとき、画面上部にシステムエラーが表示され、データの登録・更新がブロックされます。
設定した制限内容(最小値・最大値)に応じて、それぞれ以下のシステムエラー文言が表示されます。
- 最小値を「5」に設定した場合(明細行数が5行に満たないまま確定しようとしたとき)
表示されるエラーメッセージ:
「'○○(設定した項目名)'の計算結果が'5'以上の数字になるように入力してください。」 - 最大値を「5」に設定した場合(明細行数が5行を超えた状態で確定しようとしたとき)
表示されるエラーメッセージ:
「'○○(設定した項目名)'の計算結果が'5'以下の数字になるように入力してください。」
運用途中で明細行数の制限設定を追加する場合の注意点
運用途中でこの明細行数の制限設定をデータベースに追加した場合、過去に設定値から外れた明細行数で既に登録されている既存のレコードをユーザーが編集する際も、明細行数を制限値内に調整しなければ編集内容の更新を確定できませんのでご注意ください。
関連マニュアル
詳細な仕様や設定方法については、下記記事をご確認ください。
(記事ID:2482)
「入力画面設定/レコード入力タイプメニュー」の関連記事一覧
こちらの記事もあわせてご確認ください。
- DBリンク項目の検索ウィンドウ(レコード選択画面)で表示されるレコードの並び順を変更する方法
- スマートフォン版の入力画面でコメントを表示したい
- レコードの新規登録を確定した後、続けて次のレコードを新規登録(連続登録)する方法
- レコード編集画面で明細行の追加ボタンがグレーアウトして追加できない場合の対処方法
- 入力画面で項目の「コメント」をマウスオーバーで表示させることは可能か
- 検索窓にカンマ区切りで複数の条件を入力することは可能か
- 新規登録ボタン押下時に特定の入力画面をデフォルトで表示させる方法
- DBリンク項目の選択肢を、他の項目の入力内容に応じて絞り込む方法
- 入力画面にある「取得」「一括取得」ボタンを非表示にしたい