We do not have the manager details coming from the Authoritative Source, We have two Non Authoritative Sources and we need to do manager correlation based on the user persona value. If the user persona is staff, then we need to use the supervisor_id from the Employee source and if the persona is faculty, then we need to use the supervisor_id from the Faculty source. I am already mapping the Identity Attribute “uid” with the Source attribute “Supervisor_ID” in both the sources and I am using the below transform to populate the manager attribute,
{
"name": "setManagerName",
"type": "firstValid",
"attributes": {
"values": [
{
"type": "static",
"attributes": {
"value": "#if($Persona == 'staff')$EmployeeRecord#elseif($Persona == 'faculty')$FacultyRecord#{else}MANAGER_NOT_FOUND#end",
"Persona": {
"type": "lower",
"attributes": {
"input": {
"type": "accountAttribute",
"attributes": {
"sourceName": "Primary Source",
"attributeName": "PERSONA"
}
}
}
},
"EmployeeRecord": {
"type": "accountAttribute",
"attributes": {
"sourceName": "Employee Source",
"attributeName": "SUPERVISOR_ID"
}
},
"FacultyRecord": {
"type": "accountAttribute",
"attributes": {
"sourceName": "Faculty Source",
"attributeName": "SUPERVISOR_ID"
}
}
}
}
]
},
"internal": false
}
I could see the Attribute Value is being populated in the preview, But the Identity Value is not getting populated.
Kindly let me know where am I going wrong.