ワークフローにおける営業日の計算方法を改善しました。特に、週末にワークフローのトリガーが発生した場合の処理が改善されます。このアップデートにより、+0、+1、+2営業日といった設定が意図する通りに正確に動作し、自動化の実行タイミングがより明確かつ予測しやすくなります。
営業日に基づくワークフローを作成する際、通常は日付項目の次に日数を指定します。この数値によってワークフローの処理の実行タイミングが決まります。
簡潔に説明すると:
- +0 は処理を直ちに実行することを意味します。ただし、営業時間内のみ実行されます。
- +1 は翌営業日に実行することを意味します。
- +2 は2営業日後を意味し、以下同様です。
この設定では、営業日は月曜日から木曜日です。週末にトリガーが発生した場合、次の営業日まで待機します。
ロジックで想定される動作
例えば、土曜日に顧客が登録したとします。営業日を使用する場合、想定される動作は以下の通りです:
- +0 は週末をスキップするため月曜日に実行
- +1 は火曜日に実行
- +2 は水曜日に実行
つまり、処理の実行日は、1営業日ずつ後ろにずれるべきです。
従来のシステムの動作
現在、土曜日などの非営業日にワークフローがのトリガーが発生した場合、システムの動作が上記とは若干異なります。
- +0 は月曜日に行われます。これは正しい動作です。
- +1 も月曜日に行われます。これは想定される動作とは異なります。
- +2 は火曜日に行われます。
つまり、週末にワークフローのトリガーが発生した場合、システムは+0と+1を正しく区別できていませんでした。本来は異なる日に実行されるべきところ、どちらも同じ日に実行されてしまっていたのです。
従来の動作を修正すべき理由
営業日によるスケジュールは、ユーザーにとって明確で予測可能なタイミングで実行されるべきです。
+1が+0と同じ挙動になってしまうと、以下の問題が発生する可能性があります:
- メールや更新情報が想定より早く送信
- 自動化処理の予定より前倒しでの実行
- ワークフローのログ確認時の混乱
この問題を修正することで、意図した通りに動作するようになります。
配送依頼が提出されてから1営業日後にフォローアップメールを送信する物流会社を例に考えてみましょう。
> 顧客が土曜日に配送依頼を提出します。
> ワークフローはフォローアップメールを送信するため「+1営業日」で設定されています。
ユーザーが想定すること:
フォローアップメールは火曜日に送信されるべきです。月曜日は週末明け最初の営業日となり、+1の指定によって、次の営業日である火曜日に繰り越す必要があります。
以前の状況:
週末にワークフローのトリガーが発生した場合、+1が+0と同様に扱われたため、メールは月曜日に送信されていました。
修正後:
メールは火曜日に送信されるようになり、営業日の指定と完全に一致します。
このアップデートの効果
このアップデートによりワークフローが動作しなくなることはありません。営業日の計算ロジックを修正し、スケジュールが一貫した動作となるように改善しただけです。
以下の点が改善されます:
・ワークフローのタイミングがより予測可能に
・+0、+1、+2などの値の正確な処理
・週末にトリガーが発生した際の正しい動作
意図的に旧動作による設定をしている場合を除き、特段の変更は不要です。すべてが以前と同様に機能し続け、より挙動の信頼性が高まります。