私の同僚は、ワークフローを自動化するための Google Apps スクリプトを作成しました (ホテルでの部屋代請求の承認)。概して、スクリプトは期待どおりに機能しているようです。スクリプトには、自動化されたスケジュール (イベント駆動ではなく時間ベース) で実行される機能があります。チェックイン日が1日ずれて予約エラーになった事例が数件あります。残念ながら、すべてのリクエストで発生するわけではありません。リクエストを行うすべての関連ユーザーは、同じタイムゾーン (EST) にいます。
たとえば、10/22 のチェックイン日と 10/23 のチェックアウト日で要求が送信されたが、スクリプトが実行され、送信者が承認の通知を受信すると、チェックインが行われるというインシデントを見てきました。日付が 10/21 に変更され、チェックアウトが 10/22 に変更されました。
HTML メールの関連部分は、スプレッドシートの行から値を取得するだけです: + "
" + "Est チェックイン日: " + Utilities.formatDate(row.arrivalDate, "EST", "MM-dd-yyyy") + "
" + "Est チェックアウト日: " + Utilities.formatDate(row.departureDate, "EST", "MM-dd-yyyy")
この動作の原因は何ですか? これは、コードが実行される特定の Google サーバーの時間が原因でしょうか?