Update to Production Version of Mapping + Enhancement to remove the ns0: absolut paths

This commit is contained in:
Christian Schwarz
2026-03-10 15:22:41 +01:00
parent b68f250cfe
commit 5c59f8de6e
2 changed files with 36 additions and 23 deletions
+2
View File
@@ -48,3 +48,5 @@ Thumbs.db
*.mov *.mov
*.wmv *.wmv
test0001.camel.yaml
testing/
+34 -23
View File
@@ -12,7 +12,7 @@
</ns0:Message1> </ns0:Message1>
</ns0:Messages> </ns0:Messages>
</xsl:template> </xsl:template>
<xsl:template match="/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC" name="checkForHandlingUnit"> <xsl:template match="//ZFSHDLV/IDOC" name="checkForHandlingUnit">
<xsl:if test="./E1EDL20/E1EDL37"> <xsl:if test="./E1EDL20/E1EDL37">
<xsl:call-template name="HandlingUnit"/> <xsl:call-template name="HandlingUnit"/>
</xsl:if> </xsl:if>
@@ -38,14 +38,13 @@
</DocumentId> </DocumentId>
<DeliveryNote> <DeliveryNote>
<xsl:choose> <xsl:choose>
<xsl:when test="/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/LIFEX/node()"> <xsl:when test="//ZFSHDLV/IDOC/E1EDL20/LIFEX/node()">
<xsl:value-of select="/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/LIFEX"/> <xsl:value-of select="//ZFSHDLV/IDOC/E1EDL20/LIFEX"/>
</xsl:when> </xsl:when>
<xsl:otherwise> <xsl:otherwise>
<xsl:value-of select="/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/VBELN"/> <xsl:value-of select="//ZFSHDLV/IDOC/E1EDL20/VBELN"/>
</xsl:otherwise> </xsl:otherwise>
</xsl:choose> </xsl:choose>
</DeliveryNote> </DeliveryNote>
<DocumentType> <DocumentType>
<xsl:value-of select="'XMLDESADV'"/> <xsl:value-of select="'XMLDESADV'"/>
@@ -59,32 +58,32 @@
</DocumentSubType> </DocumentSubType>
<DocumentDate> <DocumentDate>
<xsl:value-of select="format-dateTime(adjust-dateTime-to-timezone(xs:dateTime(concat( <xsl:value-of select="format-dateTime(adjust-dateTime-to-timezone(xs:dateTime(concat(
substring(/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='015']/NTANF,1,4), substring(//ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='015']/NTANF,1,4),
'-', '-',
substring(/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='015']/NTANF,5,2), substring(//ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='015']/NTANF,5,2),
'-', '-',
substring(/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='015']/NTANF,7,2), substring(//ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='015']/NTANF,7,2),
'T', 'T',
substring(/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='015']/NTANZ,1,2), substring(//ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='015']/NTANZ,1,2),
':', ':',
substring(/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='015']/NTANZ,3,2), substring(//ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='015']/NTANZ,3,2),
':', ':',
substring(/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='015']/NTANZ,5,2)))), substring(//ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='015']/NTANZ,5,2)))),
'[Y0000]-[M00]-[D00]T[H00]:[m00]:[s00].[f0000000][Z]')"/> '[Y0000]-[M00]-[D00]T[H00]:[m00]:[s00].[f0000000][Z]')"/>
</DocumentDate> </DocumentDate>
<DeliveryDate> <DeliveryDate>
<xsl:value-of select="format-dateTime(adjust-dateTime-to-timezone(xs:dateTime(concat( <xsl:value-of select="format-dateTime(adjust-dateTime-to-timezone(xs:dateTime(concat(
substring(/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='007']/NTANF,1,4), substring(//ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='007']/NTANF,1,4),
'-', '-',
substring(/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='007']/NTANF,5,2), substring(//ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='007']/NTANF,5,2),
'-', '-',
substring(/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='007']/NTANF,7,2), substring(//ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='007']/NTANF,7,2),
'T', 'T',
substring(/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='007']/NTANZ,1,2), substring(//ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='007']/NTANZ,1,2),
':', ':',
substring(/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='007']/NTANZ,3,2), substring(//ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='007']/NTANZ,3,2),
':', ':',
substring(/ns0:Messages/ns0:Message1/ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='007']/NTANZ,5,2)))), substring(//ZFSHDLV/IDOC/E1EDL20/E1EDT13[QUALF='007']/NTANZ,5,2)))),
'[Y0000]-[M00]-[D00]T[H00]:[m00]:[s00].[f0000000][Z]')"/> '[Y0000]-[M00]-[D00]T[H00]:[m00]:[s00].[f0000000][Z]')"/>
</DeliveryDate> </DeliveryDate>
<ReferenceSupplierOrder/> <ReferenceSupplierOrder/>
@@ -204,20 +203,32 @@
<ReferenceBuyerOrder/> <ReferenceBuyerOrder/>
<xsl:if test="exists(./E1EPC03)"> <xsl:if test="exists(./E1EPC03)">
<xsl:for-each select="./E1EPC03"> <xsl:for-each select="./E1EPC03">
<XMLEPC> <xsl:if test="exists(./URN) and (./URN != '')">
<EPC> <XMLEPC>
<xsl:value-of select="./EPC"/> <EPC>
</EPC> <xsl:value-of select="./URN"/>
</XMLEPC> </EPC>
</XMLEPC>
</xsl:if>
</xsl:for-each> </xsl:for-each>
</xsl:if> </xsl:if>
</XMLITEMS> </XMLITEMS>
</xsl:for-each> </xsl:for-each>
</xsl:variable> </xsl:variable>
<xsl:variable name="EXIDV">
<xsl:choose>
<xsl:when test="string-length(translate(./EXIDV, '0123456789', '')) != 0">
<xsl:value-of select="./EXIDV"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="replace(./EXIDV, '^0+', '')"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:call-template name="Message"> <xsl:call-template name="Message">
<xsl:with-param name="CASE" select="'HandlingUnit'"/> <xsl:with-param name="CASE" select="'HandlingUnit'"/>
<xsl:with-param name="ID" select="concat(../VBELN,'_',./EXIDV)"/> <xsl:with-param name="ID" select="concat(../VBELN,'_',./EXIDV)"/>
<xsl:with-param name="SSCCID" select="format-number(./EXIDV,'#')"/> <xsl:with-param name="SSCCID" select="$EXIDV"/>
<xsl:with-param name="POSITIONS" select="$POSITIONS"/> <xsl:with-param name="POSITIONS" select="$POSITIONS"/>
</xsl:call-template> </xsl:call-template>
</xsl:for-each> </xsl:for-each>