Four Stars

Workday PECI File Import and Mapping

Good Morning Community (South Australia time!)

 

I am investigating the use of TOS as THE integration middleware for use by our Payroll Services Company. We have a number of clients who are implementing Workday and who have expressed an interest in integrating data into our Payroll Engine. This information includes such information as new hires, personal detail changes, basically anything that affects an employees payment.

 

The approach we are considering will take the Workday PICOF (or PECI) File and map it into the import format we require before passing this mapped data to our API to be imported/validated within our Payroll Environment.

 

My question is - has anyone done a mapping exercise on the Workday PICOF/PECI files to do a similar sort of process? I attempted to use the tXML componenents but have to admit that the sheer size and complexity of the PECI Sample File was pretty intimidating, especially to a TOS Newbie!

 

An excerpt of the sample PECI File I was using is shown below:

<?xml version="1.0" encoding="UTF-8"?>

<peci:Workers_Effective_Stack xmlnsSmiley Tongueeci="urn:com.workday/peci">

<peciSmiley Frustratedummary>

<peci:Integration_Event>f8da5c5155c4013eaa33c86c5124c10a</peci:Integration_Event>

<peci:Integration_Sent_On>2017-05-18T21:21:10.938-07:00</peci:Integration_Sent_On>

<peciSmiley Tongueayroll_Company_ID>CUSTOM_ORGANIZATION-4-217</peciSmiley Tongueayroll_Company_ID>

<peciSmiley Tongueayroll_Company_Name>External Pay Entity - Asia/Pac</peciSmiley Tongueayroll_Company_Name>

<peciSmiley Tongueayroll_Company_Code/>

<peciSmiley Tongueay_Group_ID>AUSPG</peciSmiley Tongueay_Group_ID>

<peciSmiley Tongueay_Group_Name>Third Party - Australia</peciSmiley Tongueay_Group_Name>

<peciSmiley Tongueay_Group_Country>AU</peciSmiley Tongueay_Group_Country>

<peciSmiley Tongueay_Group_Code>AHOM</peciSmiley Tongueay_Group_Code>

<peciSmiley Tongueay_Period_Start>2017-05-01-07:00</peciSmiley Tongueay_Period_Start>

<peciSmiley Tongueay_Period_End>2017-05-31-07:00</peciSmiley Tongueay_Period_End>

<peci:Updated_From>2017-04-24T00:13:25.084-07:00</peci:Updated_From>

<peci:Updated_To>2017-05-18T21:21:10.938-07:00</peci:Updated_To>

<peci:Effective_From>2017-05-01-07:00</peci:Effective_From>

<peci:Effective_To>2017-05-31-07:00</peci:Effective_To>

<peci:Change_Detection>Include only changes entered since the last successfulrun.</peci:Change_Detection>

<peci:First_Primary_Run_of_Pay_Period>0</peci:First_Primary_Run_of_Pay_Period>

<peci:Ad_Hoc_Run>1</peci:Ad_Hoc_Run>

<peci:Full_Snapshot>0</peci:Full_Snapshot>

<peci:Worker_Count>12</peci:Worker_Count>

<peci:Version>1</peci:Version>

</peciSmiley Frustratedummary>

-<peci:Worker>

-<peci:Worker_Summary>

<peci:WID>02c0a76d1f9910c36955b3a84e032607</peci:WID>

<peci:Employee_ID>21375</peci:Employee_ID>

<peci:Name>Mr. Rahul Dravid</peci:Name>

</peci:Worker_Summary>

-<peci:Effective_Change peciSmiley Frustratedequence="0">

<peciSmiley Very Happyerived_Event_Code>DTA</peciSmiley Very Happyerived_Event_Code>

<peci:Effective_Moment>2017-02-28T00:00:00.000-08:00</peci:Effective_Moment>

<peci:Entry_Moment>2017-05-08T16:36:12.666-07:00</peci:Entry_Moment>

