Workday Source Transformation in Mappings
When you configure a Source transformation, select the Workday connection and choose an operation to represent a Workday source. You can parameterize a Workday connection.
You can select an operation for the source based on the WSDL imported through the connection. Configure the request message using the request message template. You can parameterize the input values in the request XML. Configure the advanced properties to set the tracing level and the cache size for the web service response.
You can view the response structure in the field mapping. When you map the elements from the response structure to the output fields, the Secure Agent creates the output groups, along with the primary and foreign keys for the field names. When you deploy the mapping in a Mapping Configuration task and run the task, the Secure Agent reads the data from Workday.
Source Transformation Properties
You can use one or more Source transformations in a mapping. Use a Joiner transformation to join data from two Source transformations.
When you select a source transformation, the Properties panel displays the following areas and information:
- •General. Use to configure the name and a description for the source.
- •Source. Use to select the connection and the operation, and to configure the request options, and advanced source properties.
- •Field Mapping. Use to map elements of the response structure with the output fields.
- •Fields. Use to edit the metadata source field metadata that you want to use in the mapping.
Workday Advanced Source Properties in Mappings
In a mapping, you can configure a Source transformation to represent a Workday source. For Workday source connections used in Mapping Configuration tasks, you can configure advanced properties in the Source page of the Mapping Configuration Task wizard.
The following table describes the advanced properties that you can configure in a Source transformation:
Property | Description |
---|
Tracing Level | Amount of detail that appears in the log for the Source transformation. Use the following tracing levels: - - Terse
- - Normal
- - Verbose Initialization
- - Verbose
Default is normal. |
Cache Size for Web Service Response (KB) | Memory available for the web service response. If the web service response contains many rows or columns, you might want to increase the cache size. Default is 1024 KB. |
Batch Size | The number of parallel pages that you want the Secure Agent to read in a single request when you read large amounts of data from Workday. You can specify a maximum batch size of 20. Default is 1. |
Source Transformation Mapping Example
You are a human resources administrator and you want to extract contact information, such as first name, last name, email, and phone number of employees from Workday to a flat file. You want to extract records updated through a specified period from Workday.
To read data from Workday and write to a flat file, perform the following tasks:
- 1. Create a Workday connection. Verify that you select Human Resources as the Module name and specify the WSDL version in the connection properties.
The following image shows the configured Workday connection:
- 2. Create a flat file connection to write data to the flat file.
- 3. Create a Workday mapping.
The following image shows the Workday mapping:
- 4. Add a Source transformation, specify a name and description in the general properties.
- 5. On the Source tab, perform the following steps:
- a. In the Connection field, select the configured Workday connection to connect to Workday.
- b. In the Operation field, select Get_Workers as the operation.
The following image shows the Get_Workers operation and the description from the list of Read Operations:
- c. In the Request Options section, configure the request message in the following XML format, specify the attributes in the message, and validate the message:
<bsvc:Get_Workers_Request xmlns:bsvc="urn:com.workday/bsvc" bsvc:version="v25.0">
<bsvc:Request_Criteria>
<bsvc:Transaction_Log_Criteria_Data>
<bsvc:Transaction_Date_Range_Data>
<bsvc:Updated_From>$$Updated_From</bsvc:Updated_From>
<bsvc:Updated_Through>$$Updated_Through</bsvc:Updated_Through>
</bsvc:Transaction_Date_Range_Data>
</bsvc:Transaction_Log_Criteria_Data>
</bsvc:Request_Criteria>
<bsvc:Response_Filter>
<bsvc:Count>1</bsvc:Count>
</bsvc:Response_Filter>
<bsvc:Response_Group>
<bsvc:Include_Personal_Information>1</bsvc:Include_Personal_Information>
<bsvc:Include_Transaction_Log_Data>1</bsvc:Include_Transaction_Log_Data>
</bsvc:Response_Group>
</bsvc:Get_Workers_Request>
- The request message specifies the criteria to include personal information of workers that was updated between a specified period from Workday. To specify the period, the request message includes parameterized values for $$Updated_From and $$Updated_Through.
- d. In the Advanced Properties section, set the tracing level to Normal, and use the default cache size of 1024.
- 6. On the Field Mapping tab, select the first name, last name, phone data, and email address elements in the response structure that you want to map to the output fields.
The following image shows the response structure on the left pane in a hierarchical format and the output groups on the right pane in a relational format:
The Secure Agent creates two output groups, worker and email address, which results in two relational output files. Primary and foreign keys are auto-generated.
- 7. Add three Target transformations and specify the target objects for each of the transformations. Perform the following steps:
- a. Select a flat file connection for each of the target transformations to write data to the flat files.
- b. Create target objects worker.csv, email.csv, and upd_fm_thro.csv files to write data to the target.
- c. Select the output group from Workday that you want to link to the target objects.
- 8. Add an Expression transformation, and include a SetVariable function and the parameterized values $$Updated_From and $$Updated_Through in the expression so that the task updates the values by a day at the end of each run.
The following image shows the configured expression that utilizes the in-out parameters:
- 9. Click Task Wizards > Mapping Configuration Task, and select the mapping for the task.
The following image shows the Mapping Configuration Task Wizard with the applied mapping:
The following image shows the
In-Out Parameters tab configured with the default and updated parameter values for the task:
- 10. When you save and run the mapping, the Secure Agent retrieves employee records from Workday and writes the data to the corresponding flat files.
The following table shows an example of data in the email.csv file after you run the task:
FK_Worker | Email_Address |
---|
1 | ernestegg@companye1.com |
4 | abeabel@companya.com |
4 | abeabel@workday.net |
The following table shows an example of data in the worker.csv file after you run the task:
PK_Worker | Phone_Data | First_Name | Last_Name |
---|
1 | <infa_packed><wd:Phone_Data wd:Formatted_Phone="+1 (650) 882-6532"> <wd:Country_ISO_Code>USA</wd:Country_ISO_Code> <wd:International_Phone_Code>1</wd:International_Phone_Code> <wd:Area_Code>650</wd:Area_Code> <wd:Phone_Number>882-6532</wd:Phone_Number> <wd:Phone_Device_Type_Reference wd:Descriptor="Mobile"> <wd:ID wd:type="WID">d691375437c848aea9d5b0874353bfd7</wd:ID> <wd:ID wd:type="Phone_Device_Type_ID">1063.1</wd:ID> </wd:Phone_Device_Type_Reference> <wd:Usage_Data wd:Public="0"> <wd:Type_Data wd:Primary="1"> <wd:Type_Reference wd:Descriptor="Home"> <wd:ID wd:type="WID">836cf00ef5974ac08b786079866c946f</wd:ID> <wd:ID wd:type="Communication_Usage_Type_ID">HOME</wd:ID> </wd:Type_Reference> </wd:Type_Data> </wd:Usage_Data> </wd:Phone_Data> </infa_packed>
| Ernest | Egg |
The following table shows the parameterized values updated for $$Updated_From and $$Updated_Through in the flat file after every task that you run:
PK_Get_Workers_Response | UF | UT |
---|
- | 5/11/2016 | 5/12/2016 |
- | 5/12/2016 | 5/13/2016 |
The default date increments by one day for each run. When you run the mapping again, the Secure Agent considers the updated date for the task and retrieves data from the updated date.