データを Apex に返す SOQL を作成する
Trail Together の動画
エキスパートの説明を見ながらこのステップを進めて行きたい場合は、Trail Together シリーズの一部である、こちらの動画をご覧ください。
(巻き戻して最初から見直したい場合、このクリップは 24:15 分から開始されます。)
クエリを作成する
作成した Recruiting Account (採用取引先) レコードを取得する SOQL クエリを作成します。
- 開発者コンソールで、[File (ファイル)] | [Open Resource (リソースを開く)] ををクリックします。
- [Account.obj] を選択して、[Open (開く)] をクリックします。
- [Id (ID)] および [Name (名前)] を選択します。CTRL (Windows の場合) または CMD (Mac の場合) を押して複数の項目を選択します。
- [Query (クエリ)] をクリックします。
- クエリエディターにクエリを作成する手順が表示された場合は、もう一度 [Query (クエリ)] をクリックします。
- クエリの末尾に、
WHERE Name = 'Recruiting'
と入力します。 - SOQL クエリが次のようになっていることを確認します。
SELECT Id, Name FROM Account WHERE Name = 'Recruiting'
- [Execute (実行)] をクリックすると、クエリが実行され、結果が表示されます。
新たに作成した Contact (連絡先) を Recruiting Account (採用取引先) に関連付けるには、SOQL クエリを createContact メソッドに追加します。
- CreateContactFromCan クラスで、既存のコードを次のコードに置き換えます。
public with sharing class CreateContactFromCan { //Declare a method that returns void and accepts a Candidate list named candsFromTrigger public static void createContact (List<Candidate__c> candsFromTrigger) { //Select the Recruiting account from the database and add it to a list //named candAccts (from the Account class) List<Account> candAccts = [SELECT Id, Name FROM Account WHERE Name = 'Recruiting']; //Instantiate a Contact list named conList List<Contact> conList = new List<Contact>(); //Declare a FOR list loop that uses an iteration variable named currentCandidate //to loop through the candsFromTrigger list for(Candidate__c currentCandidate:candsFromTrigger) { //Create a Contact and add it to conList //Set the FirstName, LastName, and Email attributes to match the //corresponding attributes of the currentCandidate object (First_Name__c, //Last_Name__c, and Email__c) conList.add(new Contact( AccountId = candAccts[0].Id, FirstName = currentCandidate.First_Name__c, LastName = currentCandidate.Last_Name__c, Email = currentCandidate.Email__c) ); } //Save conList to the database Database.insert(conList); } }
- CreateContactFromCan クラスを保存します。