Gebeurt nu in cust/marx

svn path=/Website/trunk/; revision=32124
This commit is contained in:
Peter Feij
2016-12-22 14:36:52 +00:00
parent 45e1bdd66e
commit 155416a461
19 changed files with 0 additions and 1703 deletions

0
APPL/MAR/.gitignore vendored Normal file
View File

View File

@@ -1,7 +0,0 @@
<html>
<head>
</head>
<body>
</body>
</html>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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

View File

@@ -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"/>;&#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, '&quot;')"><xsl:value-of select="substring-before($string, '&quot;')"/>&quot;&quot;<xsl:call-template name="escape_quote">
<xsl:with-param name="string" select="substring-after($string, '&quot;')"/></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, '&#xA;')"><xsl:value-of select="substring-before($string, '&#xA;')"/>@@<xsl:call-template name="escape_linebreaks">
<xsl:with-param name="string" select="substring-after($string, '&#xA;')"/>
</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>

View File

@@ -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>;&#10;</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, '&#xA;')">
<xsl:value-of select="substring-before($string, '&#xA;')"/>
<br/>
<xsl:call-template name="linebreaks">
<xsl:with-param name="string" select="substring-after($string, '&#xA;')"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$string"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>

View File

@@ -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"/>;&#10;</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, '&quot;')"><xsl:value-of select="substring-before($string, '&quot;')"/>&quot;&quot;<xsl:call-template name="escape_quote">
<xsl:with-param name="string" select="substring-after($string, '&quot;')"/></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, '&#xA;')"><xsl:value-of select="substring-before($string, '&#xA;')"/>@@<xsl:call-template name="escape_linebreaks">
<xsl:with-param name="string" select="substring-after($string, '&#xA;')"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise><xsl:value-of select="$string"/></xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>

View File

@@ -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>

View File

@@ -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>&#10;</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>

View File

@@ -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>

View File

@@ -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)"/>;&#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, '&quot;')"><xsl:value-of select="substring-before($string, '&quot;')"/>&quot;&quot;<xsl:call-template name="escape_quote">
<xsl:with-param name="string" select="substring-after($string, '&quot;')"/></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, '&#xA;')"><xsl:value-of select="substring-before($string, '&#xA;')"/>@@<xsl:call-template name="escape_linebreaks">
<xsl:with-param name="string" select="substring-after($string, '&#xA;')"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise><xsl:value-of select="$string"/></xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>

View File

@@ -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>

View File

@@ -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"/>&#160;
<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"/>&#160;&#160;<xsl:value-of select="melding/voor/afdeling/bedrijf/post_plaats"/></td>
<td/>
<td><xsl:value-of select="melding/voor/afdeling/bedrijf/bezoek_postcode"/>&#160;&#160;<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>&#160;&#160;&#160;&#160;<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"/>&#160;&#160;<xsl:value-of select="uitvoerende/bedrijf/post_plaats"/></td>
<td/>
<td><xsl:value-of select="uitvoerende/bedrijf/bezoek_postcode"/>&#160;&#160;<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"/>&#160;<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>&#x20AC;&#xA0;<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>