Dziwne zagadnienie zmiany daty w wynikach skryptu

Mój kolega napisał skrypt Aplikacji Google, aby zautomatyzować przepływ pracy (zatwierdzanie żądań pokojowych w hotelu). Ogólnie skrypt wydaje się działać zgodnie z oczekiwaniami. W skrypcie istnieje funkcja działająca w zautomatyzowanym harmonogramie (oparta na czasie, a nie sterowana zdarzeniami). Odnotowano kilka przypadków, w których data zameldowania została wyłączona o jeden, co doprowadziło do błędu rezerwacji. Niestety nie występuje dla wszystkich żądań. Wszyscy istotni użytkownicy składający wnioski są w tej samej strefie czasowej (EST).

Na przykład widziałem incydenty, w których wniosek został złożony z datą odprawy 10/22 i datą wyewidencjonowania 10/23, ale kiedy skrypt jest uruchamiany, a zgłaszający otrzymuje powiadomienie o zatwierdzeniu odprawy data przesunięta do 10/21 i wymeldowanie do 10/22.

Odpowiednia część wiadomości e-mail w formacie HTML polega po prostu na pobraniu wartości z wiersza arkusza kalkulacyjnego: + ”

„+„ Est Check In Date: ”+ Utilities.formatDate (row.arrivalDate,„ EST ”,„ MM-dd-yyyy ”) +”

„+„ Est Check Out Date: ”+ Utilities.formatDate (row.departureDate,„ EST ”,„ MM-dd-yyyy ”)

Co może spowodować takie zachowanie? Czy może to być spowodowane czasem na danym serwerze Google, na którym kod jest wykonywany?

questionAnswers(3)

yourAnswerToTheQuestion