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

Newer Version Available

This content describes an older version of this product. View Latest

Apex クラスの追加

このステップでは、本の価格を更新するメソッドを含む Apex クラスを追加します。このメソッドは、次のステップで追加するトリガーでコールされます。
前提条件:
  • Sandbox の Professional Edition、Enterprise Edition、Performance Edition、または Unlimited Edition 組織の Salesforce アカウント、または開発者組織のアカウント。
  • Book カスタムオブジェクト
  1. [設定] から、[Quick Find (クイック検索)] ボックスに「Apex Classes (Apex クラス)」と入力し、[Apex Classes (Apex クラス)] を選択して、[New (新規)] をクリックします。
  2. クラスエディターで、次のクラス定義を入力します。
    1public class MyHelloWorld {
    2
    3}
    前述のコードは、次のステップで 1 つのメソッドを追加するクラス定義です。Apex コードは、通常、クラスに含まれています。このクラスは public と定義されているため、他の Apex クラスおよびトリガーで使用できます。詳細は、「クラス、オブジェクトおよびインターフェース」を参照してください。
  3. クラスの開き括弧および閉じ括弧の間にこのメソッド定義を追加します。
    1public static void applyDiscount(Book__c[] books) {
    2   for (Book__c b :books){
    3      b.Price__c *= 0.9;
    4   }
    5}

    このメソッドは applyDiscount と呼ばれ、公開かつ静的メソッドです。これは静的メソッドであるため、メソッドにアクセスするためにクラスのインスタンスを作成する必要はありません。このメソッドにアクセスするには、クラス名の後にカンマ (.)、メソッド名を指定します。詳細は、「静的メソッドとインスタンスメソッド、変数、初期化コード」を参照してください。

    このメソッドでは 1 つのパラメーター、Book レコードのリストを使用します。これは変数 books に割り当てられます。オブジェクト名の後に __c を記述し、Book__c とします。これは、この項目がカスタムオブジェクト、つまり自分で作成した項目であることを示します。Account など Salesforce アプリケーションで提供される標準オブジェクトの末尾はこのポストフィックスではありません。

    コードの次のセクションでは、メソッド定義の残りを記述します。

    1for (Book__c b :books){
    2   b.Price__c *= 0.9;
    3}

    項目名の後に __c を記述し、Price__c とします。これは、この項目がカスタム項目、つまり自分で作成した項目であることを示します。Salesforce のデフォルトで提供されている標準項目へのアクセスには同じ種類のドット表記が使用されますが、__c は使用されません。たとえば、Book__c.NameName 項目の末尾に __c は付きません。ステートメント b.Price__c *= 0.9; では b.Price__c の古い値を取り、この値を 0.9 で乗算します。つまり、10% 割り引きされた値にします。次に、新しい値を b.Price__c 項目に保存します。*= 演算子はショートカットです。このステートメントを作成する他の方法は、b.Price__c = b.Price__c * 0.9; です。「式の演算子」を参照してください。

  4. [Save (保存)] をクリックすると、新しいクラスが保存されます。これで、次の完全なクラス定義が設定されます。
    1public class MyHelloWorld {
    2   public static void applyDiscount(Book__c[] books) {
    3      for (Book__c b :books){
    4         b.Price__c *= 0.9;
    5      }
    6   }
    7}
これで、Book (本) リストを反復処理し、各本の価格項目を更新するコードを含むクラスを作成できました。このコードは、次のステップで作成するトリガーによってコールされる applyDiscount 静的メソッドの一部です。