【发布时间】:2014-05-20 15:06:06
【问题描述】:
我在地图上创建了许多 functoid 来验证源节点“AdoptedDate”的默认值(等于 defaultvalues 到逻辑 OR 到具有新默认值的 Value functoid。然后如果两个 Equals 都不为真,则逻辑 Not for 将源节点“AdoptedDate”映射到目标模式(包含 xslt)。
我想做的是为源架构中的所有日期字段实现这个,可以这样做吗?
当前生成的 XSLT(仅采用)
<xsl:for-each select="Form/SDetails">
<xsl:variable name="var:v17" select="userCSharp:LogicalEq(string(NameDetails/AdoptedDate/text()) , "1900-09-09")" />
<xsl:variable name="var:v18" select="string(NameDetails/AdoptedDate/text())" />
<xsl:variable name="var:v19" select="userCSharp:LogicalEq($var:v18 , "1800-09-09")" />
<xsl:variable name="var:v20" select="userCSharp:LogicalOr(string($var:v17) , string($var:v19))" />
<xsl:variable name="var:v22" select="userCSharp:LogicalNot(string($var:v20))" />
<xsl:if test="string($var:v20)='true'">
<xsl:variable name="var:v21" select=""1901-01-01"" />
<p:AdoptedDate>
<xsl:value-of select="$var:v21" />
</p:AdoptedDate>
</xsl:if>
<xsl:if test="string($var:v22)='true'">
<xsl:variable name="var:v23" select="NameDetails/AdoptedDate/text()" />
<p:AdoptedDate>
<xsl:value-of select="$var:v23" />
</p:AdoptedDate>
</xsl:if>
【问题讨论】:
标签: xslt biztalk biztalk2006r2 biztalk-mapper