日時・スケジュール
1月なのに前年の第53週?ISO週番号を読みたい
使うツール
年明けの週報に2020-W53と表示されていたら、年の更新を忘れたように見えるかもしれません。しかし2021年1月1日に対しては、これが正しいISO週番号です。カレンダーの年と週を数える年は、年末年始の数日だけ一致しないことがあります。日付を並べて年だけを比較するのではなく、週の開始日と終了日まで見れば、同じ週を別々の年へ分断していないか確かめられます。
1月1日を入力して、週の両端を見る
2021-01-01ISO週番号で日付から調べる方式を選び、この日付を入力します。週基準年は2020、週番号は53、開始日は2020-12-28、終了日は2021-01-03です。入力した日付の年が書き換わったわけではありません。2021年1月1日という暦日が、2020年の第53週という七日間に含まれることを示しています。
続いて2021-01-04を入力すると、2021年の第1週へ進みます。年の切替を確認したいときは、1月1日一つだけではなく、その前後の月曜日も入力してみます。週報の対象期間が12月28日から1月3日なのに、保存名だけ2021-W53とすると、別の年の週を指すことになりかねません。日付、週基準年、週番号を一組として確認します。
第1週は『1月1日を含む週』とは限らない
ISO週は月曜日から日曜日までを一週間とします。第1週は、その年の最初の木曜日を含む週です。言い換えると、1月4日を含む週になります。この決め方によって、年初の短い端数の週を別の小さな週として扱わず、七日単位でそろえられます。木曜日が前年にある週なら、金曜日が1月1日でも前年の週として数えます。
そのため、12月の日付が翌年の第1週へ入ることもあります。例えば2018-12-31は2019年の第1週です。『前年になる不具合』だけを例外処理で直そうとすると、今度は年末に翌年へ進むケースでずれます。暦年に週番号を足す独自ルールを作るより、週基準年を含む結果をそのまま組にして使う方が、境界の条件を説明しやすくなります。
第53週が毎年あるとは限らない
2020-W53逆変換へ切り替え、2020-W53を入力すると12月28日から翌1月3日までの期間を確認できます。一方、2021-W53は存在しないため入力エラーです。年末の週番号を機械的に一つ増やして53にしたり、前年に第53週があったから今年もあると仮定したりしないでください。存在しない週を次の年へ勝手に繰り越さず、元データや集計規則を確認します。
外部ファイルの2020-W53という値を受け取った場合も、逆変換した開始日と終了日を担当者の想定と照合します。先方が日曜始まりの独自週を使っているなら、見た目が同じ『第53週』でも対象日は一致しません。ツールの結果はISO方式の答えであり、企業独自の締め日や会計年度を推測するものではありません。
タイムスタンプを週へ分ける前に、日付を決める
2021-01-03T15:30:00Z
2021-01-04T00:30:00+09:00この二つは同じ時点ですが、UTCでは日曜日、日本では月曜日です。UTCの日付で集計すると2020-W53、日本の日付で集計すると2021-W01になります。ISO週番号ツールへ入れるのは日付なので、ログの時刻からどの地域の日付を取り出すかは先に決めます。タイムゾーン変換で日付を確認してから、週番号を求めると判断の順序がはっきりします。
週の終了日が日曜日と出ても、データベースの抽出条件へその日の00:00を終了時刻として入れると、日曜日の大半が抜けます。日付の範囲表示と時刻の比較条件は別物です。実際の抽出では、その地域の週開始から次の週開始より前まで、という条件が業務の定義に合うか確認してください。この計算機は抽出を実行しないので、データの件数や漏れまでは判断しません。
週報の修正を、年末年始の一組で確かめる
2018-12-31 → 2019-W01
2020-12-28 → 2020-W53
2021-01-01 → 2020-W53
2021-01-03 → 2020-W53
2021-01-04 → 2021-W01一つの正しい日付だけで修正完了とせず、年末、元日、日曜日、翌月曜日をまとめて確認します。週番号から期間へ戻し、元の日付が範囲内にあることも確かめます。この往復で、番号は合っているが開始日が一日ずれている、といった問題を見つけやすくなります。
共有する報告には、可能なら『ISO 2020-W53(12月28日〜1月3日)』のように対象日も添えます。番号を覚えていない人でも期間を確認でき、日曜始まりのカレンダーとの違いも説明しやすくなります。必要なのは年の表記を見慣れたものへ直すことではなく、比較する二つの報告が同じ七日間を集計していると確認することです。