<peciSmiley Tongueersonal>

-<peci:Legal_Name>

<peci:Country>AU</peci:Country>

<peci:First_Name>Rahul</peci:First_Name>

<peci:Last_Name>Dravid</peci:Last_Name>

<peci:Title>Mr.</peci:Title>

<peci:General_Display_Name>Rahul Dravid</peci:General_Display_Name>

</peci:Legal_Name>

<peci:Gender>Male</peci:Gender>

<peciSmiley Very Happyate_of_Birth>1975-01-05-08:00</peciSmiley Very Happyate_of_Birth>

<peci:Marital_Status>Married_Australia</peci:Marital_Status>

<peci:Marital_Status_Date>2016-07-01-07:00</peci:Marital_Status_Date>

<peciSmiley Tonguereferred_Language>en_US</peciSmiley Tonguereferred_Language>

</peciSmiley Tongueersonal>

<peciSmiley Tongueerson_Identification>

<peciSmiley Tongueassport>

<peciSmiley Tongueassport_ID>AU123123</peciSmiley Tongueassport_ID>

<peci:Country>AU</peci:Country>

<peci:Expiration_Date>2019-01-31-08:00</peci:Expiration_Date>

</peciSmiley Tongueassport>

</peciSmiley Tongueerson_Identification>

<peci:Compensation peci:isUpdated="1">

<peciSmiley Tongueosition_ID>P-00549</peciSmiley Tongueosition_ID>

<peci:Compensation_Grade>Non_Management</peci:Compensation_Grade>

<peci:Compensation_Summary_Based_on_Compensation_Grade peci:isUpdated="1">

<peci:Total_Base_Pay peciSmiley TongueriorValue="96000">110500</peci:Total_Base_Pay>

<peciSmiley Tonguerimary_Compensation_Basis peciSmiley TongueriorValue="113400">120850</peciSmiley Tonguerimary_Compensation_Basis>

<peci:Currency>AUD</peci:Currency>

<peci:Frequency>Annual</peci:Frequency>

</peci:Compensation_Summary_Based_on_Compensation_Grade>

<peci:Compensation_Summary_in_Annualized_Frequency peci:isUpdated="1">

<peci:Total_Base_Pay peciSmiley TongueriorValue="96000">110500</peci:Total_Base_Pay>

<peciSmiley Tonguerimary_Compensation_Basis peciSmiley TongueriorValue="113400">120850</peciSmiley Tonguerimary_Compensation_Basis>

<peci:Currency>AUD</peci:Currency>

<peci:Frequency>Annual</peci:Frequency>

</peci:Compensation_Summary_in_Annualized_Frequency>

<peci:Compensation_Summary_in_Pay_Group_Frequency peci:isUpdated="1">

<peci:Total_Base_Pay peciSmiley TongueriorValue="8000">9208.33</peci:Total_Base_Pay>

<peciSmiley Tonguerimary_Compensation_Basis peciSmiley TongueriorValue="9450">10070.83</peciSmiley Tonguerimary_Compensation_Basis>

<peci:Currency>AUD</peci:Currency>

<peci:Frequency>Monthly</peci:Frequency>

</peci:Compensation_Summary_in_Pay_Group_Frequency>

</peci:Compensation>

<peci:Compensation_Plans peci:isUpdated="1">

<peciSmiley Tongueosition_ID>P-00549</peciSmiley Tongueosition_ID>

<peci:Allowance_Plan>

<peci:Compensation_Plan>ALLOWANCE_Car_Allowance_Plan</peci:Compensation_Plan>

<peci:Amount>500</peci:Amount>

<peci:Currency>AUD</peci:Currency>

<peci:Frequency>Monthly</peci:Frequency>

<peci:Apply_FTE>0</peci:Apply_FTE>

<peciSmiley Frustratedtart_Date>2016-07-01-07:00</peciSmiley Frustratedtart_Date>

