Multi Value Codelists
This feature was introduced in 1508 and is a really neat control to have.
It basically allows you to have ONE field, but support MULTIPLE values for the same. Much like Sports(=field), and Cricket, Hockey, Soccer being the multiple values. Without this, one would have to create separate fields for each value, and possibly indicate them as individual Indicators/checkboxes on the UI
This blog gives you a look into how this feature can be used in C4C:
1. To create an MVC(Multi-Value-Codelist), go to the Adaptation Mode in HTML5 and create an extension field, of type Multivalued list. You can now maintain the different values.. In the example below I have a field called ProductsAllowed, and the values possible are SAP ERP, Ariba and Bobj.
2. In the properties of this field, you can specify the further usage eg: if you want to extend it to certain Data Sources or Services for Integration
3. You can also enhance the Advanced Search of the OWL to be able to search on specific values (the values specified are interpreted as ‘OR’ as of 1511).. hence searching for SAP ERP, Ariba would search for any record which has either of these specified. Having the AND condition is also in the backlog for a future release
That’s it !!
Now, you can maintain values for the transaction or master data
Eg: On the Account TI, i have maintained the following values
MVC is also Supported in Code List Restrictions -list of allowed values for a code list can be thus specified based on a control field : Eg:
PDI: Accessing the MVC Field in PDI
You can create the MVC field in the adaptation mode through Key User Tools, and then, in PDI – you can create a .ref file in the PDI solution. Here, you should be able to access MVC fields as well which is interpreted as a string.. As of 1511 we don’t yet have the capability to have MVC sort of a datatype that you can use to declare a field in PDI yet
Other capabilities of MVCs include the following:
- Supported in A2X and A2A Apis as well as oData APIs, and in migration as well
- Can be used in Rule Engines like Territory Rules
- Can be used in Workflows
- Can be defined and transferred using Page Layouts
For Integration, it may be required to do some logic to do the mapping of values between the values in C4C and ERP/CRM.. Just to know, the values that are stored would be comma separated, so the logic should ensure that the separator can be considered to identify individual values.
Eg: Though from a different use case, this is just to show how the values are ultimately stored in the backend:
Hope this helps !!