We have a data object that is used in the web portal through a List Data Page, and users can create new records for this data object. The underlying data class has three key fields. During record creation, two of these key fields are currently populated using dropdowns/picklists. This functionality is working as expected.
We recently received a change request requiring these two fields to be displayed as multi-select controls instead of single-select dropdowns.
To implement this, we need to change the field type to Data Reference. However, when doing so, the property type becomes a Page (single record), and this value cannot be passed directly as a parameter to the default savable Data Page used by the out-of-the-box (OOTB) Create View.
My initial approach was to create a User Action and add a post-processing Data Transform. In this Data Transform, I would loop through the selected Data Reference values. For example:
Loop through List1
Set KeyValue(Previous value of dropdown which is also key of the table) = List1().KeyValue
The idea is to map the selected values to the corresponding key fields before saving the record.
However, I am facing an issue when trying to reference this User Action. Since we are using the OOTB Create View to add records to the data object, I do not see an option to associate or invoke a custom User Action from the Create View configuration.
Previously, I was able to reference a custom User Action instead of a View for properties of type Embedded Data, but for this use case, I do not see a similar option.
Has anyone implemented a similar requirement or found a way to invoke a custom User Action, Data Transform, or post-processing logic while using the OOTB Create View for a data object?