Apex クラスの追加
- Sandbox の Professional Edition、Enterprise Edition、Performance Edition、または Unlimited Edition 組織の Salesforce アカウント、または開発者組織のアカウント。
- Book カスタムオブジェクト。
- [設定] から、[クイック検索] ボックスに「Apex クラス」と入力し、[Apex クラス] を選択して、[新規] をクリックします。
-
クラスエディタで、次のクラス定義を入力します。
1public class MyHelloWorld { 2 3}前述のコードは、次のステップで 1 つのメソッドを追加するクラス定義です。Apex コードは、通常、クラスに含まれています。このクラスは public と定義されているため、他の Apex クラスおよびトリガで使用できます。詳細は、「クラス、オブジェクトおよびインターフェース」を参照してください。 -
クラスの開き括弧および閉じ括弧の間にこのメソッド定義を追加します。
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.Name の Name 項目の末尾に __c は付きません。ステートメント b.Price__c *= 0.9; では b.Price__c の古い値を取り、この値を 0.9 で乗算します。つまり、10% 割り引きされた値にします。次に、新しい値を b.Price__c 項目に保存します。*= 演��子はショートカットです。このステートメントを作成する他の方法は、b.Price__c = b.Price__c * 0.9; です。「式の演算子」を参照してください。
-
[保存] をクリックすると、新しいクラスが保存されます。これで、次の完全なクラス定義が設定されます。
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}