Apexで選択リスト項目の選択リスト値を取得したい!
そんなときに使える方法です。
目次
選択リスト値の取得方法
選択リスト値を取得するには「PicklistEntry」 クラスを使用します。
使い方は以下の通りです。
Schema.DescribeFieldResult f = Account.Industry.getDescribe();
List<Schema.PicklistEntry> p = f.getPicklistValues();
for(Schema.PicklistEntry e : p){
system.debug('Label:' + e.getLabel());
system.debug('Value:' + e.getValue());
system.debug('IsActive:' + e.isActive());
system.debug('DefaultValue:' + e.isDefaultValue());
}
上の例では、取引先オブジェクトの「業種(Industry)」項目の選択リスト値情報を取得しています。
以下、取得できる情報です。
スクロールできます
メソッド | 取得情報 |
---|---|
getLabel() | 選択リスト値の表示ラベル |
getValue() | 選択リスト値の値(API参照名) |
isActive() | ユーザインターフェースの選択リスト項目のドロップダウンリストに項目を表示する必要がある場合は true、必要がない場合は false |
isDefaultValue() | デフォルト値の場合は true、そうでない場合は false |
ちなみにこの方法は、単一選択リスト項目、複数選択リスト項目、グローバル値セット利用にかかわらずリスト値を取得できます。
非常に便利ですね。
コメント