--- /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="00">Avis Somme à payer</desc>
+ <desc code="01">Lettre rappel</desc>
+ <desc code="02">Commandement</desc>
+ <desc code="03">Mise en demeure</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">Poursuite extérieure</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 poursuite extérieure</desc-->
+ <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>
+ <NatEtape>
+ <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>
+ </NatEtape>
+ <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:PES_Restit">
+ <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; ">
+ <xsl:choose>
+ <xsl:when test="n:EnTetePES">
+ <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="n:EnTetePES"/></xsl:call-template></td>
+ <td class="tdheader"><xsl:call-template name="debiteur"><xsl:with-param name="deb" select="n:PES_ERAR/n:LigneERAR/n:Debiteur"/></xsl:call-template></td>
+ <td rowspan="2" class="tdheader"><xsl:call-template name="RefCompta"><xsl:with-param name="ref" select="n:PES_ERAR/n:LigneERAR/n:RefCompta"/><xsl:with-param name="mt.princ" select="n:PES_ERAR/n:LigneERAR/n:MtPrinc/@V"/><xsl:with-param name="mt.frais" select="n:PES_ERAR/n:LigneERAR/n:MtFrais/@V"/></xsl:call-template></td>
+ </tr>
+ <tr>
+ <td class="tdheader"><xsl:call-template name="collectivite"><xsl:with-param name="coll" select="n:PES_ERAR/n:LigneERAR/n:Collectivite"/></xsl:call-template></td>
+ <td class="tdheader"><xsl:call-template name="AssureMalade"><xsl:with-param name="assure" select="n:PES_ERAR/n:LigneERAR/n:Assure"/><xsl:with-param name="malade" select="n:PES_ERAR/n:LigneERAR/n:Malade"/></xsl:call-template></td>
+ </tr>
+ </table>
+ <xsl:apply-templates/>
+ </xsl:when>
+ <xsl:otherwise><!--p class="warning">Cet élément est incomplet et ne peut pas etre affiché complètement.</p-->
+ <p><xsl:call-template name="debiteur"><xsl:with-param name="deb" select="n:PES_ERAR/n:LigneERAR/n:Debiteur"/></xsl:call-template></p>
+ <p>Montant RAR Total: <xsl:value-of select="format-number(n:PES_ERAR/n:LigneERAR/n:RarTotal/@V,'# ##0,00','decformat')"/></p></xsl:otherwise>
+ </xsl:choose>
+ </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/n:LibellePoste))) then $collectivite-lib else $entete/n:LibellePoste/@V"/><br/>Codique: <xsl:value-of select="$entete/n:IdPost/@V"/></div>
+ </xsl:template>
+
+ <xsl:template match="n:PES_ERAR">
+ <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/n:CodCol/@V"/><br/>Budget: <xsl:value-of select="$coll/n:CodBud/@V"/><xsl:if test="$coll/n:LibelleColBud">
+ <br/>
+ <xsl:value-of select="$coll/n:LibelleColBud/@V"/>
+ </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-->
+  Pièce de recouvrement: <xsl:choose>
+ <xsl:when test="$repository/n:NomenclatureProduitLocal/n:Correspondance[n:Code/@V=n:CodProdLocal/@V]">
+ <xsl:value-of select="$repository/n:NomenclatureProduitLocal/n:Correspondance[n:Code/@V=n:CodProdLocal/@V]/n:Libelle/@V"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="n:CodProdLocal/@V"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <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(n:RarPrinc/@V,'# ##0,00','decformat')"/>
+ </td>
+ <td style="text-align: right;" class="border">
+ <xsl:value-of select="format-number(n:RarFrais/@V,'# ##0,00','decformat')"/>
+ </td>
+ <td style="text-align: right;" class="border">
+ <xsl:value-of select="format-number(n:RarFrais/@V+n:RarPrinc/@V,'# ##0,00','decformat')"/>
+ </td>
+ <td style="text-align: center;" class="border">
+ <xsl:value-of select="if (exists(n:DatePrescription/@V)) then date:format-date(n:DatePrescription/@V) else ''"/>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ <xsl:if test="exists(n:MtNV)"> Non Valeur: <xsl:value-of select="format-number(n:MtNV/@V,'# ##0,00','decformat')"/><br/> Etat du: <xsl:value-of select="format-date(n:DateAdmissionNV/@V,'[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="./n:LibEmp/@V"/>
+ </td>
+ <td>
+ <xsl:value-of select="format-date(n:DateDebutEmp/@V,'[D01]/[M01]/[Y1,4]')"/>
+ </td>
+ <td>
+ <xsl:value-of select="format-date(n:DateFinEmp/@V,'[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/n:InfoTiers"/></xsl:call-template>
+ </td>
+ </tr>
+ <tr>
+ <td class="tdtop">Adresse:</td>
+ <td class="tdtop">
+ <xsl:if test="exists($deb/n:Adresse/n:Adr1)">
+ <xsl:value-of select="$deb/n:Adresse/n:Adr1/@V"/>
+ <!--br/-->
+ </xsl:if>
+ <xsl:if test="exists($deb/n:Adresse/n:Adr2)">
+ <xsl:value-of select="$deb/n:Adresse/n:Adr2/@V"/>
+ <!--br/-->
+ </xsl:if>
+ <xsl:if test="exists($deb/n:Adresse/n:Adr3)">
+ <xsl:value-of select="$deb/n:Adresse/n:Adr3/@V"/>
+ <!--br/-->
+ </xsl:if>
+ <br/>
+ <xsl:if test="exists($deb/n:Adresse/n:CP)">
+ <xsl:value-of select="$deb/n:Adresse/n:CP/@V"/>
+ </xsl:if> <xsl:if test="exists($deb/n:Adresse/n:Ville)">
+ <xsl:value-of select="$deb/n:Adresse/n:Ville/@V"/>
+ </xsl:if>
+ <xsl:if test="exists($deb/n:NPAI) and ($deb/n:NPAI/@V='1' or $deb/n:NPAI/@V='yes' or $deb/n:NPAI/@V='true')">
+ <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/n:InfoTiers"/>
+ </xsl:call-template><br/>Entrée: <xsl:value-of select="format-date($malade/n:DateEntree/@V,'[D01]/[M01]/[Y1,4]')"/><br/>Sortie: <xsl:value-of select="format-date($malade/n:DateSortie/@V,'[D01]/[M01]/[Y1,4]')"/><br/>Num. entrée: <xsl:value-of select="$malade/n:NumEntree/@V"/></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </xsl:template>
+
+ <xsl:template name="infoTiers">
+ <xsl:param name="tiers"/>
+ <span class="fort">
+ <xsl:value-of select="$tiers/n:Civilite/@V, $tiers/n:Prenom/@V, $tiers/n:Nom/@V, $tiers/n:ComplNom/@V"/>
+ </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/n:TypeRef/@V='00'">Bordereau</xsl:when>
+ <xsl:otherwise>Rôle</xsl:otherwise>
+ </xsl:choose>: </span>
+ <xsl:value-of select="$ref/n:IdBord/@V"/>
+ <br/>
+ <span class="titre"><xsl:choose>
+ <xsl:when test="$ref/n:TypeRef/@V='00'">Titre</xsl:when>
+ <xsl:otherwise>Facture</xsl:otherwise>
+ </xsl:choose>: </span>
+ <xsl:value-of select="$ref/n:IdPiece/@V"/>
+ <br/>
+ <xsl:if test="$ref/n:IdLigne">
+ <span class="titre">Ligne: </span>
+ <xsl:value-of select="$ref/n:IdLigne/@V"/>
+ <br/>
+ </xsl:if>
+ <span class="titre">Exercice: </span>
+ <xsl:value-of select="$ref/n:ExerRattach/@V"/>
+ <br/>
+ <span class="titre">Réf. ordonnateur: </span>
+ <span class="warning">absent</span>
+ <br/>
+ <xsl:if test="$ref/n:NumFact">
+ <span class="titre">Facture: </span>
+ <xsl:value-of select="$ref/n:NumFact/@V, $ref/n:CodePeriode/@V"/>
+ <br/>
+ </xsl:if>
+ <span class="titre">Emis le: </span>
+ <xsl:value-of select="if(exists($ref/n:DateEmissionPiece)) then date:format-date($ref/n:DateEmissionPiece/@V) 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/n:DateEtape)) then date:format-date($etape/n:DateEtape/@V) else ''"/>
+ </td>
+ <td>
+ <xsl:value-of select="$nomenclature/NatEtape/desc[@code=$etape/n:NatEtape/@V]/text()"/>
+ </td>
+ <td>Montant</td>
+ <td style="text-align: right;">
+ <xsl:value-of select="format-number($etape/n:MtEtape/@V,'# ##0,00','decformat')"/>
+ </td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td>
+ <xsl:value-of select="OrigineEtape/@V"/>
+ </td>
+ <td><xsl:if test="exists($etape/n:DateAnnulation)">Date annulation</xsl:if></td>
+ <td style="text-align: center;">
+ <xsl:if test="exists($etape/n:DateAnnulation)">
+ <xsl:value-of select="date:format-date($etape/n:DateAnnulation/@V)"/>
+ </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="$nomenclature/EtatEtape/desc[@code=$etape/n:EtatEtape/@V]/text()"/> <xsl:value-of select="$nomenclature/EtatValidation/desc[@code=$etape/n:EtatValidation/@V]/text()"/></td>
+ <td>Actualité: <xsl:value-of select="$etape/n:LibActu/@V, if(exists($etape/n:DateActu)) then date:format-date($etape/n:DateActu/@V) 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/n:DateDemandeActe)">
+ <xsl:value-of select="date:format-date($etape/n:DateDemandeActe/@V)"/>
+ </xsl:if>
+ </td>
+ <td>
+ <xsl:if test="exists($etape/n:DateEnvoiActe)">
+ <xsl:value-of select="date:format-date($etape/n:DateEnvoiActe/@V)"/>
+ </xsl:if>
+ </td>
+ <td>
+ <xsl:if test="exists($etape/n:DateRemiseActe)">
+ <xsl:value-of select="date:format-date($etape/n:DateRemiseActe/@V)"/>
+ </xsl:if>
+ </td>
+ <td>
+ <xsl:value-of select="if(exists($etape/n:MtActe)) then format-number($etape/n:MtActe/@V,'# ##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>