Gebeurt nu in cust/marx
svn path=/Website/trunk/; revision=32124
This commit is contained in:
0
APPL/MAR/.gitignore
vendored
Normal file
0
APPL/MAR/.gitignore
vendored
Normal file
@@ -1,7 +0,0 @@
|
||||
<html>
|
||||
<head>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,16 +0,0 @@
|
||||
<html>
|
||||
<head>
|
||||
</head>
|
||||
<body>
|
||||
<table>
|
||||
<tr height="10px">
|
||||
<td width="5%" align="left"><span style="font-size:8pt"> </span></td>
|
||||
<td width="2%" style="border-left: 2px solid #0000C0; border-right: 2px solid #0000C0 ; border-top: 2px solid #0000C0; border-bottom: 2px solid #0000C0" align="left" bgcolor="#6685ae"><span style="font-size:8pt;color:#0000C0"> </span></td>
|
||||
<td width="5%" align="left"><span style="font-size:8pt;color:#0000C0"><b>Op tijd</b></span></td>
|
||||
<td width="2%" align="left"><span style="font-size:8pt"> </span></td>
|
||||
<td width="2%" style="border-left: 2px solid #FF8800; border-right: 2px solid #FF8800 ; border-top: 2px solid #FF8800; border-bottom: 2px solid #FF8800" align="left" bgcolor="#EEB066"><span style="font-size:8pt;color:#FF8800"> </span></td>
|
||||
<td width="5%" align="left"><span style="font-size:8pt;color:#FF8800"><b>Te laat</b></span></td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,16 +0,0 @@
|
||||
<html>
|
||||
<head>
|
||||
</head>
|
||||
<body>
|
||||
<table>
|
||||
<tr height="10px">
|
||||
<td width="5%" align="left"><span style="font-size:8pt"> </span></td>
|
||||
<td width="2%" style="border-left: 2px solid #FF8800; border-right: 2px solid #FF8800 ; border-top: 2px solid #FF8800; border-bottom: 2px solid #FF8800" align="left" bgcolor="#EEB066"><span style="font-size:8pt;color:#FF8800"> </span></td>
|
||||
<td width="5%" align="left"><span style="font-size:8pt;color:#FF8800"><b>Ingepland</b></span></td>
|
||||
<td width="2%" align="left"><span style="font-size:8pt"> </span></td>
|
||||
<td width="2%" style="border-left: 2px solid #9C0006; border-right: 2px solid #9C0006 ; border-top: 2px solid #9C0006; border-bottom: 2px solid #9C0006" align="left" bgcolor="#FF8080"><span style="font-size:8pt;color:#FF8080"> </span></td>
|
||||
<td width="5%" align="left"><span style="font-size:8pt;color:#9C0006"><b>Niet gepland</b></span></td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,16 +0,0 @@
|
||||
<html>
|
||||
<head>
|
||||
</head>
|
||||
<body>
|
||||
<table>
|
||||
<tr height="10px">
|
||||
<td width="5%" align="left"><span style="font-size:8pt"> </span></td>
|
||||
<td width="2%" style="border-left: 2px solid #0000C0; border-right: 2px solid #0000C0 ; border-top: 2px solid #0000C0; border-bottom: 2px solid #0000C0" align="left" bgcolor="#6685ae"><span style="font-size:8pt;color:#0000C0"> </span></td>
|
||||
<td width="10%" align="left"><span style="font-size:8pt;color:#0000C0"><b>Ingepland</b></span></td>
|
||||
<td width="2%" align="left"><span style="font-size:8pt"> </span></td>
|
||||
<td width="2%" style="border-left: 2px solid #FF8800; border-right: 2px solid #FF8800 ; border-top: 2px solid #FF8800; border-bottom: 2px solid #FF8800" align="left" bgcolor="#EEB066"><span style="font-size:8pt;color:#FF8800"> </span></td>
|
||||
<td width="10%" align="left"><span style="font-size:8pt;color:#FF8800"><b>Niet of fout gepland</b></span></td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,16 +0,0 @@
|
||||
<html>
|
||||
<head>
|
||||
</head>
|
||||
<body>
|
||||
<table>
|
||||
<tr height="10px">
|
||||
<td width="5%" align="left"><span style="font-size:10pt"> </span></td>
|
||||
<td width="2%" style="border-left: 2px solid #0000C0; border-right: 2px solid #0000C0 ; border-top: 2px solid #0000C0; border-bottom: 2px solid #0000C0" align="left" bgcolor="#6685ae"><span style="font-size:8pt;color:#0000C0"> </span></td>
|
||||
<td width="10%" align="left"><span style="font-size:8pt;color:#0000C0"><b>Gefactureerd</b></span></td>
|
||||
<td width="2%" align="left"><span style="font-size:8pt"> </span></td>
|
||||
<td width="2%" style="border-left: 2px solid #FF8800; border-right: 2px solid #FF8800 ; border-top: 2px solid #FF8800; border-bottom: 2px solid #FF8800" align="left" bgcolor="#EEB066"><span style="font-size:8pt;color:#FF8800"> </span></td>
|
||||
<td width="10%" align="left"><span style="font-size:8pt;color:#FF8800"><b>Niet gefactureerd</b></span></td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 4.4 KiB |
@@ -1,53 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:s="http://www.w3.org/2003/05/soap-envelope"
|
||||
xmlns:b="http://schemas.datacontract.org/2004/07/SG.Services.Repositories"
|
||||
xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
|
||||
version="1.0">
|
||||
<xsl:output method="text" encoding="UTF-8"/>
|
||||
|
||||
|
||||
<xsl:template match="/">
|
||||
<xsl:apply-templates select="s:Envelope/s:Body"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="s:Body">ax_supplier_id;mld_melding_externnr;mld_melding_omschrijving;prs_afdeling_externnr;mld_melding_cust_name;mld_melding_cust_straat;mld_melding_cust_huisnr;mld_melding_cust_huisnr2;mld_melding_cust_postcode;mld_melding_cust_plaats;mld_melding_cust_telefoonnr;mld_melding_cust_object_omschr;mld_melding_memo;mld_opdr_externnr;mld_opdr_ordernr;mld_opdr_datumbegin;mld_opdr_einddatum
|
||||
<xsl:for-each select="descendant::*/b:SupplierTaskSpec"><xsl:value-of select="b:vendAccountNum"/>;<xsl:call-template name="mld_melding_externnr"><xsl:with-param name="p_string" select="b:taskId"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="b:description"/></xsl:call-template>;<xsl:value-of select="b:companyId"/>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="b:custName"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="b:custStreet"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="b:custHouseNumber"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="b:custHouseNumberAddition"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="b:custZipCode"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="b:custCity"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="b:custPhone"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="b:objectDescription"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="b:memo"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="b:purchId"/></xsl:call-template>;<xsl:value-of select="b:taskId"/>;<xsl:value-of select="b:startDateTime"/>;<xsl:value-of select="b:deadlineDate"/>; </xsl:for-each>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="vrije_tekst">
|
||||
<xsl:param name="p_string"/>
|
||||
<xsl:variable name="l_string_esc_quotes"><xsl:call-template name="escape_quote"><xsl:with-param name="string" select="$p_string"/></xsl:call-template></xsl:variable>
|
||||
<xsl:variable name="l_string_esc_linebreaks"><xsl:call-template name="escape_linebreaks"><xsl:with-param name="string" select="$l_string_esc_quotes"/></xsl:call-template></xsl:variable>"<xsl:value-of select="$l_string_esc_linebreaks"/>"</xsl:template>
|
||||
|
||||
<xsl:template name="escape_quote">
|
||||
<xsl:param name="string"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains($string, '"')"><xsl:value-of select="substring-before($string, '"')"/>""<xsl:call-template name="escape_quote">
|
||||
<xsl:with-param name="string" select="substring-after($string, '"')"/></xsl:call-template></xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="$string"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="escape_linebreaks">
|
||||
<xsl:param name="string"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains($string, '
')"><xsl:value-of select="substring-before($string, '
')"/>@@<xsl:call-template name="escape_linebreaks">
|
||||
<xsl:with-param name="string" select="substring-after($string, '
')"/>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="$string"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="mld_melding_externnr">
|
||||
<!-- meldingnummer in TobiasAX wordt niet expliciet meegegeven, en wordt daarom afgeleid uit task-id, namelijk alles voor het koppelteken). -->
|
||||
<xsl:param name="p_string"/>
|
||||
<xsl:value-of select="substring-before($p_string, '-')"/>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -1,43 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:s="http://www.w3.org/2003/05/soap-envelope"
|
||||
xmlns:b="http://schemas.datacontract.org/2004/07/SG.Services.Repositories"
|
||||
xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
|
||||
version="1.0">
|
||||
<xsl:output method="text" encoding="UTF-8"/>
|
||||
|
||||
|
||||
<xsl:template match="/">
|
||||
<xsl:apply-templates select="s:Envelope/s:Body"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="s:Body">fac_usrdata_code;fac_usrdata_omschr
|
||||
<xsl:for-each select="node()/node()/node()/node()">
|
||||
<xsl:if test="local-name() = 'CodeId'"> <xsl:value-of select="text()"/>;</xsl:if>
|
||||
<xsl:if test="local-name() = 'Description'"><xsl:value-of select="text()"/>;
|
||||
</xsl:if>
|
||||
</xsl:for-each>
|
||||
<xsl:for-each select="descendant::*/b:ReturnCode"><xsl:value-of select="CodeId"/>;<xsl:call-template name="puntkomma"><xsl:with-param name="p_string" select="Description"/></xsl:call-template>; </xsl:for-each>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="puntkomma">
|
||||
<xsl:param name="p_string"/><xsl:call-template name="linebreaks"><xsl:with-param name="string" select="translate($p_string,';',':')"/></xsl:call-template></xsl:template>
|
||||
|
||||
<xsl:template name="linebreaks">
|
||||
<xsl:param name="string"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains($string, '
')">
|
||||
<xsl:value-of select="substring-before($string, '
')"/>
|
||||
<br/>
|
||||
<xsl:call-template name="linebreaks">
|
||||
<xsl:with-param name="string" select="substring-after($string, '
')"/>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$string"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -1,579 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxml="urn:schemas-microsoft-com:xslt" version="1.0">
|
||||
<xsl:output method="xml" indent="yes" encoding="utf-8"/>
|
||||
<xsl:decimal-format name="european" decimal-separator="." grouping-separator=","/>
|
||||
<xsl:decimal-format name="format_default" decimal-separator="."/>
|
||||
<xsl:decimal-format name="format_xtractor" decimal-separator="," grouping-separator="."/>
|
||||
<xsl:param name="mode"/>
|
||||
<xsl:variable name="Rev">
|
||||
<!-- Revision van deze cust.xsl -->
|
||||
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:key name="GROUP_BY_fin_factuur_key" match="//data_row" use="FIN_FACTUUR_KEY"/>
|
||||
|
||||
<xsl:template match="rapport">
|
||||
<!-- ******************************************************************* -->
|
||||
<!-- *****Request: AANNEMERS4AX -->
|
||||
<!-- ******************************************************************* -->
|
||||
<xsl:if test="@view='mar_v_bedrijven_ax'">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$mode='AANNEMERS4AX'">
|
||||
<xml>
|
||||
<xsl:for-each select="//data_row">
|
||||
<xsl:sort select="PRS_BEDRIJF_KEY"/>
|
||||
<prs_bedrijf>
|
||||
<prs_bedrijf_key><xsl:value-of select="PRS_BEDRIJF_KEY"/></prs_bedrijf_key>
|
||||
<ax_vendAccountNum><xsl:value-of select="AX_SUPPLIER_ID"/></ax_vendAccountNum>
|
||||
<overeenkomstnr><xsl:value-of select="PRS_OVEREENKOMST_NR"/></overeenkomstnr>
|
||||
<gln><xsl:value-of select="PRS_LEVERANCIER_NR"/></gln>
|
||||
<prs_bedrijf_naam><xsl:value-of select="PRS_BEDRIJF_NAAM"/></prs_bedrijf_naam>
|
||||
</prs_bedrijf>
|
||||
</xsl:for-each>
|
||||
</xml>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:if>
|
||||
<!-- ******************************************************************* -->
|
||||
<!-- *****Request: OPMERKING_OPDR_4AX -->
|
||||
<!-- ******************************************************************* -->
|
||||
<xsl:if test="@view='mar_v_opdr_opmerking_ax'">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$mode='OPMERKING_OPDR_4AX'">
|
||||
<xml>
|
||||
<xsl:for-each select="//data_row">
|
||||
<xsl:sort select="MLD_OPDR_KEY"/>
|
||||
<mld_ordr>
|
||||
<mld_opdr_key><xsl:value-of select="MLD_OPDR_KEY"/></mld_opdr_key>
|
||||
<ax_company_id><xsl:value-of select="AX_COMPANY_ID"/></ax_company_id>
|
||||
<mld_melding_externnr><xsl:value-of select="MLD_MELDING_EXTERNNR"/></mld_melding_externnr>
|
||||
<mld_opdr_externnr><xsl:value-of select="MLD_OPDR_EXTERNNR"/></mld_opdr_externnr>
|
||||
<mld_opdr_ordernr><xsl:value-of select="MLD_OPDR_ORDERNR"/></mld_opdr_ordernr>
|
||||
<mld_opdr_opmerking><xsl:value-of select="MLD_OPDR_OPMERKING"/></mld_opdr_opmerking>
|
||||
</mld_ordr>
|
||||
</xsl:for-each>
|
||||
</xml>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:if>
|
||||
<!-- ******************************************************************* -->
|
||||
<!-- *****Request: AFGEMELDE_OPDR_4AX -->
|
||||
<!-- ******************************************************************* -->
|
||||
<xsl:if test="@view='mar_v_opdr_afgemeld_ax'">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$mode='AFGEMELDE_OPDR_4AX'">
|
||||
<xml>
|
||||
<xsl:for-each select="//data_row">
|
||||
<xsl:sort select="MLD_OPDR_KEY"/>
|
||||
<mld_ordr>
|
||||
<mld_opdr_key><xsl:value-of select="MLD_OPDR_KEY"/></mld_opdr_key>
|
||||
<ax_company_id><xsl:value-of select="AX_COMPANY_ID"/></ax_company_id>
|
||||
<mld_melding_externnr><xsl:value-of select="MLD_MELDING_EXTERNNR"/></mld_melding_externnr>
|
||||
<mld_opdr_externnr><xsl:value-of select="MLD_OPDR_EXTERNNR"/></mld_opdr_externnr>
|
||||
<mld_opdr_ordernr><xsl:value-of select="MLD_OPDR_ORDERNR"/></mld_opdr_ordernr>
|
||||
<fac_tracking_datum><xsl:value-of select="FAC_TRACKING_DATUM"/></fac_tracking_datum>
|
||||
<mld_opdr_opmerking><xsl:value-of select="MLD_OPDR_OPMERKING"/></mld_opdr_opmerking>
|
||||
</mld_ordr>
|
||||
</xsl:for-each>
|
||||
</xml>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:if>
|
||||
<!-- ******************************************************************* -->
|
||||
<!-- *****Request: GEPLANDE_OPDR_4AX -->
|
||||
<!-- ******************************************************************* -->
|
||||
<xsl:if test="@view='mar_v_opdr_plandatum_ax'">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$mode='GEPLANDE_OPDR_4AX'">
|
||||
<xml>
|
||||
<xsl:for-each select="//data_row">
|
||||
<xsl:sort select="MLD_OPDR_KEY"/>
|
||||
<mld_ordr>
|
||||
<mld_opdr_key><xsl:value-of select="MLD_OPDR_KEY"/></mld_opdr_key>
|
||||
<ax_company_id><xsl:value-of select="AX_COMPANY_ID"/></ax_company_id>
|
||||
<mld_melding_externnr><xsl:value-of select="MLD_MELDING_EXTERNNR"/></mld_melding_externnr>
|
||||
<mld_opdr_externnr><xsl:value-of select="MLD_OPDR_EXTERNNR"/></mld_opdr_externnr>
|
||||
<mld_opdr_ordernr><xsl:value-of select="MLD_OPDR_ORDERNR"/></mld_opdr_ordernr>
|
||||
<mld_opdr_plandatum><xsl:value-of select="MLD_OPDR_PLANDATUM"/></mld_opdr_plandatum>
|
||||
<mld_opdr_opmerking><xsl:value-of select="MLD_OPDR_OPMERKING"/></mld_opdr_opmerking>
|
||||
</mld_ordr>
|
||||
</xsl:for-each>
|
||||
</xml>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:if>
|
||||
<!-- ******************************************************************* -->
|
||||
<!-- *****Request: ACCEPT_REFUSED_OPDR_4AX -->
|
||||
<!-- ******************************************************************* -->
|
||||
<xsl:if test="@view='mar_v_opdr_accept_refused_ax'">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$mode='ACCEPT_REFUSED_OPDR_4AX'">
|
||||
<xml>
|
||||
<xsl:for-each select="//data_row">
|
||||
<xsl:sort select="MLD_OPDR_KEY"/>
|
||||
<mld_ordr>
|
||||
<mld_opdr_key><xsl:value-of select="MLD_OPDR_KEY"/></mld_opdr_key>
|
||||
<ax_company_id><xsl:value-of select="AX_COMPANY_ID"/></ax_company_id>
|
||||
<mld_melding_externnr><xsl:value-of select="MLD_MELDING_EXTERNNR"/></mld_melding_externnr>
|
||||
<mld_opdr_externnr><xsl:value-of select="MLD_OPDR_EXTERNNR"/></mld_opdr_externnr>
|
||||
<mld_opdr_ordernr><xsl:value-of select="MLD_OPDR_ORDERNR"/></mld_opdr_ordernr>
|
||||
<fac_tracking_datum><xsl:value-of select="FAC_TRACKING_DATUM"/></fac_tracking_datum>
|
||||
<mld_opdr_opmerking><xsl:value-of select="MLD_OPDR_OPMERKING"/></mld_opdr_opmerking>
|
||||
<fac_srtnotificatie_code><xsl:value-of select="FAC_SRTNOTIFICATIE_CODE"/></fac_srtnotificatie_code>
|
||||
</mld_ordr>
|
||||
</xsl:for-each>
|
||||
</xml>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:if>
|
||||
<!-- ******************************************************************* -->
|
||||
<!-- *****Request: FACT4_TOBIAS -->
|
||||
<!-- ******************************************************************* -->
|
||||
<xsl:if test="@view='mar_v_factuur_tobias_export'">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$mode='FACT4_TOBIAS'">
|
||||
<batch>
|
||||
<xsl:for-each select="//data_row[generate-id(.)=generate-id(key('GROUP_BY_fin_factuur_key',FIN_FACTUUR_KEY)[1])]">
|
||||
<xsl:sort select="FIN_FACTUUR_KEY"/>
|
||||
<Factuurinfo>
|
||||
<Batchnaam>Mareon_<xsl:value-of select="FIN_FACTUUR_KEY"/></Batchnaam>
|
||||
<Crediteurnummer><xsl:value-of select="PRS_BEDRIJF_AXNR"/></Crediteurnummer>
|
||||
<Budgethouder></Budgethouder>
|
||||
<ExternFactuurnummer><xsl:value-of select="FIN_FACTUUR_NR"/></ExternFactuurnummer>
|
||||
<Item_id><xsl:value-of select="FIN_FACTUUR_KEY"/></Item_id>
|
||||
<Omschrijving><xsl:value-of select="substring(normalize-space(FIN_FACTUUR_ONDERWERP),1,60)"/></Omschrijving>
|
||||
<Factuurdatum><xsl:value-of select="substring(FIN_FACTUUR_DATUM,7,4)"/>-<xsl:value-of select="substring(FIN_FACTUUR_DATUM,4,2)"/>-<xsl:value-of select="substring(FIN_FACTUUR_DATUM,1,2)"/></Factuurdatum>
|
||||
<Boekdatum><xsl:value-of select="substring(FIN_FACTUUR_BOEKDATUM,7,4)"/>-<xsl:value-of select="substring(FIN_FACTUUR_BOEKDATUM,4,2)"/>-<xsl:value-of select="substring(FIN_FACTUUR_BOEKDATUM,1,2)"/></Boekdatum>
|
||||
<BTWdatum></BTWdatum>
|
||||
<Factuurbedrag>
|
||||
<xsl:call-template name="TOTAL_INCL">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
<xsl:with-param name="p_formaat" select="'format_default'"/>
|
||||
</xsl:call-template>
|
||||
</Factuurbedrag>
|
||||
<Bedragonbelast>
|
||||
<xsl:call-template name="SGGONBEL_INCL">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
</xsl:call-template>
|
||||
</Bedragonbelast>
|
||||
<BedragHoog>
|
||||
<xsl:call-template name="SGGHOOG_INCL">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
</xsl:call-template>
|
||||
</BedragHoog>
|
||||
<BedragLaag>
|
||||
<xsl:call-template name="SGGLAAG_INCL">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
</xsl:call-template>
|
||||
</BedragLaag>
|
||||
<BTWBedragHoog>
|
||||
<xsl:call-template name="VAT_HIGH">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
<xsl:with-param name="p_formaat" select="'format_default'"/>
|
||||
</xsl:call-template>
|
||||
</BTWBedragHoog>
|
||||
<BTWBedragLaag>
|
||||
<xsl:call-template name="VAT_LOW">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
<xsl:with-param name="p_formaat" select="'format_default'"/>
|
||||
</xsl:call-template>
|
||||
</BTWBedragLaag>
|
||||
<BTWVerlegd>
|
||||
<xsl:call-template name="BTW_VERLEGD_TOBIAS">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
</xsl:call-template>
|
||||
</BTWVerlegd>
|
||||
<G_Rekening>
|
||||
<xsl:call-template name="BANKREKENINGNR">
|
||||
<xsl:with-param name="p_fin_factuur_bankreknr" select="FIN_FACTUUR_G_IBAN"/>
|
||||
<xsl:with-param name="p_prs_bedrijf_bankreknr" select="PRS_BEDRIJF_G_BANKREKNR"/>
|
||||
<xsl:with-param name="p_prs_bedrijf_bankreknr2" select="PRS_BEDRIJF_G_BANKREKNR2"/>
|
||||
</xsl:call-template>
|
||||
</G_Rekening>
|
||||
<Banknummer>
|
||||
<xsl:call-template name="BANKREKENINGNR">
|
||||
<xsl:with-param name="p_fin_factuur_bankreknr" select="FIN_FACTUUR_IBAN"/>
|
||||
<xsl:with-param name="p_prs_bedrijf_bankreknr" select="PRS_BEDRIJF_BANKREKNR"/>
|
||||
<xsl:with-param name="p_prs_bedrijf_bankreknr2" select="PRS_BEDRIJF_BANKREKNR2"/>
|
||||
</xsl:call-template>
|
||||
</Banknummer>
|
||||
<BedragG_Rekening>
|
||||
<xsl:if test="FIN_FACTUUR_G_AMMOUNT != ''">
|
||||
<xsl:value-of select="format-number(FIN_FACTUUR_G_AMMOUNT, '0.00', 'format_default')"/>
|
||||
</xsl:if>
|
||||
</BedragG_Rekening>
|
||||
<Referentie1>
|
||||
<xsl:call-template name="TOBIAS_OPDRACHTEN_PER_FIN_FACTUUR_KEY">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
</xsl:call-template>
|
||||
</Referentie1>
|
||||
<Referentie2>
|
||||
<xsl:call-template name="TOBIAS_AMOUNTS_EXCL_BTW_PER_FIN_FACTUUR_KEY">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
</xsl:call-template>
|
||||
</Referentie2>
|
||||
<Referentie3>
|
||||
<xsl:call-template name="TOBIAS_BTW_TARIEF_PER_FIN_FACTUUR_KEY">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
</xsl:call-template>
|
||||
</Referentie3>
|
||||
<Blokkeren>false</Blokkeren>
|
||||
<Bedrijfnummer><xsl:value-of select="PRS_WOCO_AXNR"/></Bedrijfnummer>
|
||||
<Factuurtype>Technisch</Factuurtype>
|
||||
<AutoIncasso>false</AutoIncasso>
|
||||
</Factuurinfo>
|
||||
</xsl:for-each>
|
||||
</batch>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:if>
|
||||
<!-- ******************************************************************* -->
|
||||
<!-- *****Request: FACT4AX_XTRACTOR -->
|
||||
<!-- ******************************************************************* -->
|
||||
<xsl:if test="@view='mar_v_factuur_ax_export'">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$mode='FACT4AX_XTRACTOR'">
|
||||
<batch>
|
||||
<xsl:for-each select="//data_row[generate-id(.)=generate-id(key('GROUP_BY_fin_factuur_key',FIN_FACTUUR_KEY)[1])]">
|
||||
<xsl:sort select="FIN_FACTUUR_KEY"/>
|
||||
<document>
|
||||
<doctype>INVOICE</doctype>
|
||||
<notes description="Document Notes">
|
||||
<notes></notes>
|
||||
</notes>
|
||||
<extref description="External Reference">
|
||||
<externalid></externalid>
|
||||
<externalname>Otis</externalname>
|
||||
<country>NL</country>
|
||||
<currency>EUR</currency>
|
||||
<language>NL</language>
|
||||
</extref>
|
||||
<docfile description="document files">
|
||||
<doc_filename></doc_filename>
|
||||
<data_file></data_file>
|
||||
<pdf_img_file><xsl:value-of select="FIN_FACTUUR_BESTAND"/></pdf_img_file>
|
||||
</docfile>
|
||||
<fields description="data fields">
|
||||
<CORSA description="Export">
|
||||
<EX_BANKACC_ORG type="String"></EX_BANKACC_ORG>
|
||||
<EX_BANKACC_2 type="String"></EX_BANKACC_2>
|
||||
<EX_BANKACC_3 type="String"></EX_BANKACC_3>
|
||||
<EX_VATNR_1 type="String"></EX_VATNR_1>
|
||||
<EX_TELNR type="String"></EX_TELNR>
|
||||
<EX_FAXNR type="String"></EX_FAXNR>
|
||||
<EX_COCNR_1 type="String"></EX_COCNR_1>
|
||||
<EX_WWW type="String"></EX_WWW>
|
||||
<EX_IBANNR_1 type="String"></EX_IBANNR_1>
|
||||
<EX_BANKACC_1 type="String">
|
||||
<xsl:call-template name="BANKREKENINGNR">
|
||||
<xsl:with-param name="p_fin_factuur_bankreknr" select="FIN_FACTUUR_IBAN"/>
|
||||
<xsl:with-param name="p_prs_bedrijf_bankreknr" select="PRS_BEDRIJF_BANKREKNR"/>
|
||||
<xsl:with-param name="p_prs_bedrijf_bankreknr2" select="PRS_BEDRIJF_BANKREKNR2"/>
|
||||
</xsl:call-template>
|
||||
</EX_BANKACC_1>
|
||||
<EX_CUSTOM_1 type="String"></EX_CUSTOM_1>
|
||||
</CORSA>
|
||||
<DOCUMENT description="Factuurgegevens">
|
||||
<EX_INVOICENR type="String"><xsl:value-of select="FIN_FACTUUR_NR"/></EX_INVOICENR>
|
||||
<EX_INVOICEDATE type="Date"><xsl:value-of select="FIN_FACTUUR_DATUM"/></EX_INVOICEDATE>
|
||||
<EX_OND type="String"><xsl:value-of select="substring(normalize-space(FIN_FACTUUR_ONDERWERP),1,60)"/></EX_OND>
|
||||
<EX_BTWDATUM type="Date"></EX_BTWDATUM>
|
||||
<xsl:element name="EX_SGBDR">
|
||||
<xsl:attribute name="type">List</xsl:attribute>
|
||||
<xsl:attribute name="Value"><xsl:value-of select="PRS_WOCO_AXNR"/></xsl:attribute>
|
||||
<xsl:value-of select="PRS_WOCO_AXNR"/>
|
||||
</xsl:element>
|
||||
<EX_SGBOEKD type="Date"><xsl:value-of select="FIN_FACTUUR_BOEKDATUM"/></EX_SGBOEKD>
|
||||
<EX_SGAINC type="Logical"></EX_SGAINC>
|
||||
<EX_SGPROJNR type="String"></EX_SGPROJNR>
|
||||
<EX_SGPROJMAN type="String"></EX_SGPROJMAN>
|
||||
<EX_SGTERMIJN type="String"></EX_SGTERMIJN>
|
||||
</DOCUMENT>
|
||||
<AMOUNT description="Bedragen">
|
||||
<EX_TOTALEXCL type="Currency">
|
||||
<xsl:call-template name="TOTALEXCL">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
</xsl:call-template>
|
||||
</EX_TOTALEXCL>
|
||||
<EX_VAT_HIGH type="Currency">
|
||||
<xsl:call-template name="VAT_HIGH">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
<xsl:with-param name="p_formaat" select="'format_xtractor'"/>
|
||||
</xsl:call-template>
|
||||
</EX_VAT_HIGH>
|
||||
<EX_VAT_LOW type="Currency">
|
||||
<xsl:call-template name="VAT_LOW">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
<xsl:with-param name="p_formaat" select="'format_xtractor'"/>
|
||||
</xsl:call-template>
|
||||
</EX_VAT_LOW>
|
||||
<EX_SGGHOOG type="Currency">
|
||||
<xsl:call-template name="SGGHOOG">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
</xsl:call-template>
|
||||
</EX_SGGHOOG>
|
||||
<EX_SGGLAAG type="Currency">
|
||||
<xsl:call-template name="SGGLAAG">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
</xsl:call-template>
|
||||
</EX_SGGLAAG>
|
||||
<EX_SGGONBEL type="Currency">
|
||||
<xsl:call-template name="SGGONBEL">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
</xsl:call-template>
|
||||
</EX_SGGONBEL>
|
||||
<EX_TOTAL_INCL type="Currency">
|
||||
<xsl:call-template name="TOTAL_INCL">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
<xsl:with-param name="p_formaat" select="'format_xtractor'"/>
|
||||
</xsl:call-template>
|
||||
</EX_TOTAL_INCL>
|
||||
<Werkbonnentotaal type="Currency"></Werkbonnentotaal>
|
||||
<EX_BTWVERL type="String">
|
||||
<xsl:call-template name="BTW_VERLEGD">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
</xsl:call-template>
|
||||
</EX_BTWVERL>
|
||||
<NG-EX_GREK type="String"></NG-EX_GREK>
|
||||
<EX_GREKNR type="String">
|
||||
<xsl:call-template name="BANKREKENINGNR">
|
||||
<xsl:with-param name="p_fin_factuur_bankreknr" select="FIN_FACTUUR_G_IBAN"/>
|
||||
<xsl:with-param name="p_prs_bedrijf_bankreknr" select="PRS_BEDRIJF_G_BANKREKNR"/>
|
||||
<xsl:with-param name="p_prs_bedrijf_bankreknr2" select="PRS_BEDRIJF_G_BANKREKNR2"/>
|
||||
</xsl:call-template>
|
||||
</EX_GREKNR>
|
||||
<EX_GREKBDR type="Currency">
|
||||
<xsl:if test="FIN_FACTUUR_G_AMMOUNT != ''">
|
||||
<xsl:value-of select="format-number(FIN_FACTUUR_G_AMMOUNT, '0,00', 'format_xtractor')"/>
|
||||
</xsl:if>
|
||||
</EX_GREKBDR>
|
||||
<EX_CURRENCY type="String">EUR</EX_CURRENCY>
|
||||
<EX_BTWTTV type="String"></EX_BTWTTV>
|
||||
<EX_wrktot type="Currency"></EX_wrktot>
|
||||
</AMOUNT>
|
||||
<TABLE description="Werkbon">
|
||||
<EX_TABLE type="Table">
|
||||
<xsl:call-template name="XTRACTOR_ROWS_PER_FIN_FACTUUR_KEY">
|
||||
<xsl:with-param name="p_fin_factuur_key" select="FIN_FACTUUR_KEY"/>
|
||||
</xsl:call-template>
|
||||
</EX_TABLE>
|
||||
</TABLE>
|
||||
<CUSTOM description="Variabel"/>
|
||||
</fields>
|
||||
</document>
|
||||
</xsl:for-each>
|
||||
</batch>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="OPDRACHTNR">
|
||||
<xsl:param name="p_mld_opdr_id"/>
|
||||
<xsl:param name="p_fin_factuur_ext_opdnr"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$p_mld_opdr_id != ''"><xsl:value-of select="$p_mld_opdr_id"/></xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="$p_fin_factuur_ext_opdnr"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="BANKREKENINGNR">
|
||||
<xsl:param name="p_fin_factuur_bankreknr"/>
|
||||
<xsl:param name="p_prs_bedrijf_bankreknr"/>
|
||||
<xsl:param name="p_prs_bedrijf_bankreknr2"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$p_fin_factuur_bankreknr != ''"><xsl:value-of select="$p_fin_factuur_bankreknr"/></xsl:when>
|
||||
<xsl:when test="$p_prs_bedrijf_bankreknr != ''"><xsl:value-of select="$p_prs_bedrijf_bankreknr"/></xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="$p_prs_bedrijf_bankreknr2"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="BTWCODE">
|
||||
<!-- **************************************************************************************** -->
|
||||
<!-- *****BTW CODE moet in Xtractor Verlegd niet V zijn, maar H, en 0 moet G worden -->
|
||||
<!-- **************************************************************************************** -->
|
||||
<xsl:param name="p_fin_btwtabelwaarde_btwcode"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="$p_fin_btwtabelwaarde_btwcode = 'V'">H</xsl:when>
|
||||
<xsl:when test="$p_fin_btwtabelwaarde_btwcode = '0'">G</xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="$p_fin_btwtabelwaarde_btwcode"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="BTW_VERLEGD">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="count(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key and FIN_BTWTABELWAARDE_VERLEGD = '1']) != 0">Ja</xsl:when>
|
||||
<xsl:otherwise>Nee</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="BTW_VERLEGD_TOBIAS">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="count(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key and FIN_BTWTABELWAARDE_VERLEGD = '1']) != 0">true</xsl:when>
|
||||
<xsl:otherwise>false</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="TOTALEXCL">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key]/FIN_FACTUURREGEL_TOTAAL), '0,00', 'format_xtractor')"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="VAT_HIGH">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:param name="p_formaat"/>
|
||||
<xsl:variable name="l_pattern">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$p_formaat='format_xtractor'">0,00</xsl:when>
|
||||
<xsl:otherwise>0.00</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
<xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key and FIN_FACTUURREGEL_BTW_PERC = '21']/FIN_FACTUURREGEL_BTW), $l_pattern, $p_formaat)"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="VAT_LOW">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:param name="p_formaat"/>
|
||||
<xsl:variable name="l_pattern">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$p_formaat='format_xtractor'">0,00</xsl:when>
|
||||
<xsl:otherwise>0.00</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
<xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key and FIN_FACTUURREGEL_BTW_PERC = '6']/FIN_FACTUURREGEL_BTW), $l_pattern, $p_formaat)"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="SGGHOOG">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key and FIN_FACTUURREGEL_BTW_PERC = '21']/FIN_FACTUURREGEL_TOTAAL), '0,00', 'format_xtractor')"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="SGGLAAG">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key and FIN_FACTUURREGEL_BTW_PERC = '6']/FIN_FACTUURREGEL_TOTAAL), '0,00', 'format_xtractor')"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="SGGONBEL">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key and FIN_FACTUURREGEL_BTW_PERC = '0']/FIN_FACTUURREGEL_TOTAAL), '0,00', 'format_xtractor')"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="TOTAL_INCL">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:param name="p_formaat"/>
|
||||
<xsl:variable name="l_pattern">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$p_formaat='format_xtractor'">0,00</xsl:when>
|
||||
<xsl:otherwise>0.00</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
<xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key]/FIN_FACTUURREGEL_TOTAAL) + sum(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key]/FIN_FACTUURREGEL_BTW), $l_pattern, $p_formaat)"/>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="SGGHOOG_INCL">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key and FIN_FACTUURREGEL_BTW_PERC = '21']/FIN_FACTUURREGEL_TOTAAL) + sum(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key and FIN_FACTUURREGEL_BTW_PERC = '21']/FIN_FACTUURREGEL_BTW), '0.00', 'format_default')"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="SGGLAAG_INCL">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key and FIN_FACTUURREGEL_BTW_PERC = '6']/FIN_FACTUURREGEL_TOTAAL) + sum(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key and FIN_FACTUURREGEL_BTW_PERC = '6']/FIN_FACTUURREGEL_BTW), '0.00', 'format_default')"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="SGGONBEL_INCL">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:value-of select="format-number(sum(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key and FIN_FACTUURREGEL_BTW_PERC = '0']/FIN_FACTUURREGEL_TOTAAL) + sum(//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key and FIN_FACTUURREGEL_BTW_PERC = '0']/FIN_FACTUURREGEL_BTW), '0.00', 'format_default')"/>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
|
||||
<xsl:template name="XTRACTOR_ROWS_PER_FIN_FACTUUR_KEY">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:for-each select="//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key]">
|
||||
<xsl:sort select="FIN_FACTUURREGEL_NR"/>
|
||||
<xsl:element name="row">
|
||||
<xsl:attribute name="nr"><xsl:value-of select="position()"/></xsl:attribute>
|
||||
<col nr="1" id="ART">
|
||||
<xsl:call-template name="OPDRACHTNR">
|
||||
<xsl:with-param name="p_mld_opdr_id" select="MLD_OPDR_ID"/>
|
||||
<xsl:with-param name="p_fin_factuur_ext_opdnr" select="FIN_FACTUUR_EXT_OPDNR"/>
|
||||
</xsl:call-template>
|
||||
</col>
|
||||
<col nr="2" id="DESCR"><xsl:value-of select="FIN_FACTUURREGEL_OMSCHRIJVING"/></col>
|
||||
<col nr="3" id="AMNT"><xsl:value-of select="format-number(FIN_FACTUURREGEL_TOTAAL, '0,00', 'format_xtractor')"/></col>
|
||||
<col nr="4" id="BTW">
|
||||
<xsl:call-template name="BTWCODE">
|
||||
<xsl:with-param name="p_fin_btwtabelwaarde_btwcode" select="FIN_BTWTABELWAARDE_BTWCODE"/>
|
||||
</xsl:call-template>
|
||||
</col>
|
||||
</xsl:element>
|
||||
</xsl:for-each>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="TOBIAS_OPDRACHTEN_PER_FIN_FACTUUR_KEY">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:for-each select="//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key]">
|
||||
<xsl:sort select="FIN_FACTUURREGEL_NR"/>
|
||||
<xsl:if test="position() != 1">;</xsl:if><xsl:call-template name="OPDRACHTNR">
|
||||
<xsl:with-param name="p_mld_opdr_id" select="MLD_OPDR_ID"/>
|
||||
<xsl:with-param name="p_fin_factuur_ext_opdnr" select="FIN_FACTUUR_EXT_OPDNR"/>
|
||||
</xsl:call-template>
|
||||
</xsl:for-each>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="TOBIAS_AMOUNTS_EXCL_BTW_PER_FIN_FACTUUR_KEY">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:for-each select="//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key]">
|
||||
<xsl:sort select="FIN_FACTUURREGEL_NR"/>
|
||||
<xsl:if test="position() != 1">;</xsl:if><xsl:value-of select="format-number(FIN_FACTUURREGEL_TOTAAL, '0.00', 'format_default')"/>
|
||||
</xsl:for-each>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="TOBIAS_BTW_TARIEF_PER_FIN_FACTUUR_KEY">
|
||||
<xsl:param name="p_fin_factuur_key"/>
|
||||
<xsl:for-each select="//data_row[FIN_FACTUUR_KEY = $p_fin_factuur_key]">
|
||||
<xsl:sort select="FIN_FACTUURREGEL_NR"/>
|
||||
<xsl:if test="position() != 1">;</xsl:if><xsl:call-template name="BTWCODE">
|
||||
<xsl:with-param name="p_fin_btwtabelwaarde_btwcode" select="FIN_BTWTABELWAARDE_BTWCODE"/>
|
||||
</xsl:call-template>
|
||||
</xsl:for-each>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<!-- SOAP envelope met de afgesproken 'payload' in response op FlexWhere-request! -->
|
||||
<xsl:template match="facilitor">
|
||||
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
||||
<soap:Body>
|
||||
<xsl:apply-templates select="rapport"/>
|
||||
</soap:Body>
|
||||
</soap:Envelope>
|
||||
</xsl:template>
|
||||
|
||||
<!-- De afgesproken 'payload' in response op FlexWhere-request (zonder envelope)! -->
|
||||
<!--xsl:template match="facilitor">
|
||||
<xsl:apply-templates select="rapport"/>
|
||||
</xsl:template-->
|
||||
|
||||
<!-- Root -->
|
||||
<xsl:template match="/">
|
||||
<xsl:apply-templates select="facilitor"/>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
@@ -1,204 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="xml" indent="yes" encoding="utf-8"/>
|
||||
|
||||
<xsl:decimal-format name="european" decimal-separator="," grouping-separator="."/>
|
||||
|
||||
<xsl:param name="mode"/>
|
||||
|
||||
<xsl:variable name="Rev">
|
||||
<!-- Revision -->
|
||||
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:template match="opdracht">
|
||||
<!-- SIDB Onderhoudsopdracht 'insbou' Variant 'Basismodel010' versie 001 (releasedatum 7-7-2014) -->
|
||||
<MaintenanceInstruction>
|
||||
<!-- SIDB description - Nummer ter identificatie van een bericht. Mandatory, (C17) -->
|
||||
<!-- Voorbeeldformaat: MAR24/1@dd-mm-jjjj hh:mm:ss -->
|
||||
<MessageNumber><xsl:value-of select="melding/stdmelding/discipline/srtdiscipline/prefix"/><xsl:value-of select="melding/key"/>/<xsl:value-of select="bedrijfopdr_volgnr"/>@<xsl:value-of select="//header/dateTime"/></MessageNumber>
|
||||
<!-- SIDB - Datum waarop een bericht is aangemaakt. Mandatory, formaat CCYY-MM-DD -->
|
||||
<MessageDate><xsl:value-of select="//header/dateYear"/>-<xsl:value-of select="//header/dateMonth"/>-<xsl:value-of select="//header/dateDay"/></MessageDate>
|
||||
<!-- SIDB description - Tijdstip waarop het bericht is aangemaakt. Optional, formaat hhmm -->
|
||||
<MessageTime><xsl:value-of select="substring-after(//header/dateTime,' ')"/></MessageTime>
|
||||
<!-- SIDB - Partij die de opdracht geeft, Mandatory node -->
|
||||
<Buyer>
|
||||
<!-- SIDB - Global Location Number (GLN), een wereldwijd uniek nummer ter identificatie van een partij of lokatie. Optioneel!?!?!? N(13) -->
|
||||
<GLN><xsl:apply-templates select="melding/voor/afdeling/bedrijf/leverancier_nr"/></GLN>
|
||||
<!-- SIDB - Tekstveld met de naam van de partij of lokatie. Optioneel, C(50) -->
|
||||
<Name><xsl:value-of select="melding/voor/afdeling/bedrijf/naam"/></Name>
|
||||
<!-- SIDB - Tekstveld met de plaatsnaam van het adres van de partij of lokatie. Optioneel, C(35) -->
|
||||
<StreetAndNumber><xsl:value-of select="melding/voor/afdeling/bedrijf/bezoek_adres"/></StreetAndNumber>
|
||||
<!-- SIDB - Tekstveld met de plaatsnaam van het adres van de partij of lokatie. Optioneel, C(35) -->
|
||||
<City><xsl:value-of select="melding/voor/afdeling/bedrijf/bezoek_plaats"/></City>
|
||||
<!-- SIDB - Tekstveld met de postcode van het adres van een partij of lokatie. Optioneel, C(9) -->
|
||||
<PostalCode><xsl:value-of select="melding/voor/afdeling/bedrijf/bezoek_postcode"/></PostalCode>
|
||||
<!-- SIDB - Code van het land van het adres van de partij of lokatie. Optioneel, C(2) -->
|
||||
<!-- <Country></Country> -->
|
||||
<!-- SIDB - Gegevens over een afdeling of persoon van de partij waarmee contact kan worden opgenomen via telefoon, fax of email. Optioneel -->
|
||||
<ContactInformation>
|
||||
<!-- SIDB - Tekstveld met de naam van een persoon waarmee contact kan worden opgenomen. Optioneel, C(35) -->
|
||||
<ContactPersonName><xsl:value-of select="melding/voor/afdeling/bedrijf/contact_persoon"/></ContactPersonName>
|
||||
<!-- SIDB - Nummer waarmee via de telefoon contact kan worden opgenomen. Optioneel, C(20) -->
|
||||
<PhoneNumber><xsl:value-of select="melding/voor/afdeling/bedrijf/contact_telefoon"/></PhoneNumber>
|
||||
<!-- SIDB - Tekstveld met het elektronische adres waarmee via e-mail contact kan worden opgenomen. Optioneel, C(254) -->
|
||||
<EmailAddress><xsl:value-of select="melding/voor/afdeling/bedrijf/email"/></EmailAddress>
|
||||
</ContactInformation>
|
||||
</Buyer>
|
||||
<!-- SIDB - Partij die onderdeel is van de opdrachtgever maar elders is gevestigd, Optionele node -->
|
||||
<!-- Onbekend en daarmee nu niet relevant, laten we dus leeg -->
|
||||
<!-- <Affiliate></Affiliate> -->
|
||||
<!-- SIDB - Aannemer, Partij die opdracht gaat uitvoeren. Mandatory -->
|
||||
<Contractor>
|
||||
<!-- SIDB - Global Location Number (GLN), een wereldwijd uniek nummer ter identificatie van een partij of lokatie (hier de aannemer). Optioneel!?!?!? N(13) -->
|
||||
<GLN><xsl:apply-templates select="uitvoerende/bedrijf/leverancier_nr"/></GLN>
|
||||
<!-- SIDB - Tekstveld met de naam van de partij of lokatie. Optioneel, C(50) -->
|
||||
<Name><xsl:value-of select="uitvoerende/bedrijf/naam"/></Name>
|
||||
<!-- SIDB - Tekstveld met de plaatsnaam van het adres van de partij of lokatie. Optioneel, C(35) -->
|
||||
<StreetAndNumber><xsl:value-of select="uitvoerende/bedrijf/bezoek_adres"/></StreetAndNumber>
|
||||
<!-- SIDB - Tekstveld met de plaatsnaam van het adres van de partij of lokatie. Optioneel, C(35) -->
|
||||
<City><xsl:value-of select="uitvoerende/bedrijf/bezoek_plaats"/></City>
|
||||
<!-- SIDB - Tekstveld met de postcode van het adres van een partij of lokatie. Optioneel, C(9) -->
|
||||
<PostalCode><xsl:value-of select="uitvoerende/bedrijf/bezoek_postcode"/></PostalCode>
|
||||
<!-- SIDB - Code van het land van het adres van de partij of lokatie. Optioneel, C(2) -->
|
||||
<!-- <Country></Country> -->
|
||||
</Contractor>
|
||||
<!-- SIDB - Niveau in het bericht waar de opdrachten worden gespecificeerd. Mandatory-->
|
||||
<InstructionData>
|
||||
<!-- SIDB - Nummer ter identificatie van een opdracht binnen een bericht. Mandatory, C(17)-->
|
||||
<!-- Intern opdrachtnummer vanuit Broker/koppelsysteem (= Mareon), toegekend door de zender van het bericht, ontvanger vermeldt dit nummer op pakbon en/of factuur. Verplicht, C(17)-->
|
||||
<!-- Bedoeld voor system-2-system communicatie -->
|
||||
<InstructionNumber><xsl:value-of select="melding/stdmelding/discipline/srtdiscipline/prefix"/><xsl:value-of select="melding/key"/>/<xsl:value-of select="bedrijfopdr_volgnr"/></InstructionNumber>
|
||||
<!-- SIDB - Extra nummer ter verdere identificatie van een opdracht of opdrachtonderdeel. Optioneel, C(17)-->
|
||||
<!-- Hier wordt het opdrachtnummer van Tobias (123456.1) of TobiasAX (IOR12345) neergezet. -->
|
||||
<InstructionSubNumber><xsl:value-of select="opdr_id"/></InstructionSubNumber>
|
||||
<!-- FSN#31496: Meldingnummer erbij (voor plannen Plegt-Vos) -->
|
||||
<!-- Meldingnummer in het bronsysteem, toegekend door de zender van het bronbericht, ontvanger zou bij InstructionNumber kunnen relateren aan dit InstructionSubNumber -->
|
||||
<!-- 1 Meldingnummer kan 'n' OrderNumbers hebben, vanaf de 2e order bij een call kan ontvanger ervoor kiezen om dit te koppelen aan planning, beter gezegd geen expliciet planning -->
|
||||
<!-- Oftewel shortcut in proces: indien de 1e opdracht al is ingepland bij handyman 'X', dan kan in de systeemkoppeling ervoor worden gekozen om de 2e opdracht bij hetzelfde meldingnummer op dezelfde datum/dezelfde handyman in te plannen -->
|
||||
<!-- Hiervoor bestaat (nog!) geen SidB node-->
|
||||
<!-- TIP: voorlopig kan het MAR-nummer (voor de slash) als meldingnummer worden hanteert, deze volstaat ook als kapstok voor meldingnummer -->
|
||||
<!-- <InstructionSubNumber><xsl:value-of select="melding/externnr"/></InstructionSubNumber> -->
|
||||
<!-- SIDB - Code waarmee de opdracht nader wordt gespecificeerd. Codes zijn 500, 501, 505 en 506. Optioneel, C(3)-->
|
||||
<!-- Onbekend, hier niet ingevuld-->
|
||||
|
||||
<!-- <InstructionType></InstructionType> -->
|
||||
<!-- SIDB - Datum waarop de opdracht is gegeven (aangemaakt). Optioneel, CCYYMMDD -->
|
||||
<InstructionDate><xsl:value-of select="datumbegin/jaar"/>-<xsl:value-of select="datumbegin/maand"/>-<xsl:value-of select="datumbegin/dag"/></InstructionDate>
|
||||
<!-- SIDB - Tijd waarop de opdracht is gegeven (aangemaakt). Optioneel, hh:mm:ss -->
|
||||
<InstructionTime><xsl:value-of select="datumbegin/tijd"/>:00</InstructionTime>
|
||||
<!-- SIDB - Tekstveld met de inhoud van aanvullende informatie. Optioneel, C(70) -->
|
||||
<!-- <FreeText></FreeText> -->
|
||||
<!-- SIDB - Gegevens waarmee gerefereerd wordt aan een contract. Optioneel -->
|
||||
<ContractReference></ContractReference>
|
||||
<!-- SIDB - Gegevens over de te onderhouden locatie. Optioneel!?!?!? -->
|
||||
<MaintenanceLocation>
|
||||
<!-- SIDB - Uniek nummer ter identificatie van een woningcorporatie complex. Optioneel, C(17) -->
|
||||
<!-- <ComplexNumber></ComplexNumber> -->
|
||||
<!-- SIDB - Uniek nummer ter identificatie van een pand. Optioneel, C(17) -->
|
||||
<!-- <PremisesNumber></PremisesNumber> -->
|
||||
<!-- SIDB - Uniek nummer ter identificatie van een vastgoedeenheid. Optioneel, C(17) -->
|
||||
<!-- <RealEstateUnitNumber></RealEstateUnitNumber>-->
|
||||
<!-- SIDB - Tekstveld met straatnaam en huisnummer van het adres van de lokatie. Mandatory, C(35) -->
|
||||
<!-- Melding kenmerk key 2 is adres -->
|
||||
<StreetAndNumber><xsl:value-of select="melding/kenmerk[@key='2']"/></StreetAndNumber>
|
||||
<!-- SIDB - Tekstveld met de plaatsnaam van het adres van de lokatie. Mandatory, C(35) -->
|
||||
<!-- Melding kenmerk key 4 is plaatsnaam -->
|
||||
<City><xsl:value-of select="melding/kenmerk[@key='4']"/></City>
|
||||
<!-- Postcode niet in SidB hier gedefinieerd, dus maar ff uitcommentarieren -->
|
||||
<!-- Melding kenmerk key 3 is postcode -->
|
||||
<!-- <PostalCode><xsl:value-of select="melding/kenmerk[@key='3']"/></PostalCode> -->
|
||||
<!-- SIDB: Tekstveld met de beschrijving van de ruimte waar het onderhoud moet plaats vinden, Optioneel, C(35). -->
|
||||
<!-- Melding kenmerk key 6 is objectomschrijving, hier maar voorlopig in gebruiken aan gebrek aan beter -->
|
||||
<!-- In SidB-insbou003 bestaat hiervoor veld 'Locationdescription' (onder node afleveradres) en was beter geweest -->
|
||||
<Area><xsl:value-of select="melding/kenmerk[@key='6']"/></Area>
|
||||
<!-- SIDB - Tekstveld met de naam van de huismeester of huurder die de onderhoudsmelding heeft gedaan. Optioneel, C(35) -->
|
||||
<!-- Melding kenmerk key 1 is huurder -->
|
||||
<ContactPersonName><xsl:value-of select="melding/kenmerk[@key='1']"/></ContactPersonName>
|
||||
<!-- SIDB - Nummer waarmee via de telefoon contact kan worden opgenomen. Optioneel, C(20) -->
|
||||
<!-- Melding kenmerk key 5 is telefoon van huurder -->
|
||||
<PhoneNumber1><xsl:value-of select="melding/kenmerk[@key='5']"/></PhoneNumber1>
|
||||
<!--
|
||||
<PhoneNumber2></PhoneNumber2>
|
||||
<EmailAddress1></EmailAddress1>
|
||||
<EmailAddress2></EmailAddress2>
|
||||
-->
|
||||
</MaintenanceLocation>
|
||||
<!-- SIDB - Gegevens over de datum, tijd of periode van levering van onderhoud. -->
|
||||
<AppointmentDateTimeInformation>
|
||||
<!-- Datum waarop de opdracht uitgevoerd moet worden, Optioneel, formaat CCYYMMDD -->
|
||||
<!-- <RequiredDeliveryDate></RequiredDeliveryDate> -->
|
||||
<!-- Tijdstip waarop de opdracht uitgevoerd moet worden, Optioneel, formaat hhmm -->
|
||||
<!-- <RequiredDeliveryTime></RequiredDeliveryTime> -->
|
||||
<!-- Levertijdvak, gegevens over periode waarbinnen opdracht uitgevoerd/geleverd kan worden, Optioneel -->
|
||||
<DeliveryTimeFrame>
|
||||
<!-- SIDB - Datum vanaf wanneer het onderhoud geleverd kan worden. Mandatory, formaat CCYYMMDD -->
|
||||
<DeliveryDateEarliest><xsl:value-of select="datumbegin/jaar"/>-<xsl:value-of select="datumbegin/maand"/>-<xsl:value-of select="datumbegin/dag"/></DeliveryDateEarliest>
|
||||
<!-- Tijdstip op de vroegste leverdatum vanaf wanneer het onderhoud geleverd kan worden. Optioneel, formaat hhmm -->
|
||||
<!-- <DeliveryTimeEarliest></DeliveryTimeEarliest> -->
|
||||
<!-- SIDB - Datum tot en met wanneer het onderhoud geleverd kan worden. Mandatory, formaat CCYYMMDD -->
|
||||
<DeliveryDateLatest><xsl:value-of select="einddatum/jaar"/>-<xsl:value-of select="einddatum/maand"/>-<xsl:value-of select="einddatum/dag"/></DeliveryDateLatest>
|
||||
<!-- SIDB - Tijdstip op de laatste leverdatum tot wanneer het onderhoud geleverd kan worden. Optioneel, formaat hhmm -->
|
||||
<!-- <DeliveryTimeLatest></DeliveryTimeLatest> -->
|
||||
</DeliveryTimeFrame>
|
||||
</AppointmentDateTimeInformation>
|
||||
<!-- SIDB - Niveau in het bericht waar de onderhoudsdetails worden gespecificeerd, Optioneel -->
|
||||
<InstructionLine>
|
||||
<!-- SIDB - Regelnummer ter identificatie van een regel. Mandatory, N(6) -->
|
||||
<!-- Er is - tot nu toe - altijd 1 regelnummer binnen de opdracht, standaard dus 1 -->
|
||||
<LineNumber>1</LineNumber>
|
||||
<!-- SIDB - Het aantal eenheden van werk geidentificeerd door de normprijscode. Mandatory, N(15) -->
|
||||
<Quantity>1</Quantity>
|
||||
<!-- SIDB - Code van de meeteenheid waarin het aantal is uitgedrukt. Mandatory, C(3) -->
|
||||
<MeasurementUnitQuantity>PCE</MeasurementUnitQuantity>
|
||||
<!-- SIDB - Code waarmee het uit te voeren werk wordt aangegeven. Optioneel, C(17) -->
|
||||
<!-- <NormPriceCode></NormPriceCode> -->
|
||||
<!-- SIDB - Tekstveld met een korte nadere specificatie van de het werk geidentificeerd door de normprijscode. Optioneel, C(35) -->
|
||||
<ShortDescription><xsl:value-of select="substring(normalize-space(omschrijving),1,35)"/></ShortDescription>
|
||||
<!-- SIDB - Tekstveld met een lange nadere specificatie van de het werk geidentificeerd door de normprijscode.. Optioneel, C(70) -->
|
||||
<LongDescription><xsl:value-of select="omschrijving"/></LongDescription>
|
||||
<!-- SIDB - Voor de rest optioneel, onderstaande gegevens nog niet bekend via Mareon -->
|
||||
|
||||
<!--
|
||||
<FreeText></FreeText>
|
||||
<PriceInformation>
|
||||
<Price></Price>
|
||||
<PriceBase>
|
||||
<NumberOfUnitsInPriceBasis></NumberOfUnitsInPriceBasis>
|
||||
<MeasureUnitPriceBasis></MeasureUnitPriceBasis>
|
||||
<PriceBaseDescription></PriceBaseDescription>
|
||||
</PriceBase>
|
||||
</PriceInformation>
|
||||
-->
|
||||
|
||||
</InstructionLine>
|
||||
</InstructionData>
|
||||
</MaintenanceInstruction>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="leverancier_nr">
|
||||
<!-- Lengte check: moet exact 13 tekens zijn. Indien anders, dan niet meesturen -->
|
||||
<xsl:if test="string-length(.) = 13">
|
||||
<xsl:value-of select="."/>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template match="facilitor">
|
||||
<xsl:apply-templates select="opdracht"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="/">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$mode='getExtension'">
|
||||
<xsl:element name="format">
|
||||
<xsl:element name="extension">xml</xsl:element>
|
||||
</xsl:element>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:apply-templates select="facilitor"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -1,151 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="xml" indent="yes" encoding="utf-8"/>
|
||||
|
||||
<xsl:decimal-format name="european" decimal-separator="," grouping-separator="."/>
|
||||
|
||||
<xsl:param name="mode"/>
|
||||
|
||||
<xsl:variable name="Rev">
|
||||
<!-- Revision -->
|
||||
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:template match="opdracht">
|
||||
<Order>
|
||||
<!-- Ordersoort: Code 220 = Order. Verplicht, C(3) -->
|
||||
<OrderType>220</OrderType>
|
||||
<!-- Purchase Ordernumber, toegekend door de zender van het bronbericht, ontvanger vermeldt dit nummer op pakbon en/of factuur. Verplicht, C(17)-->
|
||||
<OrderNumber><xsl:value-of select="opdr_id"/></OrderNumber>
|
||||
<!-- FSN#31496: Meldingnummer erbij (Provides) -->
|
||||
<!-- CallNumber (bestaat niet in SidB, hier toegevoegd -->
|
||||
<!-- Bedoeld voor system-2-system communicatie -->
|
||||
<!-- Meldingnummer in het bronsysteem, toegekend door de zender van het bronbericht, ontvanger zou bij OrderNumber kunnen relateren aan dit CallNumber -->
|
||||
<!-- 1 Callnumber kan 'n' OrderNumbers hebben, vanaf de 2e order bij een call kan ontvanger ervoor kiezen om dit te koppelen aan planning, beter gezegd geen expliciet planning -->
|
||||
<!-- Oftewel shortcut in proces: indien de 1e opdracht al is ingepland bij handyman 'X', dan kan in de systeemkoppeling ervoor worden gekozen om de 2e opdracht op dezelfde datum/dezelfde handyman in te plannen -->
|
||||
<CallNumber><xsl:value-of select="melding/externnr"/></CallNumber>
|
||||
<!-- OrderId (bestaat niet in SidB, hier toegevoegd -->
|
||||
<!-- Intern opdrachtnummer vanuit Broker/koppelsysteem (= Mareon), toegekend door de zender van het bericht, ontvanger vermeldt dit nummer op pakbon en/of factuur. Verplicht, C(17)-->
|
||||
<!-- Bedoeld voor system-2-system communicatie -->
|
||||
<OrderId><xsl:value-of select="melding/stdmelding/discipline/srtdiscipline/prefix"/><xsl:value-of select="melding/key"/>/<xsl:value-of select="bedrijfopdr_volgnr"/></OrderId>
|
||||
<!-- Opdrachtdatum, datum waarop de opdracht is aangemaakt, Verplicht, formaat YYYY-MM-DD -->
|
||||
<OrderDate><xsl:value-of select="datumbegin/jaar"/>-<xsl:value-of select="datumbegin/maand"/>-<xsl:value-of select="datumbegin/dag"/></OrderDate>
|
||||
<!-- Opdracht tijd, tijdstip waarop de opdracht is aangemaakt, Optioneel, formaat hh:mm -->
|
||||
<OrderTime><xsl:value-of select="datumbegin/tijd"/></OrderTime>
|
||||
<DeliveryDateTimeInformation>
|
||||
<!-- Datum waarop de opdracht uitgevoerd moet worden, Optioneel, formaat YYYY-MM-DD -->
|
||||
<RequiredDeliveryDate></RequiredDeliveryDate>
|
||||
<!-- Tijdstip waarop de opdracht uitgevoerd moet worden, Optioneel, formaat hh:mm -->
|
||||
<RequiredDeliveryTime></RequiredDeliveryTime>
|
||||
<!-- Levertijdvak, gegevens over periode waarbinnen opdracht uitgevoerd/geleverd kan worden, Optioneel -->
|
||||
<DeliveryTimeFrame>
|
||||
<!-- Datum vanaf wanneer de opdracht uitgevoerd kan worden, Verplicht, formaat YYYY-MM-DD -->
|
||||
<DeliveryDateEarliest><xsl:value-of select="datumbegin/jaar"/>-<xsl:value-of select="datumbegin/maand"/>-<xsl:value-of select="datumbegin/dag"/></DeliveryDateEarliest>
|
||||
<!-- Tijdstip op de vroegste leverdatum (datum vanaf wanneer de opdracht uitgevoerd kan worden), Verplicht, formaat hh:mm -->
|
||||
<DeliveryTimeEarliest><xsl:value-of select="datumbegin/tijd"/></DeliveryTimeEarliest>
|
||||
<!-- Datum tot en met wanneer de opdracht uitgevoerd kan worden, Verplicht, formaat YYYY-MM-DD -->
|
||||
<DeliveryDateLatest><xsl:value-of select="einddatum/jaar"/>-<xsl:value-of select="einddatum/maand"/>-<xsl:value-of select="einddatum/dag"/></DeliveryDateLatest>
|
||||
<!-- Tijdstip op de laatste leverdatum (datum tot en met wanneer de opdracht uitgevoerd kan worden), Verplicht, formaat hh:mm -->
|
||||
<!-- In Facilitor staat hier tijdstip 00:00 hetgeen betekent op deze dag, dit is in SidB 24:00 (t/m einde van de dag; 00:00 betekent begin van de dag, dus feitelijk de dag ervoor) -->
|
||||
<!-- Daarom hier 'hard' 24:00 en niet XML-node einddatum/tijd -->
|
||||
<DeliveryTimeLatest><xsl:value-of select="'24:00'"/></DeliveryTimeLatest>
|
||||
</DeliveryTimeFrame>
|
||||
</DeliveryDateTimeInformation>
|
||||
<!-- Afnemer, partij/bedrijf aan wie goederen en diensten worden verkocht en geleverd -->
|
||||
<Buyer>
|
||||
<!-- Global Location Number, wereldwijd unieke ID, Verplicht -->
|
||||
<GLN><xsl:value-of select="melding/voor/afdeling/bedrijf/leverancier_nr"/></GLN>
|
||||
<!-- Onderstaande NAW nodes zijn optioneel -->
|
||||
<Name></Name>
|
||||
<StreetAndNumber></StreetAndNumber>
|
||||
<City></City>
|
||||
<PostalCode></PostalCode>
|
||||
<Country></Country>
|
||||
<!-- Contactinformatie is optioneel -->
|
||||
<ContactInformation>
|
||||
<ContactPersonName></ContactPersonName>
|
||||
<EmailAddress></EmailAddress>
|
||||
</ContactInformation>
|
||||
</Buyer>
|
||||
<!-- Leverancier, partij/bedrijf die goederen en diensten verkoopt en levert -->
|
||||
<Supplier>
|
||||
<!-- Global Location Number, wereldwijd unieke ID, Verplicht -->
|
||||
<GLN><xsl:value-of select="uitvoerende/bedrijf/leverancier_nr"/></GLN>
|
||||
<!-- Onderstaande NAW nodes zijn optioneel -->
|
||||
<Name></Name>
|
||||
<StreetAndNumber></StreetAndNumber>
|
||||
<City></City>
|
||||
<PostalCode></PostalCode>
|
||||
<Country></Country>
|
||||
<!-- Contactinformatie is optioneel -->
|
||||
</Supplier>
|
||||
<!-- Afleveradres, lokatie waar de geoderen en diensten worden afgeleverd -->
|
||||
<DeliveryParty>
|
||||
<!-- Global Location Number, wereldwijd unieke ID, HIER Optioneel -->
|
||||
<!-- In deze node worden de huurder gegevens genoemd -->
|
||||
<GLN></GLN>
|
||||
<!-- Melding kenmerk key 1 is huurder -->
|
||||
<Name><xsl:value-of select="melding/kenmerk[@key='1']"/></Name>
|
||||
<Name2></Name2>
|
||||
<!-- Melding kenmerk key 2 is adres -->
|
||||
<StreetAndNumber><xsl:value-of select="melding/kenmerk[@key='2']"/></StreetAndNumber>
|
||||
<!-- Melding kenmerk key 4 is plaatsnaam -->
|
||||
<City><xsl:value-of select="melding/kenmerk[@key='4']"/></City>
|
||||
<!-- Melding kenmerk key 3 is postcode -->
|
||||
<PostalCode><xsl:value-of select="melding/kenmerk[@key='3']"/></PostalCode>
|
||||
<Country></Country>
|
||||
<!-- Melding kenmerk key 6 is objectomschrijving -->
|
||||
<LocationDescription><xsl:value-of select="melding/kenmerk[@key='6']"/></LocationDescription>
|
||||
<ContactInformation>
|
||||
<ContactPersonName><xsl:value-of select="melding/kenmerk[@key='1']"/></ContactPersonName>
|
||||
<!-- Melding kenmerk key 5 is telefoon van huurder -->
|
||||
<PhoneNumber><xsl:value-of select="melding/kenmerk[@key='5']"/></PhoneNumber>
|
||||
</ContactInformation>
|
||||
</DeliveryParty>
|
||||
<!-- Partij waaraan gefactureerd wordt, Optioneel-->
|
||||
<Invoicee>
|
||||
<GLN><xsl:value-of select="melding/voor/afdeling/bedrijf/leverancier_nr"/></GLN>
|
||||
</Invoicee>
|
||||
<!-- Specificatie van de goederen en diensten, Verplicht -->
|
||||
<OrderLine>
|
||||
<!-- Regelnummer ter identificatie van een regel, Verplicht -->
|
||||
<!-- Er is - tot nu toe - altijd 1 regelnummer binnen de opdracht, standaard dus 1 -->
|
||||
<LineNumber>1</LineNumber>
|
||||
<!-- Besteld aantal, zoals gevraagd door de afnemer/koper, Verplicht -->
|
||||
<OrderedQuantity>1</OrderedQuantity>
|
||||
<!-- Eenheid van besteld aantal, Optioneel, maar verplicht indien ongelijk aan stuks (=PCE) -->
|
||||
<OrderedQuantityMeasureUnitCode>PCE</OrderedQuantityMeasureUnitCode>
|
||||
<!-- Regelidentificatie (alweer?): de leverancier gebruikt dit nummer in de SidB orderbevestiging, - verzendberEenheid of - factuur ter referentie aan deze regel -->
|
||||
<!-- Lijkt op niet erg praktische toepassing, standaard ook 1 (net als LineNumber) maar -->
|
||||
<LineIdentitfication>1</LineIdentitfication>
|
||||
<!-- Gegevens ter identificatie van een artikel -->
|
||||
<TradeItemIdentification>
|
||||
<!-- Global Trade Item Numer, wereldwijd uniek nummer ter identificatie van artikel-->
|
||||
<GTIN></GTIN>
|
||||
<AdditionalItemIdentification>
|
||||
<!-- Tekstveld met een (eenduidige) omschrijving ter identificatie van het artikel-->
|
||||
<TradeItemDescription><xsl:value-of select="omschrijving"/></TradeItemDescription>
|
||||
</AdditionalItemIdentification>
|
||||
</TradeItemIdentification>
|
||||
</OrderLine>
|
||||
</Order>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="facilitor">
|
||||
<xsl:apply-templates select="opdracht"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="/">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$mode='getExtension'">
|
||||
<xsl:element name="format">
|
||||
<xsl:element name="extension">xml</xsl:element>
|
||||
</xsl:element>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:apply-templates select="facilitor"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -1,58 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="text" encoding="UTF-8"/>
|
||||
|
||||
|
||||
<xsl:template match="/">
|
||||
<xsl:comment>woconr;leveranciernr;factuurnr;factuurdatum;onderwerp;opdrachtnr;omschrijving;bedrag;btwperc;btwbedrag;btw_verlegd;document;iban;G_iban;G_bedrag</xsl:comment>
|
||||
<xsl:for-each select="Invoice">
|
||||
<xsl:for-each select="InvoiceLine">
|
||||
<xsl:value-of select="../Invoicee/GLN"/>;<xsl:value-of select="../Invoicer/GLN"/>;<xsl:value-of select="../InvoiceNumber"/>;<xsl:value-of select="../InvoiceDate"/>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="../FreeText"/></xsl:call-template>;<xsl:value-of select="../BuyersOrderNumber"/>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="FreeText"/></xsl:call-template>;<xsl:value-of select="NetLineAmount"/>;<xsl:apply-templates select="VATInformation"/>;<xsl:value-of select="../Attachment/FileName"/>;<xsl:value-of select="../Supplier/AccountInformation/IBAN"/>;<xsl:value-of select="../PaymentOnBlockedAccount/IBAN"/>;<xsl:value-of select="../PaymentOnBlockedAccount/Amount"/>; </xsl:for-each></xsl:for-each>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="VATInformation">
|
||||
<!-- Deze template levert het gedeelte [btwperc;btwbedrag;btw_verlegd] op -->
|
||||
<!-- Let even op: geen voorgaande ; en zeker ook geen ; op einde, dat gebeurt in de aanroepende regel (hierboven dus) -->
|
||||
<!-- Let op: btw bedrag wordt niet uit SidB uit de node InvoiceLine aangeboden, dus deze is hier altijd leeg. -->
|
||||
<xsl:choose>
|
||||
<xsl:when test="VATRate = 'E'">
|
||||
<!-- BTW verlegd = Ja, en neem BTW-percentage over uit XML, indien deze NIET(!) staat ingevuld (hoeft kennelijk niet in SidB/volgens wet, zet dan hard 21% hier in -->
|
||||
<xsl:choose>
|
||||
<xsl:when test="VATPercentage != ''"><xsl:value-of select="VATPercentage"/>;;Ja</xsl:when>
|
||||
<xsl:otherwise>21;;Ja</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:when>
|
||||
<!-- BTW verlegd = Nee (Vatrate is dan S), veld btw_verlegd in CSV gewoon leeg laten, en neem BTW-percentage over uit XML -->
|
||||
<xsl:otherwise><xsl:value-of select="VATPercentage"/>;;</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="vrije_tekst">
|
||||
<xsl:param name="p_string"/>
|
||||
<xsl:variable name="l_string_esc_quotes"><xsl:call-template name="escape_quote"><xsl:with-param name="string" select="$p_string"/></xsl:call-template></xsl:variable>
|
||||
<xsl:variable name="l_string_esc_linebreaks"><xsl:call-template name="escape_linebreaks"><xsl:with-param name="string" select="$l_string_esc_quotes"/></xsl:call-template></xsl:variable>"<xsl:value-of select="$l_string_esc_linebreaks"/>"</xsl:template>
|
||||
|
||||
<xsl:template name="escape_quote">
|
||||
<xsl:param name="string"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains($string, '"')"><xsl:value-of select="substring-before($string, '"')"/>""<xsl:call-template name="escape_quote">
|
||||
<xsl:with-param name="string" select="substring-after($string, '"')"/></xsl:call-template></xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="$string"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="escape_linebreaks">
|
||||
<xsl:param name="string"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains($string, '
')"><xsl:value-of select="substring-before($string, '
')"/>@@<xsl:call-template name="escape_linebreaks">
|
||||
<xsl:with-param name="string" select="substring-after($string, '
')"/>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="$string"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -1,92 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxml="urn:schemas-microsoft-com:xslt" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" version="1.0">
|
||||
<xsl:output method="xml" indent="yes" encoding="utf-8"/>
|
||||
<xsl:decimal-format name="european" decimal-separator="." grouping-separator=","/>
|
||||
<xsl:param name="mode"/>
|
||||
<xsl:variable name="Rev">
|
||||
<!-- Revision van deze cust.xsl -->
|
||||
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:template match="opdracht">
|
||||
<xsl:choose>
|
||||
<xsl:when test="@type='response'">
|
||||
<!-- ******************************************************************* -->
|
||||
<!-- ***** RESPONSE naar LEVERANCIER nav. opdracht-insert/update -->
|
||||
<!-- ***** => toevoegen envelop! -->
|
||||
<!-- ******************************************************************* -->
|
||||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
||||
<soap:Body>
|
||||
<facilitor>
|
||||
<xsl:element name="opdracht">
|
||||
<xsl:attribute name="key">MAR<xsl:value-of select="@key"/></xsl:attribute>
|
||||
<xsl:attribute name="type"><xsl:value-of select="@type"/></xsl:attribute>
|
||||
<returncode><xsl:value-of select="returncode"/></returncode>
|
||||
<returntekst><xsl:value-of select="returntekst"/></returntekst>
|
||||
<datum><xsl:value-of select="datum"/></datum>
|
||||
</xsl:element>
|
||||
</facilitor>
|
||||
</soap:Body>
|
||||
</soap:Envelope>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<!-- ******************************************************************* -->
|
||||
<!-- ***** INSERT/UPDATE door LEVERANCIER -->
|
||||
<!-- ***** => UPDATE 1-op-1 door! -->
|
||||
<!-- ******************************************************************* -->
|
||||
<!-- remove element prefix -->
|
||||
<xsl:element name="{local-name()}">
|
||||
<!-- process attributes -->
|
||||
<xsl:for-each select="@*">
|
||||
<!-- remove attribute prefix and 'MAR' from key-attribute! -->
|
||||
<xsl:attribute name="{local-name()}">
|
||||
<xsl:choose><xsl:when test="local-name()='key'"><xsl:value-of select="translate(., 'MAR', '')"/></xsl:when><xsl:otherwise><xsl:value-of select="."/></xsl:otherwise></xsl:choose>
|
||||
</xsl:attribute>
|
||||
</xsl:for-each>
|
||||
<xsl:apply-templates/>
|
||||
</xsl:element>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="facilitor">
|
||||
<xsl:apply-templates select="opdracht"/>
|
||||
</xsl:template>
|
||||
|
||||
<!--xsl:template match="soap:Body">
|
||||
<xsl:apply-templates select="facilitor"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="soap:Envelope">
|
||||
<xsl:apply-templates select="soap:Body"/>
|
||||
</xsl:template-->
|
||||
|
||||
<!-- Root -->
|
||||
<xsl:template match="*">
|
||||
<xsl:choose>
|
||||
<!-- Zonder prefix en facilitor-node, dan -->
|
||||
<!-- als response: toevoegen envelop! -->
|
||||
<!-- als update: 1-op-1 door! -->
|
||||
<xsl:when test="substring-before(name(),concat(':', local-name()))='' and local-name()='facilitor'">
|
||||
<xsl:apply-templates select="facilitor"/>
|
||||
</xsl:when>
|
||||
<!--xsl:when test="local-name()='Envelope'">
|
||||
<xsl:apply-templates select="soap:Envelope"/>
|
||||
</xsl:when-->
|
||||
<!-- Met prefix, dus insert/update: prefix weg + evt. velden "injecteren"! -->
|
||||
<xsl:otherwise>
|
||||
<!-- remove element prefix -->
|
||||
<xsl:element name="{local-name()}">
|
||||
<!-- process attributes -->
|
||||
<xsl:for-each select="@*">
|
||||
<!-- remove attribute prefix and 'MAR' from key-attribute! -->
|
||||
<xsl:attribute name="{local-name()}">
|
||||
<xsl:choose><xsl:when test="local-name()='key'"><xsl:value-of select="translate(., 'MAR', '')"/></xsl:when><xsl:otherwise><xsl:value-of select="."/></xsl:otherwise></xsl:choose>
|
||||
</xsl:attribute>
|
||||
</xsl:for-each>
|
||||
<xsl:apply-templates/>
|
||||
</xsl:element>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
@@ -1,147 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxml="urn:schemas-microsoft-com:xslt" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" version="1.0">
|
||||
<xsl:output method="xml" indent="yes" encoding="utf-8"/>
|
||||
<xsl:decimal-format name="european" decimal-separator="." grouping-separator=","/>
|
||||
<xsl:param name="mode"/>
|
||||
<xsl:variable name="Rev">
|
||||
<!-- Revision van deze cust.xsl -->
|
||||
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:template match="opdracht">
|
||||
<xsl:choose>
|
||||
<xsl:when test="@type='response'">
|
||||
<!-- ******************************************************************* -->
|
||||
<!-- ***** RESPONSE naar LEVERANCIER nav. opdracht-insert/update -->
|
||||
<!-- ***** => toevoegen envelop! -->
|
||||
<!-- ******************************************************************* -->
|
||||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
||||
<soap:Body>
|
||||
<facilitor>
|
||||
<xsl:element name="opdracht">
|
||||
<xsl:attribute name="key">MAR<xsl:value-of select="@key"/></xsl:attribute>
|
||||
<xsl:attribute name="type"><xsl:value-of select="@type"/></xsl:attribute>
|
||||
<returncode><xsl:value-of select="returncode"/></returncode>
|
||||
<returntekst><xsl:value-of select="returntekst"/></returntekst>
|
||||
<datum><xsl:value-of select="datum"/></datum>
|
||||
</xsl:element>
|
||||
</facilitor>
|
||||
</soap:Body>
|
||||
</soap:Envelope>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<!-- ******************************************************************* -->
|
||||
<!-- ***** INSERT/UPDATE door LEVERANCIER -->
|
||||
<!-- ***** => UPDATE 1-op-1 door! -->
|
||||
<!-- ******************************************************************* -->
|
||||
<!-- remove element prefix -->
|
||||
<xsl:element name="{local-name()}">
|
||||
<!-- process attributes -->
|
||||
<xsl:for-each select="@*">
|
||||
<!-- remove attribute prefix and 'MAR' from key-attribute! -->
|
||||
<xsl:attribute name="{local-name()}">
|
||||
<xsl:choose><xsl:when test="local-name()='key'"><xsl:value-of select="translate(., 'MAR', '')"/></xsl:when><xsl:otherwise><xsl:value-of select="."/></xsl:otherwise></xsl:choose>
|
||||
</xsl:attribute>
|
||||
</xsl:for-each>
|
||||
<xsl:apply-templates/>
|
||||
</xsl:element>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="facilitor">
|
||||
<xsl:apply-templates select="opdracht"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="MaintenanceStatus">
|
||||
<facilitor>
|
||||
<xsl:element name="opdracht">
|
||||
<xsl:attribute name="key"><xsl:value-of select="translate(InstructionData/InstructionNumber, 'MAR', '')"/></xsl:attribute>
|
||||
<xsl:attribute name="type">update</xsl:attribute>
|
||||
<status><xsl:apply-templates select="InstructionData/Status"/></status>
|
||||
<!-- Plandatum en tijd van opdracht -->
|
||||
<plandatum><xsl:value-of select="InstructionData/CompletionDateTimeInformation/ScheduledDeliveryDate"/><xsl:text> </xsl:text><xsl:value-of select="InstructionData/CompletionDateTimeInformation/ScheduledDeliveryTime"/></plandatum>
|
||||
<!-- Afwijkende gereeddatum (<> SYSDATE) kan via mut_datum, de werking is wel afhankelijk van -->
|
||||
<xsl:if test="InstructionData/Status = 'GER'">
|
||||
<mut_datum><xsl:apply-templates select="InstructionData/DateReady"/></mut_datum>
|
||||
</xsl:if>
|
||||
<opmerking><xsl:apply-templates select="InstructionData/StatusDescription"/></opmerking>
|
||||
</xsl:element>
|
||||
</facilitor>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="Status">
|
||||
<!-- In SidB zijn de volgende statussen mogelijk: -->
|
||||
<!-- CODE OMSCHRIJVING -->
|
||||
<!-- AFM Afwachten, mail gestuurd -->
|
||||
<!-- AFR Afwachten, reactie opzichter -->
|
||||
<!-- AFW Afwachten in verband met weer -->
|
||||
<!-- ANN Opdracht geannuleerd -->
|
||||
<!-- BBT Bewoner belt terug -->
|
||||
<!-- GER Gereedmelding -->
|
||||
<!-- VER Verlenging -->
|
||||
<xsl:choose>
|
||||
<xsl:when test=".='GER'">ORDAFM</xsl:when>
|
||||
<xsl:when test=".='ANN'">ORDCAN</xsl:when>
|
||||
<!-- FSN#31934: geen (optionele) expliciete acceptatie door de leverancier totdat SidB dat ondersteunt. -->
|
||||
<!-- <xsl:otherwise>ORDACP</xsl:otherwise> -->
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="StatusDescription">
|
||||
<xsl:value-of select="."/>
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:for-each select="../FreeText">
|
||||
<xsl:value-of select="."/>
|
||||
</xsl:for-each>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="DateReady">
|
||||
<!-- Formaat DateReady is niet eenduidig volgens SidB specs, kan zijn CCYYMMDD of YYYY-MM-DD -->
|
||||
<!-- Vanwege deze onduidelijkheid gewoon maar beide formaten ondersteunen ... -->
|
||||
<!-- ... door eerst eventuele streepjes - te verwijderen, daarna gewoon weer toevoegen, dan is het formaat altijd YYYY-MM-DD -->
|
||||
<!-- Eerst streepjes weg, dus altijd formaat YYYYMMDD -->
|
||||
<xsl:variable name="l_afmeld_datum" select="translate(.,'-','')"/>
|
||||
<xsl:value-of select="substring($l_afmeld_datum,1,4)"/>-<xsl:value-of select="substring($l_afmeld_datum,5,2)"/>-<xsl:value-of select="substring($l_afmeld_datum,7,2)"/>
|
||||
</xsl:template>
|
||||
|
||||
<!--xsl:template match="soap:Body">
|
||||
<xsl:apply-templates select="facilitor"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="soap:Envelope">
|
||||
<xsl:apply-templates select="soap:Body"/>
|
||||
</xsl:template-->
|
||||
|
||||
<!-- Root -->
|
||||
<xsl:template match="*">
|
||||
<xsl:choose>
|
||||
<!-- Zonder prefix en facilitor-node, dan -->
|
||||
<!-- als response: toevoegen envelop! -->
|
||||
<!-- als update: 1-op-1 door! -->
|
||||
<xsl:when test="substring-before(name(),concat(':', local-name()))='' and local-name()='facilitor'">
|
||||
<xsl:apply-templates select="facilitor"/>
|
||||
</xsl:when>
|
||||
<xsl:when test="substring-before(name(),concat(':', local-name()))='' and local-name()='MaintenanceStatus'">
|
||||
<xsl:apply-templates select="MaintenanceStatus"/>
|
||||
</xsl:when>
|
||||
<!--xsl:when test="local-name()='Envelope'">
|
||||
<xsl:apply-templates select="soap:Envelope"/>
|
||||
</xsl:when-->
|
||||
<!-- Met prefix, dus insert/update: prefix weg + evt. velden "injecteren"! -->
|
||||
<xsl:otherwise>
|
||||
<!-- remove element prefix -->
|
||||
<xsl:element name="{local-name()}">
|
||||
<!-- process attributes -->
|
||||
<xsl:for-each select="@*">
|
||||
<!-- remove attribute prefix and 'MAR' from key-attribute! -->
|
||||
<xsl:attribute name="{local-name()}">
|
||||
<xsl:choose><xsl:when test="local-name()='key'"><xsl:value-of select="translate(., 'MAR', '')"/></xsl:when><xsl:otherwise><xsl:value-of select="."/></xsl:otherwise></xsl:choose>
|
||||
</xsl:attribute>
|
||||
</xsl:for-each>
|
||||
<xsl:apply-templates/>
|
||||
</xsl:element>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
@@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:output method="text" encoding="UTF-8"/>
|
||||
|
||||
<xsl:template match="/">axsync_mode
|
||||
<xsl:value-of select="axsync/mode"/>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -1,44 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
|
||||
version="1.0">
|
||||
<xsl:output method="text" encoding="UTF-8"/>
|
||||
|
||||
|
||||
<xsl:template match="/">
|
||||
<xsl:apply-templates select="soap:Envelope/soap:Body"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="soap:Body">ax_supplier_id;mld_melding_externnr;mld_melding_omschrijving;prs_afdeling_externnr;mld_melding_cust_name;mld_melding_cust_straat;mld_melding_cust_huisnr;mld_melding_cust_huisnr2;mld_melding_cust_postcode;mld_melding_cust_plaats;mld_melding_cust_telefoonnr;mld_melding_cust_object_omschr;mld_melding_memo;mld_opdr_externnr;mld_opdr_ordernr;mld_opdr_datumbegin;mld_opdr_einddatum
|
||||
<xsl:for-each select="descendant::*/Bon"><xsl:value-of select="CrediteurNummer"/>;<xsl:value-of select="BonNummer"/>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="BonOmschrijving"/></xsl:call-template>;1;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="HuurderNaam"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="StraatNaam"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="HuisNummer"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Toevoegsel"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Postcode"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Woonplaats"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="Telefoon"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="xxx_objectDescription"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="xxx_memo"/></xsl:call-template>;<xsl:call-template name="vrije_tekst"><xsl:with-param name="p_string" select="concat(BonNummer,'.',BonVolgNummer)"/></xsl:call-template>;<xsl:value-of select="BonId"/>;<xsl:value-of select="substring(BonDatumOpdracht,1,10)"/>;<xsl:value-of select="substring(UitersteDatumGereed,1,10)"/>; </xsl:for-each>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="vrije_tekst">
|
||||
<xsl:param name="p_string"/>
|
||||
<xsl:variable name="l_string_esc_quotes"><xsl:call-template name="escape_quote"><xsl:with-param name="string" select="$p_string"/></xsl:call-template></xsl:variable>
|
||||
<xsl:variable name="l_string_esc_linebreaks"><xsl:call-template name="escape_linebreaks"><xsl:with-param name="string" select="$l_string_esc_quotes"/></xsl:call-template></xsl:variable>"<xsl:value-of select="$l_string_esc_linebreaks"/>"</xsl:template>
|
||||
|
||||
<xsl:template name="escape_quote">
|
||||
<xsl:param name="string"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains($string, '"')"><xsl:value-of select="substring-before($string, '"')"/>""<xsl:call-template name="escape_quote">
|
||||
<xsl:with-param name="string" select="substring-after($string, '"')"/></xsl:call-template></xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="$string"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="escape_linebreaks">
|
||||
<xsl:param name="string"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains($string, '
')"><xsl:value-of select="substring-before($string, '
')"/>@@<xsl:call-template name="escape_linebreaks">
|
||||
<xsl:with-param name="string" select="substring-after($string, '
')"/>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="$string"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -1,8 +0,0 @@
|
||||
<?xml version='1.0'?>
|
||||
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
|
||||
<!-- Bij afwijking van de standaard Root-URL (uit default.xsl), kan hier een overrule plaatsvinden -->
|
||||
|
||||
<!-- <xsl:variable name="FacilitorRoot">https://<xsl:value-of select="//header/custId"/>.facilitorlabs.nl</xsl:variable> -->
|
||||
|
||||
</xsl:stylesheet>
|
||||
@@ -1,244 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
<xsl:import href="./environment.xsl"/>
|
||||
<xsl:variable name="Rev">
|
||||
<!-- Revision van deze cust.xsl -->
|
||||
<xsl:value-of select="substring(translate('$Revision$', '$ ', ''), 10)"/>
|
||||
</xsl:variable>
|
||||
|
||||
|
||||
<xsl:template match="opdracht" mode="include">
|
||||
|
||||
|
||||
<table border="0" width="100%" cellpadding="2">
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
<td colspan="2" class="caption" style="padding-top:20px;padding-bottom:20px">
|
||||
<b>
|
||||
<xsl:value-of select="opdrachttype/omschrijving"/> 
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="href"><xsl:value-of select="$FacilitorRoot"/>/?<xsl:value-of select="../bookmarks/opdracht"/><xsl:value-of select="key"/></xsl:attribute>
|
||||
<xsl:value-of select="melding/stdmelding/discipline/srtdiscipline/prefix"/>
|
||||
<xsl:value-of select="melding/key"/>/<xsl:value-of select="bedrijfopdr_volgnr"/>
|
||||
</xsl:element>
|
||||
</b>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td colspan="4" height="10px" valign="center">
|
||||
<hr/>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td colspan="4" style="font-size:20px"><b><xsl:value-of select="melding/voor/afdeling/bedrijf/naam"/></b></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><b>Post<xsl:value-of select="//lcl/FAC/adres"/>: </b></td>
|
||||
<td><xsl:value-of select="melding/voor/afdeling/bedrijf/post_adres"/></td>
|
||||
<td><b>Bezoek<xsl:value-of select="//lcl/FAC/adres"/>: </b></td>
|
||||
<td><xsl:value-of select="melding/voor/afdeling/bedrijf/bezoek_adres"/></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td/>
|
||||
<td><xsl:value-of select="melding/voor/afdeling/bedrijf/post_postcode"/>  <xsl:value-of select="melding/voor/afdeling/bedrijf/post_plaats"/></td>
|
||||
<td/>
|
||||
<td><xsl:value-of select="melding/voor/afdeling/bedrijf/bezoek_postcode"/>  <xsl:value-of select="melding/voor/afdeling/bedrijf/bezoek_plaats"/></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><b><xsl:value-of select="//lcl/FAC/telefoon"/>: </b></td>
|
||||
<td><xsl:value-of select="melding/voor/afdeling/bedrijf/telefoon"/></td>
|
||||
<td><b>Fax: </b></td>
|
||||
<td><xsl:value-of select="melding/voor/afdeling/bedrijf/fax"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><xsl:value-of select="//lcl/FAC/e-mail"/>: </b></td>
|
||||
<td><xsl:value-of select="melding/voor/afdeling/bedrijf/email"/></td>
|
||||
<td colspan="2"/>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td colspan="4" height="10px" valign="center">
|
||||
<hr/>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
<tr>
|
||||
<td colspan="4" style="font-size:20px"><b><xsl:value-of select="uitvoerende/bedrijf/naam"/></b>    <span style="font-size:9px">(<b>GLN</b>: <xsl:value-of select="uitvoerende/bedrijf/leverancier_nr"/>)</span></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><b>Post<xsl:value-of select="//lcl/FAC/adres"/>: </b></td>
|
||||
<td><xsl:value-of select="uitvoerende/bedrijf/post_adres"/></td>
|
||||
<td><b>Bezoek<xsl:value-of select="//lcl/FAC/adres"/>: </b></td>
|
||||
<td><xsl:value-of select="uitvoerende/bedrijf/bezoek_adres"/></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td/>
|
||||
<td><xsl:value-of select="uitvoerende/bedrijf/post_postcode"/>  <xsl:value-of select="uitvoerende/bedrijf/post_plaats"/></td>
|
||||
<td/>
|
||||
<td><xsl:value-of select="uitvoerende/bedrijf/bezoek_postcode"/>  <xsl:value-of select="uitvoerende/bedrijf/bezoek_plaats"/></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><b><xsl:value-of select="//lcl/FAC/telefoon"/>: </b></td>
|
||||
<td><xsl:value-of select="uitvoerende/bedrijf/telefoon"/></td>
|
||||
<td><b>Fax: </b></td>
|
||||
<td><xsl:value-of select="uitvoerende/bedrijf/fax"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><xsl:value-of select="//lcl/FAC/e-mail"/>: </b></td>
|
||||
<td><xsl:value-of select="uitvoerende/bedrijf/email"/></td>
|
||||
<td colspan="2"/>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td colspan="4" height="10px" valign="center">
|
||||
<hr/>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td colspan="4" style="font-size:20px"><b>Opdrachtgegevens</b></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td colspan="2" style="font-size:14px"><b>MAREON NUMMER: </b>
|
||||
<xsl:value-of select="melding/stdmelding/discipline/srtdiscipline/prefix"/>
|
||||
<xsl:value-of select="melding/key"/>/<xsl:value-of select="bedrijfopdr_volgnr"/></td>
|
||||
<td colspan="2" style="font-size:14px"><b>TOBIAS NUMMER: </b> <xsl:value-of select="opdr_id"/></td>
|
||||
</tr>
|
||||
|
||||
|
||||
<tr>
|
||||
<td><b>Status: </b></td>
|
||||
<td><xsl:value-of select="status"/></td>
|
||||
<td colspan="2"/>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Opdrachtdatum: </b></td>
|
||||
<td><xsl:value-of select="datumbegin/datum"/></td>
|
||||
<td><b>Uitvoeren voor: </b></td>
|
||||
<td><xsl:value-of select="einddatum/datum"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Plandatum / tijd: </b></td>
|
||||
<td><xsl:value-of select="plandatum/datum"/> <xsl:value-of select="plandatum/tijd"/></td>
|
||||
<td colspan="2"/>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td colspan="4" height="10px" valign="center">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<xsl:for-each select="melding/kenmerk[@type!='L' and @type!='l' and @type!='Q' and count(@xmlnode)=0]">
|
||||
<xsl:sort select="@volgnummer" data-type="number"/>
|
||||
<xsl:if test=".!=''">
|
||||
<tr>
|
||||
<td align="right">
|
||||
<b>
|
||||
<xsl:value-of select="@naam"/>:</b>
|
||||
</td>
|
||||
<td colspan="3">
|
||||
<xsl:value-of select="."/>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:if>
|
||||
</xsl:for-each>
|
||||
|
||||
<tr>
|
||||
<td align="right" valign="top">
|
||||
<b><xsl:value-of select="//lcl/FAC/omschrijving"/>:</b>
|
||||
</td>
|
||||
<td align="left" colspan="3">
|
||||
<xsl:call-template name="linebreaks">
|
||||
<xsl:with-param name="string" select="omschrijving"/>
|
||||
</xsl:call-template>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td align="right" valign="top">
|
||||
<b><xsl:value-of select="//lcl/FAC/opmerking"/>:</b>
|
||||
</td>
|
||||
<td align="left" colspan="3">
|
||||
<xsl:call-template name="linebreaks">
|
||||
<xsl:with-param name="string" select="opmerking"/>
|
||||
</xsl:call-template>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td colspan="4" height="10px" valign="center">
|
||||
<hr/>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<xsl:variable name="arbeid" select="uren*uurloon"/>
|
||||
<xsl:variable name="correctie0" select="$arbeid + materiaal"/>
|
||||
<xsl:variable name="correctie" select="kosten - $correctie0"/>
|
||||
<tr>
|
||||
<td/>
|
||||
<td style="text-align:right">
|
||||
<b><xsl:value-of select="//lcl/FAC/totaal"/> (excl. BTW):</b>
|
||||
</td>
|
||||
<td style="width:1in;text-align:right">
|
||||
<b>€ <xsl:value-of select="format-number(kosten, '0,00', 'european')"/></b>
|
||||
</td>
|
||||
<td/>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="4" height="10px" valign="center">
|
||||
<hr/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="5" style="text-align:left; font-size:9px; color:red">
|
||||
<xsl:call-template name="escape_marnr_tobiasnr"><xsl:with-param name="string" select="melding/voor/afdeling/bedrijf/opmerking2"/></xsl:call-template>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="5" style="text-align:left; font-size:9px">
|
||||
<xsl:value-of select="melding/voor/afdeling/bedrijf/opmerking"/>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="escape_marnr_tobiasnr">
|
||||
<xsl:param name="string"/>
|
||||
<xsl:variable name="l_marnr" select="'MAR###'"/>
|
||||
<xsl:variable name="l_tobiasnr" select="'TOBIAS###'"/>
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains($string, $l_marnr)">
|
||||
<xsl:value-of select="substring-before($string, $l_marnr)"/>
|
||||
<xsl:value-of select="melding/stdmelding/discipline/srtdiscipline/prefix"/><xsl:value-of select="melding/key"/>/<xsl:value-of select="bedrijfopdr_volgnr"/>
|
||||
<xsl:call-template name="escape_marnr_tobiasnr">
|
||||
<xsl:with-param name="string" select="substring-after($string, $l_marnr)"/>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:when test="contains($string, $l_tobiasnr)">
|
||||
<xsl:value-of select="substring-before($string, $l_tobiasnr)"/>
|
||||
<xsl:value-of select="opdr_id"/>
|
||||
<xsl:call-template name="escape_marnr_tobiasnr">
|
||||
<xsl:with-param name="string" select="substring-after($string, $l_tobiasnr)"/>
|
||||
</xsl:call-template>
|
||||
</xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="$string"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
|
||||
|
||||
</xsl:stylesheet>
|
||||
Reference in New Issue
Block a user