</peci:Allowance_Plan>

<peci:Allowance_Plan>

<peci:Compensation_Plan>ALLOWANCE_Cell_Mobile_Phone_Allowance_USA</peci:Compensation_Plan>

<peci:Amount>150</peci:Amount>

<peci:Currency>AUD</peci:Currency>

<peci:Frequency>Monthly</peci:Frequency>

<peci:Apply_FTE>0</peci:Apply_FTE>

<peciSmiley Frustratedtart_Date>2016-07-01-07:00</peciSmiley Frustratedtart_Date>

</peci:Allowance_Plan>

<peciSmiley Tongueeriod_Salary_Plan peci:isAdded="1">

<peci:Compensation_Plan>PERIOD_SALARY_PLAN-10-1</peci:Compensation_Plan>

<peci:Amount>8500</peci:Amount>

<peci:Currency>AUD</peci:Currency>

<peci:Frequency>Annual</peci:Frequency>

<peciSmiley Tongueeriod_Multiplier>1</peciSmiley Tongueeriod_Multiplier>

<peciSmiley Frustratedtart_Date>2017-02-28-08:00</peciSmiley Frustratedtart_Date>

</peciSmiley Tongueeriod_Salary_Plan>

<peciSmiley Frustratedalary_and_Hourly_Plan peci:isUpdated="1">

<peci:Compensation_Plan>SALARY_Salary_Plan</peci:Compensation_Plan>

<peci:Amount>8000</peci:Amount>

<peciSmiley Tonguerorated_Amount>8000</peciSmiley Tonguerorated_Amount>

<peci:Apply_FTE>1</peci:Apply_FTE>

<peci:Currency>AUD</peci:Currency>

<peci:Frequency>Monthly</peci:Frequency>

<peciSmiley Frustratedtart_Date>2016-07-01-07:00</peciSmiley Frustratedtart_Date>

<peci:End_Date peci:isAdded="1">2017-02-27-08:00</peci:End_Date>

</peciSmiley Frustratedalary_and_Hourly_Plan>

<peciSmiley Frustratedalary_and_Hourly_Plan peci:isAdded="1">

<peci:Compensation_Plan>SALARY_Salary_Plan</peci:Compensation_Plan>

<peci:Amount>8500</peci:Amount>

<peciSmiley Tonguerorated_Amount>8500</peciSmiley Tonguerorated_Amount>

<peci:Apply_FTE>1</peci:Apply_FTE>

<peci:Currency>AUD</peci:Currency>

<peci:Frequency>Monthly</peci:Frequency>

<peciSmiley Frustratedtart_Date>2017-02-28-08:00</peciSmiley Frustratedtart_Date>

</peciSmiley Frustratedalary_and_Hourly_Plan>

</peci:Compensation_Plans>

</peci:Effective_Change>

<peci:Effective_Change peciSmiley Frustratedequence="1">

<peciSmiley Very Happyerived_Event_Code>DTA</peciSmiley Very Happyerived_Event_Code>

<peci:Effective_Moment>2017-05-08T16:25:11.996-07:00</peci:Effective_Moment>

<peci:Entry_Moment>2017-05-08T16:25:11.996-07:00</peci:Entry_Moment>

<peciSmiley Tongueersonal>

<peci:Legal_Name>

<peci:Country>AU</peci:Country>

<peci:First_Name>Rahul</peci:First_Name>

<peci:Last_Name>Dravid</peci:Last_Name>

<peci:Title>Mr.</peci:Title>

<peci:General_Display_Name>Rahul Dravid</peci:General_Display_Name>

</peci:Legal_Name>

<peci:Gender>Male</peci:Gender>

<peciSmiley Very Happyate_of_Birth>1975-01-05-08:00</peciSmiley Very Happyate_of_Birth>

<peci:Marital_Status>Married_Australia</peci:Marital_Status>

<peci:Marital_Status_Date>2016-07-01-07:00</peci:Marital_Status_Date>

