PR

【Salesforce】オブジェクトのAPI参照名から項目のラベル名を取得する

system Salesforce
この記事は約2分で読めます。
記事内に広告が含まれています。

Salesforce を長期間運用していると、いつの間にか項目数が増えてしまい、管理が大変になっていないでしょうか。

オブジェクトマネージャから項目定義は確認できるものの、項目のラベル名がわかっていない場合は検索できず不便な思いをしていないでしょうか。

この記事では、Salesforce の実装などで API参照名がわかっている時にオブジェクトの項目ラベル名を知りたい場合の方法を紹介します。

Apexコードで確認する方法

以下のコードを開発者コンソールの Anonymous Window から実行すればデバッグログで確認できます。

スポンサーリンク

object-item-label01

object-item-label02

デバッグログを確認する場合は、Debug Only のチェックも忘れないようにしましょう。

このコードのポイントは以下の2点です。

Schema.DescribeSObjectResult objectDescribe = Schema.getGlobalDescribe().get(objectApiName).getDescribe();

指定されたオブジェクトについての詳細情報を取得します。

Schema.SObjectField field = objectDescribe.fields.getMap().get(fieldApiName);

指定されたフィールドのオブジェクトを取得します。

この書き方は汎用性があるので是非覚えておきましょう。

スポンサーリンク

SOQLで確認する方法

実はコードすら書かなくて良いです。

以下のクエリを開発者コンロールの Query Editor で実行するだけです。

SELECT QualifiedApiName, DeveloperName, DataType
FROM FieldDefinition
WHERE EntityDefinition.QualifiedApiName = 'Account'
AND DeveloperName = 'Name'

object-item-label03

この書き方さえ覚えておけば、わざわざオブジェクトマネージャに行く必要もないですね。

何なら、「ラベル名はわかるけどAPI名を知りたい」という場合でも応用できますね。

スポンサーリンク

参考

おわりに

Salesforce の開発はあまり開発者フレンドリーとは言えない部分も多いですが、こうした小技を駆使してストレスを溜めないようにしたいですね。

コメント

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