--- /dev/null
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE xsl:stylesheet [
+<!ENTITY nbsp " ">
+]>
+<xsl:transform
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:n="http://www.minefi.gouv.fr/cp/helios/pes_v2/erar/r0/restit"
+ xmlns:added="http://projets.admisource.gouv.fr/xemelios/namespaces#added"
+ xmlns:ano="http://projets.admisource.gouv.fr/xemelios/namespaces#anomally"
+ xmlns:data="data.uri"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:date="http://projets.admisource.gouv.fr/xemelios/namespaces#extend"
+ version="2.0">
+ <xsl:character-map name="accents">
+ <xsl:output-character character="à" string="&#224;"/>
+ <xsl:output-character character="é" string="&#233;"/>
+ <xsl:output-character character="è" string="&#232;"/>
+ <xsl:output-character character="ê" string="&#234;"/>
+ <xsl:output-character character="ë" string="&#235;"/>
+ <xsl:output-character character="î" string="&#238;"/>
+ <xsl:output-character character="ï" string="&#239;"/>
+ <xsl:output-character character="ô" string="&#244;"/>
+ <xsl:output-character character="ù" string="&#249;"/>
+ <xsl:output-character character="À" string="&#192;"/>
+ <xsl:output-character character="Á" string="&#193;"/>
+ <xsl:output-character character="Â" string="&#194;"/>
+ <xsl:output-character character="Ã" string="&#195;"/>
+ <xsl:output-character character="Ä" string="&#196;"/>
+ <xsl:output-character character="Å" string="&#197;"/>
+ <xsl:output-character character="Æ" string="&#198;"/>
+ <xsl:output-character character="È" string="&#200;"/>
+ <xsl:output-character character="É" string="&#201;"/>
+ </xsl:character-map>
+
+ <xsl:param name="encoding" select="iso-8859-1"/>
+ <xsl:param name="repository" select="document(.)"/>
+ <xsl:param name="browser-destination"/>
+ <xsl:param name="language" select="'fr'"/>
+ <xsl:param name="collectivite"/>
+ <xsl:param name="budget"/>
+ <xsl:param name="collectivite-lib"/>
+ <xsl:param name="budget-lib"/>
+
+ <xsl:output method="xhtml" indent="yes" use-character-maps="accents" encoding="ISO-8859-1"/>
+
+
+ <xsl:decimal-format name="decformat" decimal-separator="," grouping-separator=" " digit="#" pattern-separator=";" NaN="NaN" minus-sign="-"> </xsl:decimal-format>
+
+ <xsl:variable name="data">
+ <data xmlns="data.uri">
+ <mois xml:lang="fr">
+ <m>Janvier</m>
+ <m>Février</m>
+ <m>Mars</m>
+ <m>Avril</m>
+ <m>Mai</m>
+ <m>Juin</m>
+ <m>Juillet</m>
+ <m>Août</m>
+ <m>Septembre</m>
+ <m>Octobre</m>
+ <m>Novembre</m>
+ <m>Décembre</m>
+ </mois>
+ </data>
+ </xsl:variable>
+
+ <xsl:variable name="nomenclature">
+ <CatTiers>
+ <desc code="01">Personne physique</desc>
+ <desc code="02">Personne morale de droit privé</desc>
+ <desc code="03">Personne morale de droit public</desc>
+ <desc code="04">Inconnu</desc>
+ </CatTiers>
+ <NatJur>
+ <desc code="00">Inconnue</desc>
+ <desc code="01">Particulier</desc>
+ <desc code="02">Artisan comm. agric.</desc>
+ <desc code="03">Société</desc>
+ <desc code="04">Caisse assur. mal.</desc>
+ <desc code="05">Caisse complém.</desc>
+ <desc code="06">Association</desc>
+ <desc code="07">État ou org. état</desc>
+ <desc code="08">Etab. public nat.</desc>
+ <desc code="09">Collect. territor.</desc>
+ <desc code="10">Autres Etab. Pub, Etat étr.,am</desc>
+ <desc code="11">Caisse alloc. fam.</desc>
+ </NatJur>
+ <EtatEtape>
+ <desc code="0">Rien</desc>
+ <desc code="1">Courante</desc>
+ <desc code="3">Passée</desc>
+ <desc code="4">Possible</desc>
+ <desc code="5">A faire</desc>
+ <desc code="6">Annulée</desc>
+ </EtatEtape>
+ <CodeEtape>
+ <desc code="00">Avis somme à payer</desc>
+ <desc code="01">Lettre de rappel</desc>
+ <desc code="02">CDT</desc>
+ <desc code="03">Mise en demeurre</desc>
+ <desc code="04">Saisie attribution</desc>
+ <desc code="05">Saisie attribution CAF</desc>
+ <desc code="06">Saisie vente</desc>
+ <desc code="07">Saisie rémunération</desc>
+ <desc code="08">Vente</desc>
+ <desc code="09">Poursuites extérieures</desc>
+ <desc code="10">Saisie des coffres-forts</desc>
+ <desc code="11">Saisie des véhicules à moteur</desc>
+ <desc code="12">Saisie des valeurs mobilières de placement et autres biens d'associés</desc>
+ <desc code="13">Autorisation commandement</desc>
+ <desc code="14">Autorisation saisie</desc>
+ <desc code="15">Avis avant état de poursuites extérieures</desc>
+ <desc code="16">Phase comminatoire</desc>
+ <desc code="17">OTD Employeur</desc>
+ <desc code="18">OTD Bancaire</desc>
+ <desc code="19">OTD Autres tiers</desc>
+ </CodeEtape>
+ <EtatValidation>
+ <desc code="0">Rien</desc>
+ <desc code="1">Proposition validation</desc>
+ <desc code="2">Valide</desc>
+ <desc code="3">Aucun</desc>
+ </EtatValidation>
+ <OrigineEtape>
+ <desc code="1">Automate</desc>
+ <desc code="2">Validation</desc>
+ <desc code="3">Action individuelle</desc>
+ </OrigineEtape>
+ <CodeActu>
+ <desc code="01">Acte édité</desc>
+ <desc code="02">Acte notifié</desc>
+ <desc code="03">Acte signifié par huissier, agent de poursuites</desc>
+ <desc code="04">Acte retourné</desc>
+ <desc code="05">Acte interrompu</desc>
+ <desc code="06">Acte exécuté</desc>
+ <desc code="07">Acte transmis pour autorisation de poursuites</desc>
+ <desc code="08">Autorisation de poursuites accordée</desc>
+ <desc code="09">Autorisation de poursuites refusée</desc>
+ <desc code="10">Acte soumis au visa ordonnateur</desc>
+ <desc code="11">Acte soldé</desc>
+ </CodeActu>
+ <TypTiers>
+ <desc code="01">Débiteur principal</desc>
+ <desc code="02">Débiteur appliquant des règles particulières et pouvant assumer la totalité des frais de séjour</desc>
+ <desc code="03">Débiteur solidaire</desc>
+ <desc code="04">Co-débiteur</desc>
+ <desc code="05">Employeur</desc>
+ <desc code="06">Malade</desc>
+ <desc code="07">Assuré</desc>
+ </TypTiers>
+ <NatIdTiers>
+ <desc code="01">Siret</desc>
+ <desc code="02">Siren</desc>
+ <desc code="03">Finess</desc>
+ <desc code="04">NIR</desc>
+ </NatIdTiers>
+ <TypeRef>
+ <desc code="00">Bordereau</desc>
+ <desc code="01">Rôle</desc>
+ </TypeRef>
+ <TypAdr>
+ <desc code="0">Non précisé</desc>
+ <desc code="1">Principale</desc>
+ <desc code="2">Secondaire</desc>
+ </TypAdr>
+ </xsl:variable>
+
+ <xsl:template match="/n:PosteComptable">
+ <html>
+ <head>
+ <title>Reste à recouvrer</title>
+ <style type="text/css" media="all">
+ @page portrait { size: 210mm 297mm ; margin 1cm; }
+ body { font-family: arial; font-size: 10px; }
+ div { font-family: arial; font-size: 10px; }
+ .divtitle { width: 100%; background-color: #CCCCCC; color: #000000; text-align: left; font-size: 16px; font-weight: bold; top: 0px; left: 0px; }
+ .warning { color: red; font-weight: bold; }
+ .titre { font-weight: bold; }
+ .whiteLine { background-color: #FFFFFF; }
+ .darkLine { background-color: #EEEEEE; }
+ .noborder { border-style: none; border-width: 0px; cellpadding: 1px; width: 5cm;}
+ div#piecerecouvrement { border: black solid 1px; position: relative; left: 0; top: 0cm; width: 19cm; margin: 2px; }
+ .tdtop { vertical-align: top; }
+ .border { border: black solid 1px; }
+ .tdheader { border: black solid 1px; vertical-align: top; }
+ </style>
+ </head>
+ <body style="@page:portrait; ">
+ <table style="border: none; cellpadding: 0px; cellspacing: 0px; " width="100%">
+ <colgroup>
+ <col width="33%"/>
+ <col width="33%"/>
+ <col width="34%"/>
+ </colgroup>
+ <tr>
+ <td class="tdheader"><xsl:call-template name="poste"><xsl:with-param name="entete" select="."/></xsl:call-template></td>
+ <td class="tdheader"><xsl:call-template name="debiteur"><xsl:with-param name="deb" select="n:Piece/n:LigneERAR/n:Debiteur"/></xsl:call-template></td>
+ <td rowspan="2" class="tdheader"><xsl:if test="exists(n:Piece/n:LigneERAR/@MtPrincipal)"><xsl:call-template name="RefCompta"><xsl:with-param name="ref" select="n:Piece"/><xsl:with-param name="mt.princ" select="n:Piece/n:LigneERAR/@MtPrincipal"/><xsl:with-param name="mt.frais" select="n:Piece/n:LigneERAR/@MtFrais"/></xsl:call-template></xsl:if></td>
+ </tr>
+ <tr>
+ <td class="tdheader"><xsl:call-template name="collectivite"><xsl:with-param name="coll" select="."/></xsl:call-template></td>
+ <td class="tdheader"><xsl:call-template name="AssureMalade"><xsl:with-param name="assure" select="n:Piece/n:LigneERAR/n:Assure"/><xsl:with-param name="malade" select="n:Piece/n:LigneERAR/n:Malade"/></xsl:call-template></td>
+ </tr>
+ </table>
+ <xsl:apply-templates/>
+ </body>
+ </html>
+ </xsl:template>
+
+ <xsl:template name="poste">
+ <xsl:param name="entete"></xsl:param>
+ <div class="divtitle">Trésorerie</div>
+ <div id="tresorerie">Trésorerie de <xsl:value-of select="if(not(exists($entete/@LibellePoste))) then $collectivite-lib else $entete/@LibellePoste"/><br/>Codique: <xsl:value-of select="$entete/@IdPost"/></div>
+ </xsl:template>
+
+ <xsl:template match="n:Piece">
+ <xsl:apply-templates/>
+ </xsl:template>
+ <xsl:template name="collectivite">
+ <xsl:param name="coll"/>
+ <div class="divtitle">Collectivité</div>
+ <div id="collectivite">Collectivité: <xsl:value-of select="$coll/@CodCol"/><br/>Budget: <xsl:value-of select="$coll/@CodBud"/><xsl:if test="$coll/@LibelleColBud">
+ <br/>
+ <xsl:value-of select="$coll/@LibelleColBud"/>
+ </xsl:if></div>
+ </xsl:template>
+
+ <xsl:template match="n:LigneERAR">
+
+ <!--xsl:call-template name="debiteur">
+ <xsl:with-param name="deb" select="./n:Debiteur"/>
+ </xsl:call-template>
+ <xsl:call-template name="AssureMalade">
+ <xsl:with-param name="assure" select="./n:Assure"/>
+ <xsl:with-param name="malade" select="./n:Malade"/>
+ </xsl:call-template>
+ <xsl:call-template name="RefCompta">
+ <xsl:with-param name="ref" select="n:RefCompta"/>
+ <xsl:with-param name="mt.princ" select="n:MtPrinc/@V"/>
+ <xsl:with-param name="mt.frais" select="n:MtFrais/@V"/>
+ </xsl:call-template-->
+ <xsl:if test="exists(./@CodProduit) or exists(./@ObjetPiece)"><p>
+ <xsl:if test="exists(./@CodProduit)"> Pièce de recouvrement: <xsl:value-of select="./@LibProduit"/> (<xsl:value-of select="./@CodProduit"/>)</xsl:if>
+ <xsl:if test="exists(./@CodProduit) and exists(./@ObjetPiece)"><br/> Objet pièce: <xsl:value-of select="./@ObjetPiece"/></xsl:if>
+ </p></xsl:if>
+ <table style="border-collapse: collapse; width: 100%; ">
+ <colgroup>
+ <col width="25%"/>
+ <col width="25%"/>
+ <col width="25%"/>
+ <col width="25%"/>
+ </colgroup>
+ <thead>
+ <tr>
+ <th class="border">Solde dû en principal</th>
+ <th class="border">Solde dû en frais</th>
+ <th class="border">Total dû</th>
+ <th class="border">Prescrit le</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td style="text-align: right;" class="border">
+ <xsl:value-of select="format-number(@RarPrincipal,'# ##0,00','decformat')"/>
+ </td>
+ <td style="text-align: right;" class="border">
+ <xsl:value-of select="format-number(@RarFrais,'# ##0,00','decformat')"/>
+ </td>
+ <td style="text-align: right;" class="border">
+ <xsl:value-of select="format-number(@RarFrais+@RarPrincipal,'# ##0,00','decformat')"/>
+ </td>
+ <td style="text-align: center;" class="border">
+ <xsl:value-of select="if (exists(@DatePrescription)) then date:format-date(@DatePrescription) else ''"/>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ <xsl:if test="exists(@MtNV)"> Non Valeur: <xsl:value-of select="format-number(@MtNV,'# ##0,00','decformat')"/><br/> Etat du: <xsl:value-of select="format-date(@DateAdmissionNV,'[D01]/[M01]/[Y1,4]')"/><br/>
+ </xsl:if>
+ <xsl:if test="exists(n:Empechement)"><br/> Empêchement(s) <table>
+ <colgroup>
+ <col width="60%"/>
+ <col width="20%"/>
+ <col width="20%"/>
+ </colgroup>
+ <thead>
+ <tr>
+ <th>Empêchement</th>
+ <th>Début</th>
+ <th>Fin</th>
+ </tr>
+ </thead>
+ <tbody>
+ <xsl:for-each select="n:Empechement">
+ <tr>
+ <xsl:attribute name="class">
+ <xsl:choose>
+ <xsl:when test="position() mod 2 = 0">whiteLine</xsl:when>
+ <xsl:otherwise>darkLine</xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+ <td>
+ <xsl:value-of select="@added:Code-lib"/>
+ </td>
+ <td>
+ <xsl:value-of select="format-date(@DateDebut,'[D01]/[M01]/[Y1,4]')"/>
+ </td>
+ <td>
+ <xsl:value-of select="format-date(@DateFin,'[D01]/[M01]/[Y1,4]')"/>
+ </td>
+ </tr>
+ </xsl:for-each>
+ </tbody>
+ </table>
+ </xsl:if>
+ <xsl:if test="exists(n:Etape)"><br/> Etape(s)
+ <table style="width: 100%; border-collapse: collapse;">
+ <xsl:for-each select="n:Etape">
+ <tr>
+ <xsl:call-template name="etape">
+ <xsl:with-param name="etape" select="."/>
+ <xsl:with-param name="odd" select="position() mod 2"/>
+ </xsl:call-template>
+ </tr>
+ </xsl:for-each>
+ </table>
+ </xsl:if>
+
+ </xsl:template>
+
+ <xsl:template name="debiteur">
+ <xsl:param name="deb"/>
+ <div id="debiteur">
+ <div class="divtitle">Débiteur</div>
+ <div style="location: relative;">
+ <table style="border-style: none;">
+ <tbody>
+ <tr>
+ <td colspan="2">
+ <xsl:call-template name="infoTiers"><xsl:with-param name="tiers" select="$deb"/></xsl:call-template>
+ </td>
+ </tr>
+ <tr>
+ <td class="tdtop">Adresse:</td>
+ <td class="tdtop">
+ <xsl:if test="exists($deb/@Adr1)">
+ <xsl:value-of select="$deb/@Adr1"/>
+ <!--br/-->
+ </xsl:if>
+ <xsl:if test="exists($deb/@Adr2)">
+ <xsl:value-of select="$deb/@Adr2"/>
+ <!--br/-->
+ </xsl:if>
+ <xsl:if test="exists($deb/@Adr3)">
+ <xsl:value-of select="$deb/@Adr3"/>
+ <!--br/-->
+ </xsl:if>
+ <br/>
+ <xsl:if test="exists($deb/@CP)">
+ <xsl:value-of select="$deb/@CP"/>
+ </xsl:if> <xsl:if test="exists($deb/@Ville)">
+ <xsl:value-of select="$deb/@Ville"/>
+ </xsl:if>
+ <xsl:if test="exists($deb/@CodPays)">
+ <br/><xsl:value-of select="$deb/@CodPays"/>
+ </xsl:if>
+ <xsl:if test="exists($deb/@added:NPAI-normalized) and $deb/@added:NPAI-normalized='1'">
+ <br/><span class="warning">NPAI</span>
+ </xsl:if>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </div>
+ </xsl:template>
+
+ <xsl:template name="AssureMalade">
+ <xsl:param name="assure"/>
+ <xsl:param name="malade"/>
+ <div id="assuremalade">
+ <table width="100%">
+ <colgroup>
+ <col width="50%"/>
+ <col width="50%"/>
+ </colgroup>
+ <thead>
+ <tr>
+ <th>Assuré</th>
+ <th>Malade</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td style="cellpadding: 3px;" class="tdtop">
+ <xsl:call-template name="infoTiers">
+ <xsl:with-param name="tiers" select="$assure"/>
+ </xsl:call-template>
+ </td>
+ <td style="cellpadding: 3px;" class="tdtop"><xsl:call-template name="infoTiers">
+ <xsl:with-param name="tiers" select="$malade"/>
+ </xsl:call-template><br/>Entrée: <xsl:value-of select="format-date($malade/@DateEntree,'[D01]/[M01]/[Y1,4]')"/><br/>Sortie: <xsl:value-of select="format-date($malade/@DateSortie,'[D01]/[M01]/[Y1,4]')"/><br/>Num. entrée: <xsl:value-of select="$malade/@NumEntree"/></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </xsl:template>
+
+ <xsl:template name="infoTiers">
+ <xsl:param name="tiers"/>
+ <span class="fort">
+ <xsl:value-of select="$tiers/@added:Civilite-lib, $tiers/@Prenom, $tiers/@Nom, $tiers/@ComplNom"/>
+ </span>
+ </xsl:template>
+
+ <xsl:template name="RefCompta">
+ <xsl:param name="ref"/>
+ <xsl:param name="mt.princ" as="xs:double"/>
+ <xsl:param name="mt.frais" as="xs:double"/>
+ <div id="refcompta">
+ <div class="divtitle">Références</div>
+ <span class="titre"><xsl:choose>
+ <xsl:when test="$ref/@TypeRef='00'">Bordereau</xsl:when>
+ <xsl:otherwise>Rôle</xsl:otherwise>
+ </xsl:choose>: </span>
+ <xsl:value-of select="$ref/@IdBord"/>
+ <br/>
+ <span class="titre"><xsl:choose>
+ <xsl:when test="$ref/@TypeRef='00'">Titre</xsl:when>
+ <xsl:otherwise>Facture</xsl:otherwise>
+ </xsl:choose>: </span>
+ <xsl:value-of select="$ref/@IdPiece"/>
+ <br/>
+ <xsl:if test="$ref/@IdLigne">
+ <span class="titre">Ligne: </span>
+ <xsl:value-of select="$ref/@IdLigne"/>
+ <br/>
+ </xsl:if>
+ <span class="titre">Exercice: </span>
+ <xsl:value-of select="$ref/@ExerRattach"/>
+ <br/>
+ <span class="titre">Réf. ordonnateur: </span>
+ <span class="warning">absent</span>
+ <br/>
+ <xsl:if test="$ref/n:LigneERAR/@NumFact">
+ <span class="titre">Facture: </span>
+ <xsl:value-of select="$ref/n:LigneERAR/@NumFact, $ref/n:LigneERAR/@CodePeriode"/>
+ <br/>
+ </xsl:if>
+ <span class="titre">Emis le: </span>
+ <xsl:value-of select="if(exists($ref/@DateEmissionPiece)) then date:format-date($ref/@DateEmissionPiece) else ''"/>
+ <br/>
+ <span class="titre">Pris en charge PR: </span>
+ <xsl:value-of select="format-number($mt.princ,'# ##0,00','decformat')"/>
+ <br/>
+ <span class="titre">Frais PC: </span>
+ <xsl:value-of select="format-number($mt.frais,'# ##0,00','decformat')"/>
+ <br/>
+ </div>
+ </xsl:template>
+
+ <xsl:template name="etape">
+ <xsl:param name="etape"/>
+ <xsl:param name="odd" as="xs:integer"/>
+
+ <td>
+ <xsl:attribute name="class">
+ <xsl:choose>
+ <xsl:when test="$odd = 0">whiteLine</xsl:when>
+ <xsl:otherwise>darkLine</xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+ <table style="width: 100%; ">
+ <colgroup>
+ <col with="15%"/>
+ <col width="50%"/>
+ <col width="15%"/>
+ <col with="20%"/>
+ </colgroup>
+ <tr>
+ <td>
+ <xsl:value-of select="if(exists($etape/@DateEtape)) then date:format-date($etape/@DateEtape) else ''"/>
+ </td>
+ <td>
+ <xsl:value-of select="$etape/@added:CodeEtape-lib"/>
+ </td>
+ <td>Montant</td>
+ <td style="text-align: right;">
+ <xsl:value-of select="format-number($etape/@MtEtape,'# ##0,00','decformat')"/>
+ </td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td>
+ <xsl:value-of select="$etape/@added:OrigineEtape-lib"/>
+ </td>
+ <td><xsl:if test="exists($etape/@DateAnnulation)">Date annulation</xsl:if></td>
+ <td style="text-align: center;">
+ <xsl:if test="exists($etape/@DateAnnulation)">
+ <xsl:value-of select="date:format-date($etape/@DateAnnulation)"/>
+ </xsl:if>
+ </td>
+ </tr>
+ </table>
+ <table style="width: 100%; ">
+ <colgroup>
+ <col width="50%"/>
+ <col width="50%"/>
+ </colgroup>
+ <tbody>
+ <tr>
+ <td>Etat actuel: <xsl:value-of select="$etape/@added:EtatEtape-lib"/> <xsl:value-of select="$etape/@added:ValiditeEtape-lib"/></td>
+ <td>Actualité: <xsl:value-of select="$etape/@added:CodeActu-lib, if(exists($etape/@DateActu)) then date:format-date($etape/@DateActu) else ''"/></td>
+ </tr>
+ </tbody>
+ </table>
+ <table style="width: 100%; ">
+ <colgroup>
+ <col width="25%"/>
+ <col width="25%"/>
+ <col width="25%"/>
+ <col width="25%"/>
+ </colgroup>
+ <tbody>
+ <tr>
+ <th>Date demande acte</th>
+ <th>Date d'envoi de l'acte</th>
+ <th>Date de remise de l'acte</th>
+ <th>Montant acte</th>
+ </tr>
+ <tr>
+ <td>
+ <xsl:if test="exists($etape/@DateDemandeActe)">
+ <xsl:value-of select="date:format-date($etape/@DateDemandeActe)"/>
+ </xsl:if>
+ </td>
+ <td>
+ <xsl:if test="exists($etape/@DateEnvoiActe)">
+ <xsl:value-of select="date:format-date($etape/@DateEnvoiActe)"/>
+ </xsl:if>
+ </td>
+ <td>
+ <xsl:if test="exists($etape/@DateRemiseActe)">
+ <xsl:value-of select="date:format-date($etape/@DateRemiseActe)"/>
+ </xsl:if>
+ </td>
+ <td>
+ <xsl:value-of select="if(exists($etape/@MtActe)) then format-number($etape/@MtActe,'# ##0,00','decformat') else ''"/>
+ </td>
+ </tr>
+ </tbody>
+
+ </table>
+ </td>
+ </xsl:template>
+
+ <xsl:template match="*"/>
+
+ <xsl:function name="date:format-date">
+ <xsl:param name="date" as="xs:date"/>
+ <xsl:if test="not(exists($date))"><xsl:sequence select="''"/></xsl:if>
+ <xsl:if test="exists($date)">
+ <xsl:variable name="month" as="xs:integer" select="number(format-date($date,'[M1]')) idiv 1"/>
+ <xsl:variable name="mois" select="('janvier','février','mars','avril','mai','juin','juillet','août','septembre','octobre','novembre','décembre')[$month]"/>
+ <xsl:sequence select="format-date($date,'[D01]'),$mois,format-date($date,'[Y1,4]')"/>
+ </xsl:if>
+ </xsl:function>
+</xsl:transform>