condition

Find <Xsl> tag...Copy below template after dvt_opos param

<xsl:template name="getDayDelta">
    <xsl:param name="paramDateA"/>
    <xsl:param name="paramDateB"/>
    <xsl:variable name="dateADays">
        <xsl:call-template name="countDaysInDateWithLeapYearDays">
            <xsl:with-param name="paramDate" select="$paramDateA"/>
        </xsl:call-template>
    </xsl:variable>
    <xsl:variable name="dateBDays">
        <xsl:call-template name="countDaysInDateWithLeapYearDays">
            <xsl:with-param name="paramDate" select="$paramDateB"/>
        </xsl:call-template>
    </xsl:variable>
    <xsl:value-of select="number($dateADays) - number($dateBDays)"/>
</xsl:template>
<xsl:template name="countDaysInDateWithLeapYearDays">
    <xsl:param name="paramDate"/>
    <xsl:variable name="year" select="substring-before($paramDate,'-')"/>
    <xsl:variable name="month" select="substring(substring-after($paramDate,'-'),1,2)"/>
    <xsl:variable name="day" select="substring(substring-after(substring-after($paramDate,'-'),'-'),1,2)"/>
    <xsl:variable name="rawYearDays" select="number($year) * 365"/>
    <xsl:variable name="rawLeapYears" select="floor($year div 4)"/>
    <xsl:variable name="centurySpan" select="floor($year div 100)"/>
    <xsl:variable name="fourCenturySpan" select="floor($year div 400)"/>
    <xsl:variable name="boolYearLeap">
        <xsl:call-template name="isLeapYear">
            <xsl:with-param name="paramYear" select="$year"/>
        </xsl:call-template>
    </xsl:variable>
    <xsl:variable name="yearLeapAdjust">
        <xsl:choose>
            <xsl:when test="$boolYearLeap = 1 and (($month = 1) or ($month = 2 and $day != 29))">-1</xsl:when>
            <xsl:otherwise>0</xsl:otherwise>
        </xsl:choose>
    </xsl:variable>
    <xsl:variable name="yearDays" select="$rawYearDays + $rawLeapYears - $centurySpan + $fourCenturySpan + $yearLeapAdjust "/>
    <xsl:variable name="monthDays">
        <xsl:call-template name="ConvertMonthToTotalDays">
            <xsl:with-param name="paramMonth" select="$month"/>
        </xsl:call-template>
    </xsl:variable>
    <xsl:variable name="totalDays" select="$yearDays + number($monthDays) + number($day)"/>
    <xsl:value-of select="$totalDays"/>
</xsl:template>
<xsl:template name="isLeapYear">
    <xsl:param name="paramYear"/>
    <xsl:choose>
        <xsl:when test="$paramYear mod 4 = 0 and ($paramYear mod 100 != 0) or ($paramYear mod 400 = 0)">1</xsl:when>
        <xsl:otherwise>0</xsl:otherwise>
    </xsl:choose>
</xsl:template>
<xsl:template name="ConvertMonthToTotalDays">
    <xsl:param name="paramMonth"/>
    <xsl:choose>
        <xsl:when test="$paramMonth=01">0</xsl:when>
        <xsl:when test="$paramMonth=02">31</xsl:when>
        <xsl:when test="$paramMonth=03">59</xsl:when>
        <xsl:when test="$paramMonth=04">90</xsl:when>
        <xsl:when test="$paramMonth=05">120</xsl:when>
        <xsl:when test="$paramMonth=06">151</xsl:when>
        <xsl:when test="$paramMonth=07">181</xsl:when>
        <xsl:when test="$paramMonth=08">212</xsl:when>
        <xsl:when test="$paramMonth=09">243</xsl:when>
        <xsl:when test="$paramMonth=10">273</xsl:when>
        <xsl:when test="$paramMonth=11">304</xsl:when>
        <xsl:when test="$paramMonth=12">334</xsl:when>
    </xsl:choose>
</xsl:template>



Then copy this in place of

<xsl:variable name="DateDueDayDelta"> <xsl:call-template name="getDayDelta"> <xsl:with-param name="paramDateA" select="ddwrt:FormatDateTime(string($thisNode/@*[name()=current()/@Name]),1033,'yyyy-MM-dd')"/> <xsl:with-param name="paramDateB" select="ddwrt:FormatDateTime(string(ddwrt:Today()),1033,'yyyy-MM-dd')"/> </xsl:call-template> </xsl:variable> <xsl:choose> <xsl:when test="$DateDueDayDelta&lt;=0"> <xsl:attribute name="style">background-color:#FF0000;</xsl:attribute > <xsl:value-of select="$thisNode/@*[name()=current()/@Name]"/> </xsl:when> <xsl:when test="$DateDueDayDelta &gt;14"> <xsl:attribute name="style">background-color:#00FF00;</xsl:attribute > <xsl:value-of select="$thisNode/@*[name()=current()/@Name]"/> </xsl:when> <xsl:when test="$DateDueDayDelta &lt;='14' and $DateDueDayDelta &gt;=1"> <xsl:attribute name="style">background-color:#FFFF00;</xsl:attribute > <xsl:value-of select="$thisNode/@*[name()=current()/@Name]"/> </xsl:when> </xsl:choose>
Credits to https://thechriskent.com/tag/conditional-formatting/

Comments

Popular Posts