この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

スケジュール可能なインターフェースを実装するクラスの追加

このレッスンでは、Schedulable インターフェースを実装するクラスを作成します。つまり、このジョブは指定された日時に実行されるようにスケジュールできます。

  1. 開発者コンソールで、[File (ファイル)] | [New (新規)] | [Apex Class (Apex クラス)] をクリックします。
  2. クラス名として「MySchedulableClass」と入力し、[OK] をクリックします。
  3. 自動生成されたコードを削除し、次のコードを追加します。
    1global class MySchedulableClass implements Schedulable {
    2   global void execute(SchedulableContext ctx) {
    3      CronTrigger ct = [SELECT Id, CronExpression, TimesTriggered, NextFireTime
    4                FROM CronTrigger WHERE Id = :ctx.getTriggerId()];
    5
    6      System.debug(ct.CronExpression);
    7      System.debug(ct.TimesTriggered);
    8
    9      Merchandise__c m = new Merchandise__c(
    10                    Name='Scheduled Job Item',
    11                    Description__c='Created by the scheduler',
    12                    Price__c=1,
    13                    Total_Inventory__c=1000);
    14      insert m;
    15   }   
    16}
  4. [File (ファイル)] | [Save (保存)] をクリックします。

もうひとこと...

  • クラスの宣言の末尾には、スケジュール可能な実装 が追加されています。これは、クラスが Schedulable インターフェースを実装しており、このインターフェースに含まれるメソッドを実装する必要があることを示します。含まれるメソッドは、次の execute メソッド 1 つのみです。
    1global void execute(SchedulableContext sc){}
    このメソッドのパラメータは SchedulableContext オブジェクトです。このオブジェクトは、CronTrigger API オブジェクトの ID を返す getTriggerId メソッドを提供します。クラスがスケジュールされると、スケジュール済みジョブを表す CronTrigger オブジェクトが作成されます。
  • CronTrigger オブジェクトは、スケジュール済みジョブに関する追加情報を取得するためにクエリされます。Cron 式とこれまでジョブが実行された回数がデバッグログに書き出されます。
  • 最後に、execute メソッドが商品レコードを作成します。