GetRoles

Why

We require several roles from Workday for either making decisions about who should approve things, or who can see items.

How

We used to get roles directly from Workday, rather we get them now from another pass-thru webService.  The documentation for the actual webService is here.  We get a series of role entries such as the below.

   <Role>
        <Cd>CC1243</Cd>
        <Nm>DRAART Associate Managing Director Office</Nm>
        <Inactive>0</Inactive>
        <Type>COST_CENTER</Type>
        <RoleID>cost_center_manager</RoleID>
        <RoleNm>Cost Center Manager</RoleNm>
        <WorkerNm>Watkins, Chris</WorkerNm>
        <EmpID>45215</EmpID>
        <NETID>cw236</NETID>
        <UPI>11123377</UPI>
        <Email>chris.watkins@yale.edu</Email>
        <LoadDt>2017-06-30</LoadDt>
    </Role>

Rest Message

Transform Map

Scheduled Job

The other use of this is covered on the approval workflow page.

Workday Role Import Configuration

The Workday Role Import Configuration table contains configurations for which roles are loaded into ServiceNow.  You need to create a group and role in ServiceNow which corresponds to the role in Workday and populate the Workday role name and segment which will be either supervisory or cost_center.  Next time the scheduled job runs it will populate the group with the appropriate members.

*Some work to do here is to drop people who don't have these roles anymore.  It might be easier to drop everyone and readd them every-time or try and tag and remove those people who weren't reflected in the latest load.

Troubleshooting

If the service is down for some reason, simply re-rerun the job.