寻找有关语法和最佳方法的一些帮助/指导。
这段代码找到了三个日期中的最大Effdt - 我很高兴去那个部分。问题:有些Effdts可能是未来的日期,我发现并返回max Effdt时我不想考虑这些日期。我该怎么说:从三个日期中找出最大Effdt,但排除任何大于今天的日期。
<xsl:value-of select="format-date(max((xs:date(ws:Info/ws:Effdt1), xs:date(ws:Info/ws:Effdt2), xs:date(ws:Info/ws:Effdt3) )), '[Y0001][M01][D01]') "/>
例如,假设xslt返回这三个日期:20190401 20190424 20190430
我想找到今天没有超过的最大Effdt所以期望结果:20190424
谢谢!
使用current-date
函数和谓词:max((ws:Info/ws:Effdt1, ws:Info/ws:Effdt2, ws:Info/ws:Effdt3)/xs:date(.)[. lt current-date()])
。或者可能比今天更大的是. le current-date()
。