<peciSmiley Tonguereferred_Language>en_US</peciSmiley Tonguereferred_Language>

</peciSmiley Tongueersonal>

<peciSmiley Tongueerson_Identification>

<peciSmiley Tongueassport>

<peciSmiley Tongueassport_ID>AU123123</peciSmiley Tongueassport_ID>

<peci:Country>AU</peci:Country>

<peci:Expiration_Date>2019-01-31-08:00</peci:Expiration_Date>

</peciSmiley Tongueassport>

</peciSmiley Tongueerson_Identification>

<peci:Benefits_Earnings_and_Deductions>

<peci:External_Payroll_Code_Name>Medical - ER (PI)</peci:External_Payroll_Code_Name>

<peci:External_Payroll_Code>MEDERPI</peci:External_Payroll_Code>

<peciSmiley Tongueosition_Based>0</peciSmiley Tongueosition_Based>

<peci:Earning_or_Deduction>D</peci:Earning_or_Deduction>

<peci:Amount>500</peci:Amount>

<peciSmiley Tongueercentage>0</peciSmiley Tongueercentage>

<peci:Frequency>Monthly</peci:Frequency>

<peci:Currency>AUD</peci:Currency>

<peci:Coverage_Amount>0</peci:Coverage_Amount>

<peci:Goal_Amount>0</peci:Goal_Amount>

</peci:Benefits_Earnings_and_Deductions>

<peci:Benefits_Earnings_and_Deductions>

<peci:External_Payroll_Code_Name>SUPER</peci:External_Payroll_Code_Name>

<peci:External_Payroll_Code>SUPER</peci:External_Payroll_Code>

<peciSmiley Tongueosition_Based>0</peciSmiley Tongueosition_Based>

<peci:Earning_or_Deduction>D</peci:Earning_or_Deduction>

<peci:Amount>0</peci:Amount>

<peciSmiley Tongueercentage>0.09</peciSmiley Tongueercentage>

<peci:Frequency>Monthly</peci:Frequency>

<peci:Currency>AUD</peci:Currency>

<peci:Coverage_Amount>0</peci:Coverage_Amount>

<peci:Goal_Amount>0</peci:Goal_Amount>

</peci:Benefits_Earnings_and_Deductions>

<peci:Compensation_Earnings_and_Deductions peci:isUpdated="1">

<peci:External_Payroll_Code_Name>Car Allowance(PI)</peci:External_Payroll_Code_Name>

<peci:External_Payroll_Code>Car Allowance(PI)</peci:External_Payroll_Code>

<peciSmiley Tongueosition_Based>0</peciSmiley Tongueosition_Based>

<peci:Earning_or_Deduction>E</peci:Earning_or_Deduction>

<peci:Amount peciSmiley TongueriorValue="0">500</peci:Amount>

<peci:Frequency>Monthly</peci:Frequency>

<peci:Currency>AUD</peci:Currency>

</peci:Compensation_Earnings_and_Deductions>

</peci:Effective_Change>

</peci:Worker>

 

In my (brief) time with TOS I've managed to read the entire PECI file in and have managed to extract the Summary Schema, but it's the 'Worker' schema and related sub-assemblies that are causing me issues.

 

Has anyone in the community had had any more success with this than me? Would really appreciate some tips and/or pointers?

 

Thanks & Best Regards to All!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 REPLIES
Moderator

Re: Workday PECI File Import and Mapping

Hello,

So far, there is no a specific component for PECI file in talend. Is it a well formed XML file?

Best regards

Sabrina

 

--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
Four Stars

Re: Workday PECI File Import and Mapping

Hi


Thanks for your reply - as far as I know the document is 'well-formed' - I wqas hoping that there was something 'off the shelf' we could use to parse this document - I had some success with the XML tools and from followiing the tutorials, but when it comes to multiple looping elements I am struggling.

Best Regards