xslt - XSLT:为输出文件中的每个元素创建一行
问题描述
我有一个要求,我需要使用 xslt 1.0/2.0 创建一个 csv 文件。在下面的源 XML - 对于 <Effective_Change> 中的每个复杂类型元素,在这种情况下它是 <Worker_Status> 我需要为复杂类型元素中的每个子元素创建一行。
<?xml version="1.0" encoding="UTF-8"?>
<peci:Workers_Effective_Stack xmlns:peci="urn:com.w/peci">
<peci:Worker>
<peci:Summary>
<peci:Integration_Event>14d964101fdb0156e164341b45548d01</peci:Integration_Event>
<peci:Integration_Sent_On>2018-05-10T08:41:39.375-07:00</peci:Integration_Sent_On>
<peci:Payroll_Company_Name>West Brooke - Biweekly: B</peci:Payroll_Company_Name>
<peci:Pay_Group_Country>US</peci:Pay_Group_Country>
</peci:Summary>
<peci:Worker>
<peci:Worker_Summary>
<peci:WID>rd</peci:WID>
<peci:Employee_ID>33333</peci:Employee_ID>
<peci:Name>Test 1</peci:Name>
</peci:Worker_Summary>
<peci:Effective_Change peci:Sequence="0">
<peci:Derived_Event_Code>DTA</peci:Derived_Event_Code>
<peci:Effective_Moment>2018-05-10T08:29:21.235-07:00</peci:Effective_Moment>
<peci:Entry_Moment>2018-05-10T08:29:21.235-07:00</peci:Entry_Moment>
<peci:Worker_Status>
<peci:Status>Active</peci:Status>
<peci:Active>1</peci:Active>
<peci:Active_Status_Date>2018-01-08-08:00</peci:Active_Status_Date>
<peci:Terminated>0</peci:Terminated>
<peci:Hire_Date>2018-01-08-08:00</peci:Hire_Date>
<peci:Original_Hire_Date>2018-01-08-08:00</peci:Original_Hire_Date>
<peci:Is_Rehire>0</peci:Is_Rehire>
<peci:Continuous_Service_Date>2018-01-08-08:00</peci:Continuous_Service_Date>
<peci:First_Day_of_Work>2018-01-08-08:00</peci:First_Day_of_Work>
<peci:Seniority_Date>2018-01-08-08:00</peci:Seniority_Date>
</peci:Worker_Status>
</peci:Effective_Change>
<peci:Effective_Change peci:Sequence="1">
<peci:Derived_Event_Code>DTA</peci:Derived_Event_Code>
<peci:Effective_Moment>2018-05-10T08:31:27.880-07:00</peci:Effective_Moment>
<peci:Entry_Moment>2018-05-10T08:31:27.880-07:00</peci:Entry_Moment>
<peci:Worker_Status>
<peci:Status>Active</peci:Status>
<peci:Active>1</peci:Active>
<peci:Active_Status_Date>2018-01-08-08:00</peci:Active_Status_Date>
<peci:Terminated>0</peci:Terminated>
<peci:Hire_Date>2018-01-08-08:00</peci:Hire_Date>
<peci:Original_Hire_Date>2018-01-08-08:00</peci:Original_Hire_Date>
<peci:Is_Rehire>0</peci:Is_Rehire>
<peci:Continuous_Service_Date>2018-01-08-08:00</peci:Continuous_Service_Date>
<peci:First_Day_of_Work>2018-01-08-08:00</peci:First_Day_of_Work>
<peci:Seniority_Date>2018-01-08-08:00</peci:Seniority_Date>
</peci:Worker_Status>
</peci:Worker>
</peci:Workers_Effective_Stack>
<?xml version='1.0' encoding='UTF-8'?>
<peci:Workers_Effective_Stack xmlns:peci="urn:com.workday/peci">
<peci:Summary>
<peci:Payroll_Company_ID>Test Company</peci:Payroll_Company_ID>
<peci:Payroll_Company_Name>Test Company</peci:Payroll_Company_Name>
<peci:Pay_Group_ID>Monthly</peci:Pay_Group_ID>
<peci:Pay_Group_Name>Test</peci:Pay_Group_Name>
<peci:Pay_Group_Country>SE</peci:Pay_Group_Country>
<peci:Pay_Group_Code>3</peci:Pay_Group_Code>
<peci:Pay_Period_Start>2017-03-01-03.34</peci:Pay_Period_Start>
<peci:Pay_Period_End>2017-03-30-03.34</peci:Pay_Period_End>
<peci:Updated_From>2017-03-10T07:56:16.000-03.34</peci:Updated_From>
<peci:Updated_To>2017-03-19T09:06:13.769-03.34</peci:Updated_To>
<peci:Effective_From>2017-03-01-03.34</peci:Effective_From>
<peci:Effective_To>2017-03-30-03.34</peci:Effective_To>
<peci:Change_Detection>Test</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>1</peci:Worker_Count>
<peci:Version>1</peci:Version>
</peci:Summary>
<peci:Worker>
<peci:Worker_Summary>
<peci:WID>2232</peci:WID>
<peci:Employee_ID>1141</peci:Employee_ID>
<peci:Name>Andrew D Johnson</peci:Name>
</peci:Worker_Summary>
<peci:Effective_Change peci:Sequence="0">
<peci:Derived_Event_Code>HIR</peci:Derived_Event_Code>
<peci:Effective_Moment>2017-03-10T00:00:00.000-03.34</peci:Effective_Moment>
<peci:Entry_Moment>2017-03-11T04:51:00.632-03.34</peci:Entry_Moment>
<peci:Worker_Status peci:isUpdated="1">
<peci:Status peci:isAdded="1">Active</peci:Status>
<peci:Active peci:priorValue="0">1</peci:Active>
<peci:Active_Status_Date peci:isAdded="1">2017-03-10-03.34</peci:Active_Status_Date>
<peci:Terminated>0</peci:Terminated>
<peci:Hire_Date peci:isAdded="1">2017-03-10-03.34</peci:Hire_Date>
<peci:Original_Hire_Date peci:isAdded="1">2017-03-10-03.34</peci:Original_Hire_Date>
<peci:Hire_Rescinded>0</peci:Hire_Rescinded>
<peci:Is_Rehire>0</peci:Is_Rehire>
<peci:End_Employment_Date peci:isAdded="1">2021-05-31-03.34</peci:End_Employment_Date>
</peci:Worker_Status>
<peci:Personal peci:isUpdated="1">
<peci:Legal_Name peci:isAdded="1">
<peci:First_Name>Andrew</peci:First_Name>
<peci:Middle_Name>D</peci:Middle_Name>
<peci:Last_Name>Johnson</peci:Last_Name>
</peci:Legal_Name>
<peci:Workday_Account peci:isAdded="1">1141</peci:Workday_Account>
</peci:Personal>
<peci:Person_Communication peci:isUpdated="1">
<peci:Email peci:isAdded="1">
<peci:Usage_Type>HOME</peci:Usage_Type>
<peci:Email_Address>adjohnson@gmail.com</peci:Email_Address>
</peci:Email>
</peci:Person_Communication>
<peci:Person_Identification peci:isUpdated="1">
<peci:National_Identifier peci:isAdded="1">
<peci:National_ID>2037203020</peci:National_ID>
<peci:National_ID_Type>DL</peci:National_ID_Type>
</peci:National_Identifier>
</peci:Person_Identification>
<peci:Position peci:isAdded="1">
<peci:Worker_Type>Fixed_Term</peci:Worker_Type>
<peci:Position_Time_Type>Full_time</peci:Position_Time_Type>
<peci:Job_Exempt>0</peci:Job_Exempt>
<peci:Scheduled_Weekly_Hours>40</peci:Scheduled_Weekly_Hours>
<peci:Default_Weekly_Hours>40</peci:Default_Weekly_Hours>
<peci:Pay_Rate_Type>Salaried</peci:Pay_Rate_Type>
<peci:Job_Classification>
<peci:Job_Classification_Group>FT</peci:Job_Classification_Group>
<peci:Job_Classification_ID>232</peci:Job_Classification_ID>
</peci:Job_Classification>
<peci:Management_Level>AL1</peci:Management_Level>
<peci:Job_Category>TA</peci:Job_Category>
<peci:Business_Site>
<peci:Location_ID>CA_001</peci:Location_ID>
</peci:Business_Site>
<peci:Supervisor>
<peci:ID>1139</peci:ID>
<peci:Name>David Brown</peci:Name>
</peci:Supervisor>
<peci:Probation_Start_Date>2017-03-10-03.34</peci:Probation_Start_Date>
<peci:Probation_End_Date>2020-07-10-03.34</peci:Probation_End_Date>
</peci:Position>
<peci:Compensation peci:isAdded="1">
<peci:Compensation_Summary_in_Pay_Group_Frequency>
<peci:Total_Base_Pay>34000</peci:Total_Base_Pay>
<peci:Frequency>Yearly</peci:Frequency>
</peci:Compensation_Summary_in_Pay_Group_Frequency>
</peci:Compensation>
<peci:Compensation_Plans peci:isAdded="1">
<peci:Salary_and_Hourly_Plan>
<peci:Compensation_Plan>Base_Salary</peci:Compensation_Plan>
<peci:Amount>34000</peci:Amount>
<peci:Apply_FTE>1</peci:Apply_FTE>
<peci:Frequency>Yearly</peci:Frequency>
<peci:Start_Date>2017-03-10-03.34</peci:Start_Date>
</peci:Salary_and_Hourly_Plan>
</peci:Compensation_Plans>
<peci:Employee_Contract peci:isAdded="1">
<peci:Start_Date>2017-03-10-03.34</peci:Start_Date>
<peci:Contract_Status>Closed</peci:Contract_Status>
</peci:Employee_Contract>
<peci:Collective_Agreement peci:isAdded="1">
<peci:Collective_Agreement>No</peci:Collective_Agreement>
<peci:Collective_Agreement_Factor>
<peci:Factor>level</peci:Factor>
</peci:Collective_Agreement_Factor>
<peci:Collective_Agreement_Factor>
<peci:Factor>level</peci:Factor>
</peci:Collective_Agreement_Factor>
</peci:Collective_Agreement>
<peci:Additional_Information>
<peci:WorkerID>2232</peci:WorkerID>
</peci:Additional_Information>
</peci:Effective_Change>
<peci:Effective_Change peci:Sequence="1">
<peci:Derived_Event_Code>DTA</peci:Derived_Event_Code>
<peci:Effective_Moment>2017-03-11T00:00:00.000-03.34</peci:Effective_Moment>
<peci:Entry_Moment>2017-03-11T04:47:25.190-03.34</peci:Entry_Moment>
<peci:Person_Communication peci:isUpdated="1">
<peci:Address peci:isAdded="1">
<peci:Usage_Type>HOME</peci:Usage_Type>
<peci:Address_Line_1>Address_Line_1</peci:Address_Line_1>
<peci:City>City</peci:City>
<peci:Postal_Code>32323</peci:Postal_Code>
<peci:Country>US</peci:Country>
</peci:Address>
<peci:Email>
<peci:Usage_Type>HOME</peci:Usage_Type>
<peci:Email_Address>adjohnson@gmail.com</peci:Email_Address>
</peci:Email>
</peci:Person_Communication>
</peci:Effective_Change>
</peci:Worker>
</peci:Workers_Effective_Stack>
输出文件应具有以下格式。
Derived_Event_Code、Effective_Moment、xml_element_name、xml_element_value
**Example output CSV file:**
DTA,2018-05-10,Status,Active
DTA,2018-05-10,Active,1
DTA,2018-05-10,Active_Status_Date,2018-01-08-08:00
DTA,2018-05-10,Terminated,0
DTA,2018-05-10,Hire_Date,2018-01-08-08:00
DTA,2018-05-10,Original_Hire_Date,2018-01-08-08:00
DTA,2018-05-10,Is_Rehire,0
DTA,2018-05-10,Continuous_Service_Date,0
DTA,2018-05-10,First_Day_of_Work,2018-01-08-08:00
DTA,2018-05-10,Seniority_Date,2018-01-08-08:00
DTA,2018-05-10,Status,Active
DTA,2018-05-10,Active,1
DTA,2018-05-10,Active_Status_Date,2018-01-08-08:00
DTA,2018-05-10,Terminated,0
DTA,2018-05-10,Hire_Date,2018-01-08-08:00
DTA,2018-05-10,Original_Hire_Date,2018-01-08-08:00
DTA,2018-05-10,Is_Rehire,0
DTA,2018-05-10,Continuous_Service_Date,0
DTA,2018-05-10,First_Day_of_Work,2018-01-08-08:00
DTA,2018-05-10,Seniority_Date,2018-01-08-08:00
有人可以建议我如何使用 xslt 来实现吗?
解决方案
考虑以下示例:
XML
<peci:Workers_Effective_Stack xmlns:peci="urn:com.workday/peci">
<peci:Summary>
<peci:Payroll_Company_ID>Test Company</peci:Payroll_Company_ID>
<peci:Payroll_Company_Name>Test Company</peci:Payroll_Company_Name>
<peci:Pay_Group_ID>Monthly</peci:Pay_Group_ID>
<peci:Pay_Group_Name>Test</peci:Pay_Group_Name>
<peci:Pay_Group_Country>SE</peci:Pay_Group_Country>
<peci:Pay_Group_Code>3</peci:Pay_Group_Code>
<peci:Pay_Period_Start>2017-03-01-03.34</peci:Pay_Period_Start>
<peci:Pay_Period_End>2017-03-30-03.34</peci:Pay_Period_End>
<peci:Updated_From>2017-03-10T07:56:16.000-03.34</peci:Updated_From>
<peci:Updated_To>2017-03-19T09:06:13.769-03.34</peci:Updated_To>
<peci:Effective_From>2017-03-01-03.34</peci:Effective_From>
<peci:Effective_To>2017-03-30-03.34</peci:Effective_To>
<peci:Change_Detection>Test</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>1</peci:Worker_Count>
<peci:Version>1</peci:Version>
</peci:Summary>
<peci:Worker>
<peci:Worker_Summary>
<peci:WID>2232</peci:WID>
<peci:Employee_ID>1141</peci:Employee_ID>
<peci:Name>Andrew D Johnson</peci:Name>
</peci:Worker_Summary>
<peci:Effective_Change peci:Sequence="0">
<peci:Derived_Event_Code>HIR</peci:Derived_Event_Code>
<peci:Effective_Moment>2017-03-10T00:00:00.000-03.34</peci:Effective_Moment>
<peci:Entry_Moment>2017-03-11T04:51:00.632-03.34</peci:Entry_Moment>
<peci:Worker_Status peci:isUpdated="1">
<peci:Status peci:isAdded="1">Active</peci:Status>
<peci:Active peci:priorValue="0">1</peci:Active>
<peci:Active_Status_Date peci:isAdded="1">2017-03-10-03.34</peci:Active_Status_Date>
<peci:Terminated>0</peci:Terminated>
<peci:Hire_Date peci:isAdded="1">2017-03-10-03.34</peci:Hire_Date>
<peci:Original_Hire_Date peci:isAdded="1">2017-03-10-03.34</peci:Original_Hire_Date>
<peci:Hire_Rescinded>0</peci:Hire_Rescinded>
<peci:Is_Rehire>0</peci:Is_Rehire>
<peci:End_Employment_Date peci:isAdded="1">2021-05-31-03.34</peci:End_Employment_Date>
</peci:Worker_Status>
<peci:Personal peci:isUpdated="1">
<peci:Legal_Name peci:isAdded="1">
<peci:First_Name>Andrew</peci:First_Name>
<peci:Middle_Name>D</peci:Middle_Name>
<peci:Last_Name>Johnson</peci:Last_Name>
</peci:Legal_Name>
<peci:Workday_Account peci:isAdded="1">1141</peci:Workday_Account>
</peci:Personal>
<peci:Person_Communication peci:isUpdated="1">
<peci:Email peci:isAdded="1">
<peci:Usage_Type>HOME</peci:Usage_Type>
<peci:Email_Address>adjohnson@gmail.com</peci:Email_Address>
</peci:Email>
</peci:Person_Communication>
<peci:Person_Identification peci:isUpdated="1">
<peci:National_Identifier peci:isAdded="1">
<peci:National_ID>2037203020</peci:National_ID>
<peci:National_ID_Type>DL</peci:National_ID_Type>
</peci:National_Identifier>
</peci:Person_Identification>
<peci:Position peci:isAdded="1">
<peci:Worker_Type>Fixed_Term</peci:Worker_Type>
<peci:Position_Time_Type>Full_time</peci:Position_Time_Type>
<peci:Job_Exempt>0</peci:Job_Exempt>
<peci:Scheduled_Weekly_Hours>40</peci:Scheduled_Weekly_Hours>
<peci:Default_Weekly_Hours>40</peci:Default_Weekly_Hours>
<peci:Pay_Rate_Type>Salaried</peci:Pay_Rate_Type>
<peci:Job_Classification>
<peci:Job_Classification_Group>FT</peci:Job_Classification_Group>
<peci:Job_Classification_ID>232</peci:Job_Classification_ID>
</peci:Job_Classification>
<peci:Management_Level>AL1</peci:Management_Level>
<peci:Job_Category>TA</peci:Job_Category>
<peci:Business_Site>
<peci:Location_ID>CA_001</peci:Location_ID>
</peci:Business_Site>
<peci:Supervisor>
<peci:ID>1139</peci:ID>
<peci:Name>David Brown</peci:Name>
</peci:Supervisor>
<peci:Probation_Start_Date>2017-03-10-03.34</peci:Probation_Start_Date>
<peci:Probation_End_Date>2020-07-10-03.34</peci:Probation_End_Date>
</peci:Position>
<peci:Compensation peci:isAdded="1">
<peci:Compensation_Summary_in_Pay_Group_Frequency>
<peci:Total_Base_Pay>34000</peci:Total_Base_Pay>
<peci:Frequency>Yearly</peci:Frequency>
</peci:Compensation_Summary_in_Pay_Group_Frequency>
</peci:Compensation>
<peci:Compensation_Plans peci:isAdded="1">
<peci:Salary_and_Hourly_Plan>
<peci:Compensation_Plan>Base_Salary</peci:Compensation_Plan>
<peci:Amount>34000</peci:Amount>
<peci:Apply_FTE>1</peci:Apply_FTE>
<peci:Frequency>Yearly</peci:Frequency>
<peci:Start_Date>2017-03-10-03.34</peci:Start_Date>
</peci:Salary_and_Hourly_Plan>
</peci:Compensation_Plans>
<peci:Employee_Contract peci:isAdded="1">
<peci:Start_Date>2017-03-10-03.34</peci:Start_Date>
<peci:Contract_Status>Closed</peci:Contract_Status>
</peci:Employee_Contract>
<peci:Collective_Agreement peci:isAdded="1">
<peci:Collective_Agreement>No</peci:Collective_Agreement>
<peci:Collective_Agreement_Factor>
<peci:Factor>level</peci:Factor>
</peci:Collective_Agreement_Factor>
<peci:Collective_Agreement_Factor>
<peci:Factor>level</peci:Factor>
</peci:Collective_Agreement_Factor>
</peci:Collective_Agreement>
<peci:Additional_Information>
<peci:WorkerID>2232</peci:WorkerID>
</peci:Additional_Information>
</peci:Effective_Change>
<peci:Effective_Change peci:Sequence="1">
<peci:Derived_Event_Code>DTA</peci:Derived_Event_Code>
<peci:Effective_Moment>2017-03-11T00:00:00.000-03.34</peci:Effective_Moment>
<peci:Entry_Moment>2017-03-11T04:47:25.190-03.34</peci:Entry_Moment>
<peci:Person_Communication peci:isUpdated="1">
<peci:Address peci:isAdded="1">
<peci:Usage_Type>HOME</peci:Usage_Type>
<peci:Address_Line_1>Address_Line_1</peci:Address_Line_1>
<peci:City>City</peci:City>
<peci:Postal_Code>32323</peci:Postal_Code>
<peci:Country>US</peci:Country>
</peci:Address>
<peci:Email>
<peci:Usage_Type>HOME</peci:Usage_Type>
<peci:Email_Address>adjohnson@gmail.com</peci:Email_Address>
</peci:Email>
</peci:Person_Communication>
</peci:Effective_Change>
</peci:Worker>
</peci:Workers_Effective_Stack>
XSLT 1.0
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:peci="urn:com.workday/peci">
<xsl:output method="text"/>
<xsl:template match="/peci:Workers_Effective_Stack">
<xsl:for-each select="peci:Worker/peci:Effective_Change">
<xsl:variable name="common-data">
<xsl:value-of select="peci:Derived_Event_Code"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="peci:Effective_Moment"/>
<xsl:text>,</xsl:text>
</xsl:variable>
<!-- for every leaf descendant -->
<xsl:for-each select="*//*[not(*)]">
<xsl:copy-of select="$common-data"/>
<xsl:value-of select="local-name()"/>
<xsl:text>,</xsl:text>
<xsl:value-of select="."/>
<xsl:text> </xsl:text>
</xsl:for-each>
<xsl:text> </xsl:text>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
结果
HIR,2017-03-10T00:00:00.000-03.34,Status,Active
HIR,2017-03-10T00:00:00.000-03.34,Active,1
HIR,2017-03-10T00:00:00.000-03.34,Active_Status_Date,2017-03-10-03.34
HIR,2017-03-10T00:00:00.000-03.34,Terminated,0
HIR,2017-03-10T00:00:00.000-03.34,Hire_Date,2017-03-10-03.34
HIR,2017-03-10T00:00:00.000-03.34,Original_Hire_Date,2017-03-10-03.34
HIR,2017-03-10T00:00:00.000-03.34,Hire_Rescinded,0
HIR,2017-03-10T00:00:00.000-03.34,Is_Rehire,0
HIR,2017-03-10T00:00:00.000-03.34,End_Employment_Date,2021-05-31-03.34
HIR,2017-03-10T00:00:00.000-03.34,First_Name,Andrew
HIR,2017-03-10T00:00:00.000-03.34,Middle_Name,D
HIR,2017-03-10T00:00:00.000-03.34,Last_Name,Johnson
HIR,2017-03-10T00:00:00.000-03.34,Workday_Account,1141
HIR,2017-03-10T00:00:00.000-03.34,Usage_Type,HOME
HIR,2017-03-10T00:00:00.000-03.34,Email_Address,adjohnson@gmail.com
HIR,2017-03-10T00:00:00.000-03.34,National_ID,2037203020
HIR,2017-03-10T00:00:00.000-03.34,National_ID_Type,DL
HIR,2017-03-10T00:00:00.000-03.34,Worker_Type,Fixed_Term
HIR,2017-03-10T00:00:00.000-03.34,Position_Time_Type,Full_time
HIR,2017-03-10T00:00:00.000-03.34,Job_Exempt,0
HIR,2017-03-10T00:00:00.000-03.34,Scheduled_Weekly_Hours,40
HIR,2017-03-10T00:00:00.000-03.34,Default_Weekly_Hours,40
HIR,2017-03-10T00:00:00.000-03.34,Pay_Rate_Type,Salaried
HIR,2017-03-10T00:00:00.000-03.34,Job_Classification_Group,FT
HIR,2017-03-10T00:00:00.000-03.34,Job_Classification_ID,232
HIR,2017-03-10T00:00:00.000-03.34,Management_Level,AL1
HIR,2017-03-10T00:00:00.000-03.34,Job_Category,TA
HIR,2017-03-10T00:00:00.000-03.34,Location_ID,CA_001
HIR,2017-03-10T00:00:00.000-03.34,ID,1139
HIR,2017-03-10T00:00:00.000-03.34,Name,David Brown
HIR,2017-03-10T00:00:00.000-03.34,Probation_Start_Date,2017-03-10-03.34
HIR,2017-03-10T00:00:00.000-03.34,Probation_End_Date,2020-07-10-03.34
HIR,2017-03-10T00:00:00.000-03.34,Total_Base_Pay,34000
HIR,2017-03-10T00:00:00.000-03.34,Frequency,Yearly
HIR,2017-03-10T00:00:00.000-03.34,Compensation_Plan,Base_Salary
HIR,2017-03-10T00:00:00.000-03.34,Amount,34000
HIR,2017-03-10T00:00:00.000-03.34,Apply_FTE,1
HIR,2017-03-10T00:00:00.000-03.34,Frequency,Yearly
HIR,2017-03-10T00:00:00.000-03.34,Start_Date,2017-03-10-03.34
HIR,2017-03-10T00:00:00.000-03.34,Start_Date,2017-03-10-03.34
HIR,2017-03-10T00:00:00.000-03.34,Contract_Status,Closed
HIR,2017-03-10T00:00:00.000-03.34,Collective_Agreement,No
HIR,2017-03-10T00:00:00.000-03.34,Factor,level
HIR,2017-03-10T00:00:00.000-03.34,Factor,level
HIR,2017-03-10T00:00:00.000-03.34,WorkerID,2232
DTA,2017-03-11T00:00:00.000-03.34,Usage_Type,HOME
DTA,2017-03-11T00:00:00.000-03.34,Address_Line_1,Address_Line_1
DTA,2017-03-11T00:00:00.000-03.34,City,City
DTA,2017-03-11T00:00:00.000-03.34,Postal_Code,32323
DTA,2017-03-11T00:00:00.000-03.34,Country,US
DTA,2017-03-11T00:00:00.000-03.34,Usage_Type,HOME
DTA,2017-03-11T00:00:00.000-03.34,Email_Address,adjohnson@gmail.com
推荐阅读
- ruby - gem "jekyll" 的 Bundler 兼容版本
- spring - 为什么spring security hasRole函数不认证任何api
- yaml - 如何从 yaml 生成的字典中动态打印信息?
- wordpress - 用于登录和注册的 WooCommerce Rest API
- c# - 我可以在初始化程序中设置事件处理程序吗?
- testing - 无法激活最新的 Katalon studio 测试工具
- javascript - 在 Extjs 表单提交中 fileupload true 时编码表单数据
- events - 如何为 Ext.Msg 定义监听器?
- python - 如何修复“Pymysql 数据库未更新但您没有收到任何错误”
- javascript - 如何使用数据表添加自定义标题并制作全宽 PDF