We are delighted to share our new EIC Delivery Methodology for efficiently managing Saviynt Implementations and delivering quick time to value. CLICK HERE.

Saviynt-Workday Attribute Mapping for manager

ray
New Contributor III
New Contributor III

Hello i need to get the direct manager for the user from workday.
For that i need to access the last Management_Chain_Data and get the Manager from it. i attached a screenshot showing the path.

I tried to use the function [last()] but it doesn't seem to work, anyone had the same issue?

the mapping i tried is but didn't work

"CUSTOMPROPERTY29": "Worker_Data.Management_Chain_Data.Worker_Supervisory_Management_Chain_Data.Management_Chain_Data[last()].Manager.Worker_Reference.ID(@type=='Employee_ID')",

Sans titre.png

 

14 REPLIES 14

aminahasware
New Contributor II
New Contributor II

Hello ,

Try this one.

Worker_Data.Employment_Data.Worker_Job_Data.Position_Data.Manager_as_of_last_detected_manager_change_Reference.ID(@type=='Employee_ID')

Thanks.

AmitM
Regular Contributor III
Regular Contributor III

Hi @ray ,

I used a integration field for manager in the project I worked

"OWNER": "Worker_Data.Integration_Field_Override_Data(Field_Reference->ID=='Manager ID').Value",

Also, there is another field that our current Workday team had some reservation but I used it for one client in past.

Worker_Data.Employment_Data.Worker_Job_Data.Position_Data.Manager_as_of_last_detected_manager_change_Reference.ID(@type=='Employee_ID')

If you also dont want to use that stick to management chain AND last[] not working. Here is another option :

You can use listAsString as shown and use preprocessor to get last value. SAMPLE :

"CUSTOMPROPERTY32": "Worker_Data.Employment_Data.Worker_Status_Data.Leave_Status_Data.On_Leave~;~listAsString",

UPDATE NEWUSERDATA SET customproperty33=SUBSTRING_INDEX(customproperty32,',',-1) where customproperty32 is not null

Best Regards,

Amit

If it solved your challenge, please ACCEPT SOLUTION.

If informative enough hit Kudos

ray
New Contributor III
New Contributor III

thanks @AmitM Amit it worked !

ray
New Contributor III
New Contributor III

hello again @AmitM @aminahasware 

i am having an issue, concerning the mapping to the manager attribut.

i will explain, i mapped a customproperty29 to the manager from workday as below. this is working for all users.

"CUSTOMPROPERTY29": "Worker_Data.Employment_Data.Worker_Job_Data.Position_Data.Manager_as_of_last_detected_manager_change_Reference.ID(@type=='Employee_ID')",

ray_0-1707904867539.png

when i added the mapping below : i dont have the manager populated for all users. THere is a huge gapp . Does anyone had this problem?

"MANAGER": "Worker_Data.Employment_Data.Worker_Job_Data.Position_Data.Manager_as_of_last_detected_manager_change_Reference.ID(@type=='Employee_ID')"

 

ray_1-1707904884545.png

 

 

aminahasware
New Contributor II
New Contributor II

Hi @ray 

Try with replacing Manager with Owner , as in the database there is an 'OWNER' column in the users table for the manager attribute.

Like following

OWNER:Worker_Data.Employment_Data.Worker_Job_Data.Position_Data.Manager_as_of_last_detected_manager_change_Reference.ID(@type=='Employee_ID')

Hope it will work.

 

Regard ,

Amina 

ray
New Contributor III
New Contributor III

@AmitM can you please check this?

AmitM
Regular Contributor III
Regular Contributor III

HI @ray , I shared this in my original post. One of the client I worked with , the workday guy asked me to not use this mapping. But I don't the exact logic behind that. 

Below is from my old post.

Also, there is another field that our current Workday team had some reservation but I used it for one client in past.

Worker_Data.Employment_Data.Worker_Job_Data.Position_Data.Manager_as_of_last_detected_manager_change_Reference.ID(@type=='Employee_ID')

 

Why can't you use the other option of fetching it from management chain? and then find the last entry?

Have that stored in another attribute and compare both attribute values. And see which one is more efficient. If you can't still make it work ask Workday team to give you an integration field that is option one in my post and what we have been using. (Though I think for you management chain one is best option) 

Best Regards,

Amit Malik

ray
New Contributor III
New Contributor III

Hi @AmitM ,
I am doing it by getting the last element and it is working. but the issue is not here it is that when i use the mapping to the manager, most of the users dont have the manager showing.

and when i do the mapping to a customproperty, all users have the manager in it

AmitM
Regular Contributor III
Regular Contributor III

Could you create a fresh forum for this, not to confuse others who will see this forum , as the original ask was resolved.

Can you show value from custome property and respective user exists in users ?


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.

ray
New Contributor III
New Contributor III

Hello yes i will share the modifyuserjson to show the mappings :

 

"UPDATE NEWUSERDATA SET CUSTOMPROPERTY63=SUBSTRING_INDEX(CUSTOMPROPERTY62,',',-1) where CUSTOMPROPERTY62 is not null",
"UPDATE NEWUSERDATA SET MANAGER=SUBSTRING_INDEX(CUSTOMPROPERTY62,',',-1) where CUSTOMPROPERTY62 is not null"
 
the *customproperty63 is correctly showing manager for every user that have a manager.
The manager field is not showing the managers of the users.
 
i put screenshots of the fields and values below. Is it normal ?
 
 
ray_0-1707931519936.pngray_1-1707931541258.pngray_2-1707931699033.pngray_3-1707931726379.png

 

Does PEO82716 User exists ?

 

"UPDATE NEWUSERDATA SET CUSTOMPROPERTY63=SUBSTRING_INDEX(CUSTOMPROPERTY62,',',-1) where CUSTOMPROPERTY62 is not null",
"UPDATE NEWUSERDATA SET OWNER=SUBSTRING_INDEX(CUSTOMPROPERTY62,',',-1) where CUSTOMPROPERTY62 is not null"

Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.

ray
New Contributor III
New Contributor III

it was a mapping issue, i corrected it. thank you !
"UPDATE NEWUSERDATA AS nu JOIN CURRENTUSERS AS u ON nu.CUSTOMPROPERTY63 = u.EMPLOYEEID SET nu.MANAGER = u.USERNAME"

AmitM
Regular Contributor III
Regular Contributor III

Good to hear that !!