テーブル内の時間範囲に重なりがないかチェックする

概要

テーブル内の時間範囲が、各行の間で重なっていないかどうかをチェックし、重なりがあればエラーを表示します。

使い方

テーブルに時間の開始と終了を表すフィールドがあり、その開始~終了の時間範囲が、テーブルの各行の間で重なっていればエラーとします。

例えば、1日の会議室予約を管理するようなテーブルで 10:00~12:00 の予約と、11:00~13:00 の予約があれば、予約時間に重なりがあるのでエラーとしたい、というような場合に使用します。

エラーがある場合、開始時刻、終了時刻のフィールド両方に表示されます。

ある行の終了時刻と別の行の開始時刻が同時刻の場合、これは「重なっていない」とみなされます。

設定するパラメーター

「開始時刻」「終了時刻」「日付(省略可能)」「エラーメッセージ」を設定します。

開始時刻

時間範囲の開始時刻を表しているフィールドを選択します。テーブル内にあるフィールドしか選択できません。

選択可能なフィールドタイプは以下の通りです。

  • 日時
  • 時刻

終了時刻

時間範囲の終了時刻を表しているフィールドを選択します。テーブル内にあるフィールドしか選択できません。

選択可能なフィールドタイプは以下の通りです。

  • 日時
  • 時刻

「開始時刻」が日時フィールドで、「終了時刻」が時刻フィールドの場合、終了時刻の日付は開始時刻の日付と同じ日とみなし、重なりチェックは日付込みでチェックされます。「同じ日とみなす」際、ログインユーザーのタイムゾーンをもとに判断します。

「開始時刻」が時刻フィールドで「終了時刻」が日時フィールドというような指定はエラーになります。

日付(省略可能)

「開始時刻」「終了時刻」として時刻フィールドを選択した場合に、このパラメーターを選択可能です。テーブル内にあるフィールドしか選択できません。日付と時刻を分けて入力しているようなケースで使用します。

「開始時刻」「終了時刻」とも時刻フィールドで、なおかつ「日付(省略可能)」を省略した場合、時刻の重なりをチェックする際に日付は考慮しません。

「開始時刻」「終了時刻」とも時刻フィールドで、なおかつ「日付(省略可能)」を指定した場合、日付込みで時刻の重なりをチェックします。

重なりエラーが検出された場合でも、この「日付(省略可能)」で指定したフィールドにはエラーは表示されません。

選択可能なフィールドタイプは以下の通りです。

  • 日付

エラーメッセージ

エラーがあった場合に表示するエラーメッセージを入力します。

注意事項

開始時刻が終了時刻よりも未来になっているような場合、正常な重なり判定が行われません。

krewSheet 対応状況

対応していません。

制限事項

1つのテーブル内でのチェックのみが可能です。複数のテーブルをまたいでのチェックはできません。