毎月1日に実行されるスケジュールされたジョブが、優先開始時刻が1amに設定されています。ジョブは、Salesforceインタフェース(Develop | Apex Classes | Schedule Apex)を使用してスケジュールされました。実行すると、システム日付(System.today();
)に基づいてレコードの月フィールドが設定されます。時折、月が間違って設定されていると、私はそれがシステム日付に設定された日付変数のためだと思う。スケジュールされたジョブが優先開始時刻に使用する時間帯
ジョブを1amで実行するように設定し、インターフェイスを使用して自分のユーザー(タイムゾーンをCDTに設定)でログインした場合、どの値がSystem.today()
によって返されますか?現在のCDT日付、またはGMT日付は返されますか? the APEX dev guideから
あなたは正しいです。以前はこのテストは考えていませんでしたが、明日の日付を持つタイムゾーンにユーザを設定して、Execute Anonymousの 'System.today();'を実行しようとしましたが、実際には現在のユーザのタイムゾーンを使用します日付を返します。それは '2012-03-15 00:00:00'を返しました。 –