Dynamic multi-value lookup value selection in new UI/modern UX returns error CMN-0009: Attribute 'Attribute name' has invalid Lookup Value '[xxxx]'
Another side effect of this issue, is when you are able to update MVL via XOG or in Classic but when going to the List in MUX you will see multiple values because of wild character search. See screenshot below.
Steps to Reproduce:
1. Create custom lookup (name: ABC, id: C_L_ABC) from query
SELECT @SELECT:RESOURCES.ID:ID@,
@SELECT:RESOURCES.FULL_NAME:FULL_NAME@,
@SELECT:RESOURCES.LAST_NAME:LAST_NAME@,
@SELECT:RESOURCES.FIRST_NAME:FIRST_NAME@,
@SELECT:RESOURCES.UNIQUE_NAME:UNIQUE_NAME@,
@SELECT:RESOURCES.UNIQUE_NAME:UNIQUE_CODE@,
@SELECT:RESOURCES.LAST_UPDATED_DATE:LAST_UPDATED_DATE@
FROM SRM_RESOURCES RESOURCES
WHERE @FILTER@
AND case when resources.user_id is null then 0 else resources.user_id end != -99
AND RESOURCES.RESOURCE_TYPE = 3
2. Create custom attribute on object Project
Attribute name: ABC
ID: c_prj_abc
API attribute ID: c_prj_abc
3. Create custom lookup (name: ABC Task, id: C_L_SPP_TASK) from query
SELECT @SELECT:RESOURCES.ID:ID@,
@SELECT:RESOURCES.FULL_NAME:FULL_NAME@,
@SELECT:RESOURCES.LAST_NAME:LAST_NAME@,
@SELECT:RESOURCES.FIRST_NAME:FIRST_NAME@,
@SELECT:RESOURCES.UNIQUE_NAME:UNIQUE_NAME@,
@SELECT:RESOURCES.UNIQUE_NAME:UNIQUE_CODE@,
@SELECT:RESOURCES.LAST_UPDATED_DATE:LAST_UPDATED_DATE@
from ODF_MULTI_VALUED_LOOKUPS mv
left join PRTASK tsk on tsk.PRPROJECTID = mv.PK_ID
left join SRM_RESOURCES RESOURCES on RESOURCES.ID = mv.VALUE
where mv.OBJECT = 'project' and mv.attribute = 'c_prj_abc'
and (tsk.PRPROJECTID = @WHERE:PARAM:USER_DEF:INTEGER:PRJ_ID@ or @WHERE:PARAM:USER_DEF:INTEGER:PRJ_ID@ is null)
4. Create custom attribute on object Task
Name: ABC
Id: c_tsk_abc
Data type: Multi Valued Lookup
Map parameter prj_id to prprojectid
5. Add custom project attribute to detail module in New UX and try to select multiple values
6. Add custom task attribute to the task detail view and try to select a subset of the values selected in the previous step
Expected Results: Task lookup value saved selected to be saved
Actual Results: Task lookup value select not saved, error message in browser console
CMN-0009: Attribute 'attribute name' has invalid Lookup Value '[xxxxx]'
Browser trace:
{resourceId: "5006001", httpStatus: "400",…}
errorCode: "lookupValueInvalid"errorMessage: "CMN-0009: Attribute 'ABC' has invalid Lookup Value '[5005083]'"httpStatus: "400"resourceId: "5006001"
Response:
{"resourceId":"5006001","httpStatus":"400","errorMessage":"CMN-0009: Attribute 'ABC' has invalid Lookup Value '[5005083]'","errorCode":"validation.lookupValueInvalid"}