Before You Install the Recipe
You must perform the following configuration tasks on your Workday and ServiceNow instances in order to successfully connect to these external systems using Oracle Integration and synchronize employees and users.
Configure Workday
To access Workday using Oracle Integration and sync employees, you must perform certain configuration tasks on your Workday instance.
For general configuration tasks, see Prerequisites for Creating a Connection in Using the Workday Adapter with Oracle Integration 3.
In addition, you must create an Enterprise Interface Builder (EIB) report to import and export Workday data in bulk. And, before you create an EIB report, you must create a custom report with custom fields, calculated fields, and business objects.
- Create custom fields.
- In Workday, obtain access to Create Custom Object.
- Select Workday Object as Worker (Effective Dated) and Custom object Name as SN_TicketId.
- Select the values as below.
-
General Settings
Custom Object Name Custom Object Name SN_TicketId Web Service Alias ID snTicketId Allow Multiple Instances per Object? No -
Field Definitions
Current Fields Field Label SN_TicketId Field Type Text -
Permissions
Security Domain Person Data: Personal Data, Person
Data: Personal Information
-
Edit Custom Fields
Edit Custom Fields Display Value SN_TicketId
-
- In Workday, search for Edit Worker additional data business process.
- In the Edit worker additional data business process, go to Action and click Edit definition.
- Add a new step and select values as below.
Note:
In Group column, select the Security Group which should be allowed to edit the custom field.Step Order Type Specify Optional Group All Run as User Due Date Due Data Is Based On Effective Date Complete a5 Edit Additional Data SN_TicketId No HR Administrator - Click OK.
Similarly, create custom fields to store Ticket_ErrorMessage, User_ErrorMessage and ServiceNowUserId.
Note:
Provide Get access of Person Data: Personal Data, Person Data: Personal Information to ISU user being used for getting data from custom report. - Create calculated fields.
- In the quick find box, search for Create Calculated Fields task.
- In the pop-up window, enter the Field name. For example:
CF_new_hire_or_updated
. Also, select the Business Object as Worker, and Function as Evaluate Expression. - Click OK. You are redirected to Create Calculated Field - Evaluate Expression page.
- Under Calculation, select the Field Type as Text and Default Value as Empty String.
- In the Condition column, create the following calculated fields:
- CF-T/F_oic_updated
And/Or ( Field Calculated Field Details Operator Comparison Type Comparison Value ) And CF_Legal_name_change Business Object: Worker
Source Field: Worker History
Related Business Object: Action Event
Condition: CF_legal_name_change?
Sort Field: Effective Date
Sort Direction: Descending (Z to A)
Instance to be Returned: First Occurrence
Function: True or False
is not empty NA NA Or CF_new_event_exist Business Object: Worker
Source Field: Worker History
Related Business Object: Action Event
Condition: CF_effective date range
Fields To Aggregate: Business Process Event
Function: True or False
is not empty NA NA Or ( CF_usererrormsg Business Object: Worker
Lookup Field: Worker Additional Data
Related Business Object: Worker Custom Data Snapshot
Return Value: User_ErrorMessage
Function: True or False
equal to Value specified in this filter User failed And CF_user_ticket_error Business Object: Worker
Lookup Field: Worker Additional Data
Related Business Object: Worker Custom Data Snapshot
Return Value: Ticket_ErrorMessage
Function: True or False
equal to Value specified in this filter Ticket failed ) - CF_legal_name_change?
And/Or ( Field Calculated Fields Details Operator Comparison Type Comparison Value ) And Business Process Type Business Object: Event
Function: True or False
in the selection list Value specified in this filter Legal Name Change And Status Business Object: Event
Function: True or False
greater than or equal to Value specified in this filter Successfully Completed And Effective Date Business Object: Action Event
Function: True or False
greater than or equal to Value from another field Prompt-Start Date - CF_oic_is_new_hired?
And/Or ( Field Calculated Fields Details Operator Comparison Type Comparison Value ) And Hire Date NA greater than or equal to Value from another field Prompt-Start Date And CF_Legal_name_change Business Object: Worker
Source Field: Worker History
Related Business Object: Action Event
Condition: CF_legal_name_change?
Sort Field: Effective Date
Sort Direction: Descending (Z to A)
Instance to be Returned: First Occurrence
Function: True or False
is empty NA NA And CF_new_event_exist Business Object: Worker
Source Field: Worker History
Related Business Object: Action Event
Condition: CF_effective date range
Fields To Aggregate: Business Process Event
Function: True or False
is empty NA NA
- CF-T/F_oic_updated
- In the Return Value If Condition is True column, create the following calculated fields.
Calculated Field Details CF_oic_updated Business Object: Worker
Text Constant: Updated
CF_oiC_NEW_HIRED Business Object: Worker
Text Constant: NEW HIRE
Configuration details for other related calculated fields are listed below.
Calculated Field Details CF_legal_name_change Business Object: Worker
Source Field: Worker History
Related Business Object: Action Event
Condition: CF_legal_name_change?
Sort Field: Effective Date
Sort Direction: Descending (Z to A)
Instance to be Returned: First occurrence
Function: True or False
CF_Ticket_ErrorMessage? Business Object: Worker
Function: Lookup Related Value
Lookup Field: Worker Additional Data
Related Business Object: Worker Custom Data Snapshot
Return Value: Ticket_ErrorMessage
CF_work_email Business Object: Worker
Function: Lookup Value As Of Date
Source Field: Email – Work
Data As Of: Effective Date: empty
Data Entry Date: Entry Date: CF_Last_Functionally_updated_-1millisecond
CF_Last_Functionally_updated_-1mili second Business Object: Global
Function: Increment or Decrement Date
Date Field: Last Functionally Updated
Milliseconds to Add or Subtract: -1
Return Blank Date on Error: Yes
CF_proposed_Supervisory Organization Business Object: Worker
Function: Lookup Value As Of Date
Source Field: Supervisory Organization
Data As Of: Effective Date: empty
Data Entry Date: Entry Date: CF_Last_Functionally_updated_-1mili second
CF_proposed_Phone - Primary Work Business Object: Worker
Function: Lookup Value As Of Date
Date Source Field: Phone - Primary Work
Data As Of: Effective Date: empty
Data Entry Date: Entry
Date:CF_Last_Functionally_updated_-1mili second
CF_User_ErrorMessage? Business Object: Worker
Function: Lookup Related Value
Lookup Field: Worker Additional Data
Related Business Object: Worker Custom Data Snapshot
Return Value: User_ErrorMessage
CF_previous_business_title Business Object: Worker
Function: Lookup Value As Of Date
Source Field: Business Title
Data As Of: Effective Date: empty
Data Entry Date: Entry Date:CF_Last_Functionally_updated_-1mili second
Also, configure the following calculated fields with the following conditions.- CF_effective date range
And/Or ( Field Calculated Field Details Operator Comparison Type Comparison Value ) And Business Process Definition Business Object: Action Event
Function: True or False
in the selection list Value specified in this filter - Change Job (Default Definition)
- Change Job for Global Modern Services
- Change Job for IT Services Group
- Change Job for Sales
- Change Organization Assignments for Worker (Default Definition)
- Change Organization Assignments for Worker for Field Sales - North America Group
- Change Organization Assignments for Worker for Global Modern Services
- Change Organization Assignments for Worker for Marketing
- Change Organization Assignments for Workers by Organization (Default Definition)
- Change Organization Assignments for Workers by Organization for Global Modern Services
- Contact Change (Default Definition)
- Edit Worker Additional Data Event (Default Definition)
- Edit Worker Additional Data Event for Global Modern Services
- Move Worker (Supervisory) (Default Definition)
- Move Worker (Supervisory) for Global Modern Services
- Move Workers (By Organization) (Default Definition)
- Move Workers (By Organization) for Global Modern Services
- Move Workers (Supervisory) (Default Definition)
- Move Workers (Supervisory) for Global Modern Services
- Personal Information Change (Default Definition)
- Personal Information Change for Global Modern Services
- Switch Primary Job (Default Definition)
- Switch Primary Job for Global Modern Services
- Title Change (Default Definition)
- Title Change for Global Modern Services
- Work Contact Change (Default Definition)
And Status Business Object: Action Event
Function: True or False
equal to Value specified in this filter Successfully Completed And Effective Date Business Object: Action Event
Function: True or False
greater than or equal to Value from another field Prompt - Start Date
- Create a custom report.
- Log in to the Workday instance.
- In the quick find box, search for Create custom report.
- In the Create Custom Report window:
- Enter the Report Name. For example:
RPT_new_hire_report
. - Select the Report Type as Advanced.
- Check the Enable As Web Service box.
- Uncheck the Optimized for Performance box.
- Select the Data Source as Active and Terminated Workers.
- Click OK. You are redirected to Edit Custom Report page.
- Under the Columns tab, add the Fields and Custom Fields required for the Workday employee details along with the calculated fields with the relevant Business Object.
Business Object Fields Column Heading Override XML Alias Worker Employee ID Employee_ID Worker First Name firstName Worker Last Name lastName Worker Email - Work Email_-_Work Worker Hire Date Hire_Date Worker Worker Type Worker_Type Worker Business Title businessTitle Worker Supervisory Organization Note:
Choose Column Heading Override as Department.Supervisory_Organization Worker Phone - Primary Work primaryWorkPhone Worker CF_new_hire_or_updated CF_new_hire_or_updated Worker Additional Data ServiceNowUserId servicenowuserid Worker Additional Data SN_TicketId snTicketid Worker Additional Data User_ErrorMessage userErrormessage Worker Additional Data Ticket_ErrorMessage ticketErrormessage
- Enter the Report Name. For example:
- Click OK.
- In Group column heading section, select all business object as below. (Group Column Heading for each business object will be blank)
Group Column Headings
Business Object Group Column Heading Group Column Heading XML Alias Worker Additional Data Worker_Additional_Data_group - After creating custom reports, you can specify how the report results should be sorted.
- Under the Filter tab, add the Fields and Custom Fields required for the Workday employee details along with the calculated fields with the relevant Business Object.
And/Or ( Fields Operator Comparison Type Comparison Value ) And Terminated (based on report date) equal to Value specified in this filter NA And ( Hire Date greater than or equal to Prompt the user for the value Default Prompt Or CF_Legal_name_change is not empty NA NA Or ( CF_new_event_exist is not empty NA NA And ( Email - Work none in the selection list Value from another field CF_work_email Or CF_Ticket_ErrorMessage? equal to Value specified in this filter ticket failed Or CF_User_ErrorMessage? equal to Value specified in this filter user failed Or Business Title not equal to Value from another field CF_previous_business_title Or Supervisory Organization not in the selection list Value from another field CF_proposed_Supervisory Organization Or Phone - Primary Work not equal to Value from another field CF_proposed_Phone - Primary Work ))) - In the Prompts section, check the Populate Undefined Prompt Defaults box.
Note:
The data source Active and Terminated Workers uses built-in prompts such as Start Date, End Date, and so on. Based on the report you have chosen, Workday prompts you to fill in specific reporting criteria.
- Create an EIB report.
- Log in to the Workday instance.
- In the quick find box, search for Create EIB task.
- Enter the Name of the EIB task (EIB_new_hire_report).
- In the Create EIB pop-up, choose Outbound and click OK.
- In the General Settings, enter comments and then click Next.
- Under the Get Data tab, select the Data Source Type as Custom Report.
- Select the Custom Report as RPT_new_hire_report and then click Next.
- Under the Transform tab, select the Transformation Type as New Custom Report Transformation, then click Next.
- Under the Deliver tab, perform the following steps.
- Select the Delivery Method as Workday Attachment.
- Enter the File Name with the relevant file extension. For example,
output.csv
. - Specify the Document Retention Policy (in Days) as should be less than 180, and then click Next.
- In the Details section, select the MIME Type as CSV.
- Click Next.
- Under the Review and Submit tab, verify the details, then click OK.
- Once you create the EIB report, the View Integration System window appears. In the top-left corner, click the ellipsis next to the EIB task name, choose Enterprise Interface, and then select Configure Transformation.
- In the Configure Transformation window, update the report transformation details, click OK, and then click Done.
- In the View Integration System window, in the top-left corner, click the ellipsis next to the EIB task name, choose Integration, and then select Launch/Schedule.
- In the Launch/Schedule Integration pop-up, select the Run Frequency as Run Now, and then click OK.
- In the Schedule an Integration window, specify the Start Date and Hire Date, and then click OK.
The EIB report gets generated.
Configure ServiceNow
You can use admin account credentials or custom account credentials while configuring the ServiceNow connection in Oracle Integration.
If you do not want to use an admin account, create a custom integration user and assign the required role and permissions to the user. For information about creating a custom user, see Prerequisites for Creating a Connection in Using the ServiceNow Adapter with Oracle Integration 3.