Loading
Table of Contents
Select Filters

          No results
          No results
          Here are some search tips

          Check the spelling of your keywords.
          Use more general search terms.
          Select fewer filters to broaden your search.

          Search all of Salesforce Help
          Populating Picklist Values in Omniscript Inputs from Apex

          Populating Picklist Values in Omniscript Inputs from Apex

          You can populate Select, Multi-select, and Radio elements from a Callable Apex class. The values for the element are obtained during the Omniscript's activation.

          To populate a picklist from an Apex class, make sure to enable Get picklist values when the Omniscript loads for the Omniscript from Setup. For the designer on a managed package, enable Fetch Picklist Values at Script Load.

          To populate the options of an element, a List<Map<String, String>> is returned from the Apex class. The Map Options are Name, the Language Independent Option, and Value, the UI Display value.

          Sample Apex Code for Populating a Picklist:

          global with sharing class SelectOptionsCallable implements Callable
          {
             global Object call(String action, Map<String, Object> args)
             {
                 switch on action {
                     when 'SelectOptions' {
                         return SelectOptions((Map<String, Object>)args.get('input'), (Map<String, Object>)args.get('output'));
                     }
                 }
                 return null;
              }
             
              private List<Map<String, Object>> SelectOptions(Map<String, Object> inputMap, Map<String, Object> outMap)
              {
                  List<Map<String, Object>> optionList = new List<Map<String, Object>>();
                  for (Account acc : [ Select Id, Name from Account limit 8])
                  {
                       Map<String, Object> option = new Map<String, Object>();
                       option.put('name', acc.Id);
                       option.put('value', acc.Name);
                       optionList.add(option);
                  }
                  
                  outMap.put('options', optionList);
                          
                  return optionList;
              }
          }
          

          For information on populating dependent picklists, see Populating Dependent Picklist Values in Omniscript Inputs with Apex.

           
          Loading
          Salesforce Help | Article