You need to sign in to do that
Don't have an account?
ruparupa
毎月1回別の日にApexスケジュールを実行する方法について
お世話になっております。
Apexのスケジュールで、毎月1回、それぞれ別の日に動くようにしたいと思っています。
現在考えている実装方法は、
レコードでApexスケジュールを動かしたい日(例えば「2016/1/1」、「2016/2/2」、、など)をデータとして保持させ、
Apexスケジュールとしては毎日動かして、動いた日が保持させたデータの日であれば処理を実行、そうでなければ何もしないというような
実装をしようかと考えているのですが、、他にもっとスマートなやり方はありますでしょうか。
ご知恵を拝借したく、宜しくお願い致します。
Apexのスケジュールで、毎月1回、それぞれ別の日に動くようにしたいと思っています。
現在考えている実装方法は、
レコードでApexスケジュールを動かしたい日(例えば「2016/1/1」、「2016/2/2」、、など)をデータとして保持させ、
Apexスケジュールとしては毎日動かして、動いた日が保持させたデータの日であれば処理を実行、そうでなければ何もしないというような
実装をしようかと考えているのですが、、他にもっとスマートなやり方はありますでしょうか。
ご知恵を拝借したく、宜しくお願い致します。
https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_scheduler.htm
https://trailhead.salesforce.com/ja/asynchronous_apex/async_apex_scheduled
1.スケジュールレコードの作成
実行日を登録する。
↓
2.スケジュールレコードの作成時、Trigger/プロセスビルダーで処理呼び出し
スケジュールレコードで登録された実行日でApexバッチのスケジュールを行う。
All Answers
https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_scheduler.htm
https://trailhead.salesforce.com/ja/asynchronous_apex/async_apex_scheduled
1.スケジュールレコードの作成
実行日を登録する。
↓
2.スケジュールレコードの作成時、Trigger/プロセスビルダーで処理呼び出し
スケジュールレコードで登録された実行日でApexバッチのスケジュールを行う。
スケジュールレコードというのはカスタムオブジェクトなどでつくるということですよね。
検討させていただきます!ありがとうございます。
スケジュールレコードが更新されたら作成時につくられたスケジュールを削除して新しくつくるのがよいですかね。
今のところ実行時間の変更はできないので、作り直すしかなさそうです。
ありがとうございます!