開始日と終了日の逆転や過去日の入力による登録をブロックする方法

概要

「楽楽販売」では、「開始日より終了日が前の場合は登録させない」「現在日時より過去の日付は登録させない」といった日付の比較による登録制御ができます。
「日時と日時の計算」項目と「数値計算」項目の最小値制限を組み合わせることで、指定した条件を満たさないデータの登録をブロックできます。

日付の比較による登録ブロックの仕組み

「日時と日時の計算」項目は、直接「最小値」や「最大値」の制限を設定できません。
そのため、「日時と日時の計算」項目で算出した差分を「数値計算」項目で数値化し、その「数値計算」項目に最小値制限(「0」以上)をかけることで登録をブロックします。

補足

登録制御の基本ロジック

  • 計算結果が「0以上(正の数)」:正常に保存できます。
  • 計算結果が「マイナス(負の数)」:エラーが表示され、登録がブロックされます。

事例①:開始日と終了日の逆転による登録をブロックする設定手順

「終了日」が「開始日」よりも前の日付で入力された場合に登録をエラーにする場合を例として設定手順を説明します。

<設定箇所>
DB設定>基本設定>DB項目設定

1. 比較する「日時」項目を用意する

比較対象となる2つの項目を用意します。

  • 「開始日」項目(項目タイプ:「日時」)
  • 「終了日」項目(項目タイプ:「日時」)

2. 2つの項目の差分を計算する「日時と日時の計算」項目を作成する

2つの項目の日付差を計算する項目を作成します。

  1. DB項目設定画面にて、「項目追加」ボタンをクリックします。
  2. 項目タイプで「日時と日時の計算」を選択し、項目名(【例】「期間チェック」など)を入力します。
  3. 詳細設定画面の「計算する項目」にて、計算式に「終了日 - 開始日」を指定します。
  4. 単位を条件に合わせて指定します。(日単位で比較する場合は「日」を選択)
  5. 画面下部の「確定」ボタンをクリックして保存します。

3. 「数値計算」項目で数値化し最小値制限を設定する

「日時と日時の計算」項目の結果を数値に変換し、最小値の制限を設定します。

  1. DB項目設定画面にて、再度「項目追加」ボタンをクリックします。
  2. 項目タイプで「数値計算」を選択し、項目名(【例】「期間判定用」など)を入力します。
  3. 詳細設定画面の「計算する項目」にて、計算式に「【手順2で作成した項目名】 + 直接入力『0』」を指定します。
  4. 「最小値」の欄に「0」を入力します。
  5. 画面下部の「確定」ボタンをクリックして保存します。

事例②:現在日時より前の過去日の登録をブロックする設定手順

「入力日」が「現在日時」より前の日付(過去日)の場合に登録をエラーにする設定手順です。

<設定箇所>
DB設定>基本設定>DB項目設定

  1. 比較対象となる「現在日時」項目と「入力日」項目(いずれも「日時」項目)を用意します。
  2. 「日時と日時の計算」項目を追加し、計算式に「入力日 - 現在日時」を指定します。
  3. 「数値計算」項目を追加し、計算式に「【手順2で作成した項目名】 + 直接入力『0』」を指定し、最小値に「0」を設定します。

設定テンプレート

設定内容が確認できるテンプレートは下記をクリックしてダウンロードしてください。
テンプレート_開始日と終了日の逆転や過去日の入力による登録をブロックする方法

補足

設定テンプレートを貴社の「楽楽販売」に取り込む方法は
下記マニュアルをご確認ください。

テンプレート読込

登録エラー時の画面表示と注意点

設定後、条件を満たさない(計算結果がマイナスになる)入力を行ってレコードを保存しようとすると、画面上に以下のエラーメッセージが表示され登録がブロックされます。

表示されるエラーメッセージと仕様について

表示されるエラーメッセージ:
'(最小値を設定した数値計算項目名)'の計算結果が'0'以上の数字になるように入力してください。

  • エラーメッセージの文言を変更することはできません。
  • 入力画面でユーザーに分かりやすくするため、数値計算項目の名称を「期間エラーチェック」など目的が伝わる名称にしておくことを推奨します。

(記事ID:2405 )