【Trailhead】一括 Apex トリガ

スポンサーリンク
【Trailhead】一括 Apex トリガ Apex

こんにちは、にいるです。

今日は、Trailheadのモジュール「一括 Apex トリガ」について、解答と解説をまとめたいと思います。

【Trailhead】一括 Apex トリガ

1.チャレンジ内容

チャレンジ内容です。

1-1.原文

    Create an Apex trigger for Opportunity that adds a task to any opportunity set to ‘Closed Won’.
    To complete this challenge, you need to add a trigger for Opportunity. The trigger will add a task to any opportunity inserted or updated with the stage of ‘Closed Won’. The task’s subject must be ‘Follow Up Test Task’.

  • The Apex trigger must be called ‘ClosedOpportunityTrigger’
  • With ‘ClosedOpportunityTrigger’ active, if an opportunity is inserted or updated with a stage of ‘Closed Won’, it will have a task created with the subject ‘Follow Up Test Task’.
  • To associate the task with the opportunity, fill the ‘WhatId’ field with the opportunity ID.
  • This challenge specifically tests 200 records in one operation.

1-2.和訳

    ‘ClosedWon’に設定された任意の商談にタスクを追加する商談のApexトリガーを作成します。
    このチャレンジを完了するには、オポチュニティのトリガーを追加する必要があります。 トリガーは、「クローズドウォン」のステージで挿入または更新されたすべての商談にタスクを追加します。 タスクの件名は「フォローアップテストタスク」である必要があります。

  • Apexトリガーは「ClosedOpportunityTrigger」と呼ばれる必要があります
  • 「ClosedOpportunityTrigger」がアクティブな状態で、「Closed Won」のステージで商談が挿入または更新されると、「Follow UpTestTask」という件名で作成されたタスクが作成されます。
  • タスクを商談に関連付けるには、「WhatId」フィールドに商談IDを入力します。
  • このチャレンジでは、1回の操作で200レコードを具体的にテストします。

2.解答と解説

解答と解説です。

2-1.Apexクラス

Apexクラスを書き慣れている方からすれば簡単かと思います。

入ってきた商談レコードをトリガコンテキスト変数「Trigger.new」で拾って、それをfor文で回しているだけですね。
for文の中で、商談のフェーズが’Closed Won’であれば、Taskを作成して関連先にその商談IDを指定しているだけです。

3.まとめ

いかがでしたでしょうか。

トリガは単一レコードだけでなく複数レコードが入ってくることを想定して作成する必要があります。
最初は構文やデータの流れ、実行順序、トリガコンテキスト変数などApexクラスにないものを学習する必要があります。

ただそこを学んでしまえばトリガはもう終わりです。

是非頑張ってください!

他にも色々と標準機能やSalesforce機能について紹介していますので、ご覧ください。

ではでは!

Salesforce 機能別 まとめページ

コメント

タイトルとURLをコピーしました