Saviynt unveils its cutting-edge Intelligence Suite products to revolutionize Identity Security!
Click HERE to see how Saviynt Intelligence is transforming the industry.
Saviynt Copilot Icon

Saviynt-Workday Attribute Mapping for manager

ray
Regular Contributor
Regular Contributor

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 III
New Contributor III

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.

Amit_Malik
Valued Contributor II
Valued Contributor II

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

Kind Regards,
Amit Malik
If this helped you move forward, please click on the "Kudos" button.
If this answers your query, please select "Accept As Solution".

ray
Regular Contributor
Regular Contributor

thanks @Amit_Malik Amit it worked !

ray
Regular Contributor
Regular Contributor

hello again @Amit_Malik @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 III
New Contributor III

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
Regular Contributor
Regular Contributor

@Amit_Malik can you please check this?

Amit_Malik
Valued Contributor II
Valued Contributor II

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

Kind Regards,
Amit Malik
If this helped you move forward, please click on the "Kudos" button.
If this answers your query, please select "Accept As Solution".

ray
Regular Contributor
Regular Contributor

Hi @Amit_Malik ,
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

Amit_Malik
Valued Contributor II
Valued Contributor II

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

Kind Regards,
Amit Malik
If this helped you move forward, please click on the "Kudos" button.
If this answers your query, please select "Accept As Solution".

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


Regards,
Rushikesh Vartak
If this helped you move forward, click 'Kudos'. If it solved your query, select 'Accept As Solution'.

ray
Regular Contributor
Regular Contributor

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 this helped you move forward, click 'Kudos'. If it solved your query, select 'Accept As Solution'.

ray
Regular Contributor
Regular Contributor

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"

Amit_Malik
Valued Contributor II
Valued Contributor II

Good to hear that !!

Kind Regards,
Amit Malik
If this helped you move forward, please click on the "Kudos" button.
If this answers your query, please select "Accept As Solution".