« カスタム表示ラベル | メイン | スケジュール実行するApexのテストメソッドと実行時刻の詳細設定 »

2010年8月10日 (火)

Apexをスケジュール実行する方法

Winter '10 API バージョン17.0から、Apexをスケジュール実行できるApex Schedulerが利用できるようになりました。これはかなり便利。

画面からの設定だと、「1日に1回しかスケジューリングできない」「1時間単位でしかスケジューリングできない」といった制約はありますが、これがあれば、日次バッチや週次バッチが作れちゃいます

やり方は簡単。ApexクラスにSchedulableインタフェースのexecuteメソッドを実装するだけです。executeメソッドの中にスケジュール実行させたい処理を記述します。

実装例はこちら↓

global class HogeClass implements Schedulable {
    global void execute(SchedulableContext sc) {
// スケジュール実行させたい処理
    }
}

後は、このクラスをスケジューリング設定してあげれば完了です。
「アプリケーションの設定」→「開発」→「Apexクラス」→「Apexをスケジュール」を押下すると、こんな画面↓になるので、先ほど作ったクラスを「Apexクラス」に設定してあげて下さい。

ここで、「Apexクラス」には、Schedulableインタフェースを実装したクラスしか設定できないので注意して下さい。

20100810_1

20100810_2

スケジューリングされていることは、「管理者設定」→「監視」→「スケジュール済みジョブ」で確認できます↓

スケジュール実行を取り消したい場合は、ここから削除します。

20100810_3

コメント

コメントを投稿

コメントは記事の投稿者が承認するまで表示されません。

採用情報

株式会社フレクトでは、事業拡大のため、
・Salesforce/Force.comのアプリケーション開発
・HerokuやAWSなどのクラウドプラットフォーム上
でのWebアプリケーション開発
エンジニア、マネージャーを募集中です。

未経験でも、これからクラウドをやってみたい方、
是非ご応募下さい。

フレクト採用ページへ

会社紹介

  • 株式会社フレクトは、
      ・認定コンサルタント
      ・認定上級デベロッパー
      ・認定デベロッパー
    が在籍している、セールスフォースパートナーです。
    また、heroku partnersにも登録されています。
    herokuパートナー
    株式会社フレクト
    Salesforce/Force.com
    導入支援サービス
    弊社の認定プロフェッショナルが支援致します。
    ・Visualforce/Apexによるアプリ開発
    ・Salesforceと連携するWebアプリ開発
    も承っております。
    セールスフォースご検討の際は、
    お気軽にお問合せください。

Twitter

リファレンス

■Developer's Guide(リファレンス)
・Apex  HTML | PDF | 日本語PDF | ガバナ制限
・Visualforce  HTML | PDF
・Web Services API  HTML | PDF | 日本語PDF
・Bulk API  HTML | PDF
・REST API  HTML | PDF | 日本語PDF
・Metadata API  HTML | PDF
・Migration Tool  HTML | PDF
・AJAX Toolkit  HTML | PDF
・Data Loader PDF | 日本語PDF

■早見表 (日本語)
数式
Apex
Visualforce
Web Services API
Chatter