Workday V2 Connector > Mappings and mapping tasks with Workday > Workday Source transformation in mappings
  

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 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:

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 tasks, you can configure advanced properties in the Source page of the Mapping Task wizard.
The following table describes the advanced properties that you can configure in a Source transformation:
Property
Description
Batch Size
Determines the number of threads and how many SOAP requests run in parallel when a session runs. The batch size corresponds to the parallel SOAP requests made by the Secure Agent.
Specify a batch size value that is close to the number of available CPU cores in the Secure Agent. You can specify a maximum batch size of 20. Default is 1.
Include descriptors in response
Determines whether the response must include the Workday descriptors. Workday descriptors are additional information used to describe an instance of a Workday object.
Specify a value of 1 in the request message so that the response returns values in the descriptor fields for the Workday object. Specify 0 so that the response does not include descriptors for the Workday object.
Default is 0.
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.
The cache size depends on the Workday module and response count size. If the web service response contains many rows or columns, you might want to increase the cache size. You can specify a maximum size of 99999 KB. Default is 1024 KB.

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. 1. Create a Workday connection. Verify that you select Human Resources as the Module name and specify the WSDL version in the connection properties.
  2. The following image shows the configured Workday connection:
  3. 2. Create a flat file connection to write data to the flat file.
  4. 3. Create a Workday mapping.
  5. The following image shows the Workday mapping:
    The mapping includes a Workday source, an expression transformation, and three flat file targets to write worker, email, and updated to/from information.
  6. 4. Add a Source transformation, specify a name and description in the general properties.
  7. 5. On the Source tab, perform the following steps:
    1. a. In the Connection field, select the configured Workday connection to connect to Workday.
    2. b. In the Operation field, select Get_Workers as the operation.
    3. The following image shows the Get_Workers operation and the description from the list of Read Operations:
    4. 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:
    5. <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>
    6. 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.
    7. d. In the Advanced Properties section, set the tracing level to Normal, and use the default cache size of 1024.
  8. 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.
  9. 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:
    You can view the response structure and output fields in the Workday properties pane on the Field Mapping tab.
    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.
  10. 7. Add three Target transformations and specify the target objects for each of the transformations. Perform the following steps:
    1. a. Select a flat file connection for each of the target transformations to write data to the flat files.
    2. b. Create target objects worker.csv, email.csv, and upd_fm_thro.csv files to write data to the target.
    3. c. Select the output group from Workday that you want to link to the target objects.
  11. 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.
  12. The following image shows the configured expression that utilizes the in-out parameters:
    The Expression transformation uses the parameterized $$Updated_From and $$Updated_Through values.
  13. 9. Click New > Tasks > Mapping Task, and select Create.
  14. The following image shows the Mapping 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:
  15. 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.
  16. 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.