Skip to main content

トリガーの作成

メモ

メモ

日本語で受講されている方へ
このバッジの Trailhead ハンズオン Challenge は英語で受講していただく必要があります。英語の意味についてはかっこ内の翻訳をご参照ください。必ず英語の値をコピーして貼り付けてから、Trailhead Playground の言語を [English] に、ロケールを [United States] に切り替えてください。こちらの指示に従ってください。

翻訳版の Trailhead を活用する方法については、自分の言語の Trailhead バッジをご覧ください。

Trail Together の動画

エキスパートの説明を見ながらこのステップを進めて行きたい場合は、Trail Together シリーズの一部である、こちらの動画をご覧ください。

(巻き戻して最初から見直したい場合、このクリップは 28:13 分から開始されます。)

トリガーを追加する

トリガーのコードは、Apex トランザクションによってバインドされているので、ガバナ制限が適用されます。ガバナ制限の例外の発生を減らすための Salesforce のベストプラクティスは、トリガー内でのオブジェクトのインスタンス化を避けることです。 

代わりに、トリガーからトリガーハンドラーを呼び出し、ハンドラーでオブジェクトをインスタンス化します。トリガーを使用する場合、static キーワードを使用してトリガーハンドラーでメソッドをコールします。static キーワードを使用して、クラスをオブジェクトにインスタンス化することを回避します。これでガバナ制限の例外の発生を防ぐことができます。

createContact メソッドを呼び出す CreateContact トリガーを作成します。

  1. 開発者コンソールで、[File (ファイル)] | [New (新規)] | [Apex Trigger (Apex トリガー)] をクリックします。[New Apex Trigger (新規 Apex トリガー)] ウィンドウが開きます。
  2. [Name (名前)] に、CreateContactと入力します。
  3. [sObject] で、[Candidate__c] を選択します。
  4. [Submit (実行)] をクリックします。
  5. 既存のコードを次のコードに置き換えます。
    trigger CreateContact on Candidate__c (after insert){
        /* Invoke the createContact method with a list of Candidates as the argument
        to create a corresponding Contact from each new Candidate Record */
        CreateContactFromCan.createContact(Trigger.new);
    }
  6. トリガーを保存します。

新しい応募者を作成して、トリガーをテストします。

  1. アプリケーションランチャー (アプリケーションランチャー) で、[Candidates (応募者)] を見つけて開きます。
  2. [New (新規)] をクリックします。
  3. 応募者レコードを次のとおり作成します。
    • First Name (名): Gina
    • Last Name (姓): Simmons
    • Email (メール): gsimmons@test.com
  4. [Save (保存)] をクリックします。
  5. アプリケーションランチャー (アプリケーションランチャー) で、[Contacts (取引先責任者)] を見つけて開きます。
  6. [All Contacts (すべての連絡先)] リストビューを選択します。
  7. Gina Simmons という名前の連絡先が作成されていることを確認します。

まとめ

お疲れさまでした。初めての Apex コードを作成し、開発者コンソールを使用してコードスニペットを評価しました。Apex についての詳細は、「システム管理者のための Apex の基本」モジュールを参照してください。

無料で学習を続けましょう!
続けるにはアカウントにサインアップしてください。
サインアップすると次のような機能が利用できるようになります。
  • 各自のキャリア目標に合わせてパーソナライズされたおすすめが表示される
  • ハンズオン Challenge やテストでスキルを練習できる
  • 進捗状況を追跡して上司と共有できる
  • メンターやキャリアチャンスと繋がることができる