Memos About Salesforce

Salesforceにハマってたこと!

sfdc 選択リストのラベルと値 取得

こんにちは、管理人の@Salesforce.Zです。

sfdcには選択リスト項目があり、

それを全部取得したいと思い、ここへ訪問したでしょう

今回、それを共有します。

欲しけりゃくれてやる・・・。

探せ!

この世の全てをそこに置いてきた〜笑


読んだら得ること
★ 選択リストのラベルと値 取得方法



目次

サンプルコード

//選択リスト型の選択できる値を取得
    public static List<Schema.PicklistEntry> getPicklist(String sObjName, String fieldName){
        List<Schema.PicklistEntry> pickList;
        Schema.SObjectType sObjType = (Schema.SObjectType) Schema.getGlobalDescribe().get(sObjName);
        if(sObjType != null){
            Map<String, Schema.SObjectField> fieldmap = sObjType.getDescribe().fields.getMap();
            Schema.SObjectField f = (Schema.SObjectField) fieldmap.get(fieldName);
            if(f != null){
                Schema.DescribeFieldResult r = f.getDescribe();
                pickList = r.getPicklistValues();
            }
        }
        return pickList;
    }

使用方法

@String sObjName
対象オブジェクトのAPI参照名
@String fieldName
対象オブジェクトの選択リスト項目のAPI参照名

使用例

List<Schema.PicklistEntry> shiharaiHohoPicklist = getPicklist('Account', 'Type');
for(Schema.PicklistEntry LV :shiharaiHohoPicklist){
    System.debug('◆◆◆Label:' + LV.getLabel() + '◆◆◆Value:' + LV.getValue());
}

結果

f:id:jude2016:20180725181624p:plain