レコードタイプのIDをSOQLで取得する
オブジェクトのレコードタイプのIDを取得したい時があったので、その時に調べたことをメモします。
レコードタイプはレコードタイプオブジェクトの中にあるレコードなので、そこからSOQLで引っ張ってくるような文を書きます。
下記のサンプルコードはContactオブジェクトのhogeという名前のレコードタイプのIDを抽出する内容になっています。
※レコードタイプの表示ラベル名(Name)ではなく、API名(DeveloperName)の方で検索すること。
// SobjectTypeでオブジェクト指定 // Nameでレコードタイプの名前指定 String sobjectTypeName = 'Contact'; String recordTypeName = 'hoge'; Sobject recordType = [SELECT Id FROM RecordType WHERE SobjectType = :sobjectTypeName AND DeveloperName = :recordTypeName ];
参考ページによるとSOQL以外での取得方法もあるみたいですが、今のところ僕にはこちらで十分。
参考