如何从xslt

时间:2019-04-22 15:47:11

标签: xslt-2.0

我已经搜索了有关我的特定情况的信息,但没有找到我想要的东西。如果我错过了什么,请提前道歉。

我正在寻找有关语法的帮助,以从三个字段中查找和格式化最新日期。我能够草率地找到最新日期并能够格式化日期,但是将所有语法放在一起并使其正常工作使我难以理解。我想问这个论坛一个干净的代码来执行以下操作: 使用xslt 2.0查找,返回和格式化这三个字段中的最新日期-格式为'20070724':             -ws:Pay_Rate_Type_Change_Effective_Date             -ws:Time_Type_Change_Effective_Date             -ws:Job_Code_Change_Effective_Date

任何帮助,不胜感激!

谢谢, 珍妮

<?xml version="1.0" encoding="UTF-8"?>
<ws:Worker_Sync xmlns:ws="urn:com.workday/workersync"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<ws:Worker>
    <ws:Summary>
        <ws:Employee_ID>123456</ws:Employee_ID>
    </ws:Summary>
    <ws:Additional_Information>
        <ws:Time_Type_Change_Effective_Date>2005-05-24</ws:Time_Type_Change_Effective_Date>
        <ws:Pay_Rate_Type_Change_Effective_Date>2006-06-24</ws:Pay_Rate_Type_Change_Effective_Date>
        <ws:Job_Code_Change_Effective_Date>2007-07-24</ws:Job_Code_Change_Effective_Date>
    </ws:Additional_Information>
</ws:Worker>    
</ws:Worker_Sync>


<?xml version='1.0'?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ws="urn:com.workday/workersync" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xtt="urn:com.workday/xtt" xmlns:etv="urn:com.workday/etv"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:wd="urn:com.workday.report">
<!-- set encoding of output - need to create a properly formatted XML document that Workday's internal document transformation engine will convert to a text file -->
<xsl:output method="xml" encoding="UTF-8"/>

<xsl:template match="/">
    <File xtt:separator="&#xd;&#xa;">
        <xsl:variable name="linefeed" select="'&#xa;'"/>
        <xsl:variable name="currentDate">
            <xsl:value-of select="format-date(current-date(), '[Y0001][M01][D01]')"/>
        </xsl:variable>
        <xsl:apply-templates select="ws:Worker_Sync/ws:Worker"/>
    </File>
</xsl:template>
<xsl:template match="/ws:Worker_Sync/ws:Worker">
    <Record xtt:separator="|">
        <EmployeeAssignedID>
            <xsl:value-of select="ws:Summary/ws:Employee_ID"/>
        </EmployeeAssignedID>            
        <RecordChangeEffectiveDate/>         <!--FT/PT, Hrly/Slry, Jobcode change effdt-->
        <!--Here is where I have to add code to say:
        Find, return and format the latest date out of these three fields in xml file - format of '20070724' :
        -ws:Pay_Rate_Type_Change_Effective_Date
        -ws:Time_Type_Change_Effective_Date
        -ws:Job_Code_Change_Effective_Date    -->   
    </Record>
</xsl:template>
</xsl:stylesheet>

1 个答案:

答案 0 :(得分:0)

在马丁,同事和我自己的尝试和错误的一些帮助下,我找到了问题的完整答案。这是我最终使用的,并且效果很好。

<Grid xs={12} sm={12} md={12} lg={12} xl={12}>

    </Grid>