日時条件ビルダーの定義Issue <!-- div.margin{ padding: 10px 40px 40px 30px; } table.tocTable{ border: 1px solid; border-color:#E0E0E0; background-color: rgb(245, 245, 245); padding-top: .6em; padding-bottom: .6em; padding-left: .9em; padding-right: .6em; } table.noteTable{ border:1px solid; border-color:#E0E0E0; background-color: rgb(245, 245, 245); width: 100%; border-spacing:2; } table.internalTable{ border:1px solid; border-color:#E0E0E0; background-color: rgb(245, 245, 245); width: 100%; border-spacing:0; } .sp td{ border-bottom: 1px solid; border-right: 1px solid; border-color:#E0E0E0; background-color: #ffffff; height: 20px; padding-top: .5em; padding-bottom: .5em; padding-left: .5em; padding-right: .5em; } .sphr td{ border-right: 1px solid; border-bottom: 1px solid; border-color:#E0E0E0; background-color: rgb(245, 245, 245); padding-top: .5em; padding-bottom: .5em; padding-left: .5em; padding-right: .5em; height: 20px; } .title { color: #D1232B; font-weight:; font-size:25px; } .hd1{ color: #D1232B; font-weight:; font-size:18px; } .hd2{ color: #646464; font-weight:bold; font-size:16px; text-decoration: underline; } .hd3{ color: #7a7a7a; font-weight:; font-size:16px; text-decoration:; } .hd4{ color: #000000; font-weight:bold; font-size:14px; text-decoration:; } --> この記事は、日付/時刻機能に関して、特定の演算子が条件ビルダーでどのように機能するかを明確にすることを目的としています。 条件ビルダーでは、日時選択機能を使用して、ユーザーがレポート (Jakarta の一部としてリリースされた会計カレンダープラグインで使用されているものなど) を生成できるようにし、任意のレポートの日時範囲を選択できるようにします。 一部の日付/時刻演算子の複雑さから生じる混乱のため、レポートで返される情報が正確で真実であることをユーザーが理解および確認できるように、各タイプの演算子の意味の定義を以下に示します。 標準会計カレンダーの会計期間は、通常のカレンダーの日付/時間期間と同じです。 (つまり現在の会計月 = 当月、2会計四半期 = 2四半期など) この記事では、 日付/期間 と 会計期間 という用語を同じ意味で使用します。 Resolution定義 前回の会計期間 最後の会計期間 (日、週、月、四半期など) とは、現在の期間の直前に完了した会計期間を意味します。最後の日付/時刻期間をクエリすると、現在の期間は完全に無視されます。最後の日付/時刻期間のクエリは、最後に完了した日付/時刻期間の初日の最初の 1 秒から最後に完了した日付/時刻期間の最後の 1 秒までの範囲をカバーすることを意味します。 例 : 現在の月が 6 月の場合、最終会計月 期間は 5 月 1 日 00:00:00 に開始し、5 月 31 日 23:59:59 に終了します。最後の 2 つ、3 つなどの会計期間にも同じロジックが適用されます。 過去 2 つの会計四半期期間は、2016 年 10 月 1 日 00:00:00 に開始し、2017 年 3 月 31 日 23:59:59 に終了します。 現在の会計期間 現在の 会計期間のクエリは、現在の会計期間の初日の最初の 1 秒から現在の会計期間の最終日の最後の 1 秒までの範囲をカバーすることを意味します。 例 : 現在の月が 6 月の場合、現在の四半期期間は 4 月 1 日 00:00:00 に開始し、6 月 30 日 23:59:59 に終了します。 次の会計期間 次の会計期間」とは、現在の期間の終了直後に開始される会計期間を意味します。次の日付/時刻期間のクエリは、次の日付/期間の初日の最初の 1 秒から次の完了した日付/時刻期間の最終日の最後の 1 秒までの範囲をカバーすることを意味します。 例 : 現在の月が 2017 年の 6 月である場合、今後 12 か月間期間は 2017 年 7 月 1 日 00:00:00 に開始し、2018 年 6 月 30 日 23:59:59 に終了します。 条件ビルダーで日付/時刻期間に使用される演算子 オン:対象とする日付/期間の初日の最初の 1 秒から最終日の最後の 1 秒までの範囲をカバーします。 BEFORE:対象期間の 1 日目 (この日を含む) の最初の 1 秒より前の範囲をカバーします。 例:現在の月が 6 月の場合、クエリー 期日 | 前 | 先月 は 期日 < 2017-05-01 00:00:00 を意味します 次の値以前 (AT OR BEFORE):対象期間の最終日の最後の 1 秒前の範囲をカバーします。 例:現在の月が 6 月の場合、クエリー 期日 | at or before | 先月 は 期日 <= 2017-05-31 23:59:59 を意味します。 AFTER:対象期間の最終日の最後の 1 秒 (この値を含まない) の範囲をカバーします。 例:現在の月が 6 月の場合、クエリー 期日 | after | next month 意味 期日 > 2017-07-31 23:59:59 次の値以後 (AT OR AFTER):対象期間の 1 日目の最初の 1 秒 (この値を含む) の範囲をカバーします。 例:現在の月が 6 月の場合、クエリー 期日 | at or after | next month は 期日 >= 2017-07-01 00:00:00 を意味します BETWEEN - between 演算子の左側の期間の最初の 1 秒 (この値を含む) から右側の期間の最終日の最後の 1 秒 (この値を含む) までの範囲をカバーします。 例:現在の月が 6 月の場合、クエリー 期日 | 次の間 | 過去 6 か月間 | and | 次の四半期 は 期日 >= 2017-12-01 00:00:00 かつ 期日 <= 2017-09-30 23:59:59 を意味します TREND Operators - TREND演算子は、相対的な用語の反対として絶対的に表される期間をカバーします。 曜日、月などの一般的な用語。来週、先週などではなく、月曜日、火曜日などが使用されます。来月、過去 3 か月などではなく、1 月、2 月などが使用されます。次の例から理解しやすくなります。 例: このテストデータは、期日が 2014 年 1 月 1 日から 2020 年 12 月 31 日までの 75 件のインシデントレコードで構成されているため、クエリー Due date | trend | on | on |Monday は、テーブル内の [Due day = Monday] のすべてのレコードを返します。クエリ 期日 | 傾向 | 次の値以後 |10 月期日が対象すべての年の 10 月、11 月、または 12 月であるすべてのレコードを返します。クエリ Due date | trend | before | 5 pm hourは、期日が午後 5 時より前のタイムスタンプを含むすべてのレコードを返します。 相対演算子 - 特定の時間数、日数、月数などの日時期間をカバーします。AGO または FROM NOW。 実用的な観点からは、RELATIVE ON 演算子は正確なモーメントを参照するため、意味がありません。 例: クエリ 期日 | 相対 | 後 | 3 |月 |今からクエリを送信した時点より期日が 3 か月長くなっているすべてのレコードを返します。クエリ 期日 | 相対 | 前 | 6 |営業時間 |ago は、期日がクエリを送信した時点から 6 時間を超えているすべてのレコードを返します。