Advertisement
Guest User

Untitled

a guest
May 26th, 2019
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.61 KB | None | 0 0
  1. // Usage: getPicklistLabelsWithValues(new List<String>{'Case.Status', 'Lot__c.Type__c'})
  2. @AuraEnabled
  3. public static Map<String,List<Map<String, String>>> getPicklistLabelsWithValues(List<String> objectWithFieldList){
  4. try{
  5. Map<String,List<Map<String, String>>> pickListLabelsValuesMap= new Map<String,List<Map<String, String>>> ();
  6. for(String objectWithField : objectWithFieldList)
  7. {
  8. List<String> objectWithFieldSplitted = objectWithField.split('\\.');
  9. pickListLabelsValuesMap.put(objectWithFieldSplitted[1], getPicklistLabelsWithValuesValuesForField(Schema.getGlobalDescribe().get(objectWithFieldSplitted[0]).getDescribe().fields.getMap().get(objectWithFieldSplitted[1])));
  10. }
  11. return pickListLabelsValuesMap;
  12. }
  13. catch(Exception exceptionInstance)
  14. {
  15. throw new AuraHandledException(exceptionInstance.getStackTraceString());
  16. }
  17. }
  18.  
  19. private static List<Map<String, String>> getPicklistLabelsWithValuesValuesForField(Schema.SObjectField field)
  20. {
  21. List<Map<String, String>> labelsWithValuesMapList = new List<Map<String, String>>();
  22. Map<String,String> pickListLabelValueMap;
  23.  
  24. Schema.DescribeFieldResult fieldResult = field.getDescribe();
  25. List<Schema.PicklistEntry> ple = fieldResult.getPicklistValues();
  26.  
  27. for( Schema.PicklistEntry pickListVal : ple){
  28. pickListLabelValueMap = new Map<String,String>();
  29. pickListLabelValueMap.put('value', pickListVal.getValue());
  30. pickListLabelValueMap.put('label', pickListVal.getLabel());
  31. labelsWithValuesMapList.add(pickListLabelValueMap);
  32. }
  33. return labelsWithValuesMapList;
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement