extranet/www/fiben/modules/mvb/gen_html.xsl
2010-01-28 09:32:35 +00:00

251 lines
11 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:bdf="http://banque-france.fr/namespace">
<xsl:import href="../../Ressources/XSL/Commun.xsl"/>
<xsl:output method="html" version="1.1" encoding="ISO-8859-1" indent="yes" />
<xsl:param name="langage" select="'fr'"/>
<xsl:param name="familyName" select="'Finance'"/>
<xsl:param name="familyNumber" select="''"/>
<xsl:param name="familyTitle" select="'Données financières'"/>
<xsl:param name="nextModule" select="''"/>
<xsl:param name="nextId" select="''"/>
<xsl:param name="nextFamily" select="''"/>
<!-- MISE EN COMMENTAIRE : menu dynamique -->
<!--xsl:param name="menuHTML1" select="document('../menu.xhtml')"/-->
<msxsl:script language="JavaScript" implements-prefix="bdf">
<![CDATA[
function genDatesList(donmod) {
var list = new Array();
var i,j,tot,val, temp;
tot = donmod.length;
if (tot==0) return '';
for (i=0;i<tot;i++) {
temp = donmod.item(i).getAttribute('DATCLOT');
list[i] = temp.substr(2,4) + temp.substr(0,2);
temp = donmod.item(i).getAttribute('DUREEEX');
list[i] = list[i] + temp;
}
for (i=0;i<tot;i++) {
for (j=0;j<tot-1;j++) {
if (list[j]>list[j+1]) {
val=list[j];
list[j]=list[j+1];
list[j+1]=val;
}
}
}
val='';
for (i=0;i<tot-1;i++) {
if (list[i]!=list[i+1]) {
val += list[i].substr(4,2) + list[i].substr(0,4) + list[i].substr(6,2);
}
}
val += list[i].substr(4,2) + list[i].substr(0,4) + list[i].substr(6,2);
return(val);
}
function genDates(DatesList1) {
var html,i;
html='';
for (i=0;i<DatesList1.length;i=i+8) {
html += '<td class="clGrasFond" align="center">'+DatesList1.substr(i,2)+'/'+DatesList1.substr(i+2,4)+'</td>';
}
return html;
}
function genDurees(DatesList1) {
var html,i;
html='';
for (i=0;i<DatesList1.length;i=i+8) {
html += '<td class="clTexte" align="center">' + DatesList1.substr(i+6,2) + ' mois</td>';
}
return html;
}
function genModule(DatesList1, module, classe) {
var html,i,oElem, oElem2;
html='';
oElem2 = module.item(0);
for (i=0;i<DatesList1.length;i=i+8) {
oElem = oElem2.selectSingleNode('DONMOD[@DATCLOT="' + DatesList1.substr(i,6) + '" and @DUREEEX="' + DatesList1.substr(i+6,2) + '"]');
if (oElem==null) {
html += '<td class="' + classe + '" align="center">&#160;</td>';
}
else {
html += '<td class="' + classe + '" align="center">X</td>';
}
}
return html;
}
]]>
</msxsl:script>
<xsl:variable name="DatesList1" select="bdf:genDatesList(//DONMOD[../NUMMOD!=66 and ../NUMMOD!=67])"/>
<xsl:variable name="DatesList2" select="bdf:genDatesList(//DONMOD[../NUMMOD=66 or ../NUMMOD=67])"/>
<xsl:template match="/">
<html>
<xsl:call-template name="genHead">
<xsl:with-param name="ident" select="FIBEN/ERREUR/IDENT | FIBEN/PERSONNE/MODULEVB/EJ/IDENTS"/>
</xsl:call-template>
<body bgcolor="#ffffff" leftmargin="0" topmargin="0" rightmargin="0" bottommargin="0" marginheight="0" marginwidth="0" background="/FIBEN/Images/{$familyName}/fond_page.gif">
<xsl:call-template name="genFondMenu"/>
<table width="753" border="0" cellspacing="0" cellpadding="0">
<xsl:call-template name="genLigneConfidentiel">
<!-- MISE EN COMMENTAIRE : graphiques -->
<!--xsl:with-param name="graphique" select="false()"/-->
</xsl:call-template>
<xsl:apply-templates select="/FIBEN/ERREUR"/>
<xsl:if test="not(/FIBEN/ERREUR)">
<tr>
<td width="14"></td>
<td width="739" colspan="4" class="clCouleur2" valign="top">
<xsl:call-template name="genEnTete">
<xsl:with-param name="ident" select="FIBEN/PERSONNE/MODULEVB/EJ/IDENTS"/>
<xsl:with-param name="nom" select="FIBEN/PERSONNE/MODULEVB/EJ/DENOM"/>
</xsl:call-template>
<xsl:apply-templates select="FIBEN/PERSONNE/MODULEVB/IST17" mode="genLib"/>
<xsl:if test="not(FIBEN/PERSONNE/MODULEVB/IST17)">
<table width="738" border="0" cellspacing="0" cellpadding="0">
<tr><td align="center" class="clCouleur2">VITRINE BILANS</td></tr>
<tr><td><img src="/FIBEN/Images/Finance/shim.gif" width="635" height="1" vspace="8"/></td></tr>
<tr>
<td width="635" class="clCouleur2">&#160;Veuillez cliquer sur le module de votre choix</td>
<td width="103" align="right"><a href="#ancHaut"><img src="/FIBEN/Images/{$familyName}/fleche_haut.gif" width="18" height="18" border="0" /></a></td>
</tr>
</table>
<table width="635" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="clCouleur2" height="10" width="285"></td>
</tr>
<tr>
<td class="clCouleur2" height="10" width="285"></td>
</tr>
<xsl:if test="$DatesList1!=''">
<tr>
<td class="clCouleur2" height="10" width="285">Données comptables sur base sociale</td>
</tr>
<tr>
<td class="clCouleur2" height="10" width="285"></td>
</tr>
<tr width="100%">
<td class="clCouleur2" width="285">&#160;Date de clôture</td>
<xsl:value-of select="bdf:genDates($DatesList1)" disable-output-escaping="yes"/>
</tr>
<tr width="100%">
<td class="clCouleur2" width="285">&#160;Durée d'exercice</td>
<xsl:value-of select="bdf:genDurees($DatesList1)" disable-output-escaping="yes"/>
</tr>
<tr>
<td colspan="9" class="clCouleur2" height="10"></td>
</tr>
<xsl:apply-templates select="//FIBEN/PERSONNE/MODULEVB/MODULE" mode="tab1"/>
<tr>
<td colspan="9" class="clCouleur2" height="10"></td>
</tr>
<tr>
<td class="clCouleur2" height="10" width="285"></td>
</tr>
</xsl:if>
</table>
<table width="635" border="0" cellspacing="0" cellpadding="0">
<xsl:if test="$DatesList2!=''">
<tr>
<td class="clCouleur2" height="10" width="285">Données comptables sur base consolidée</td>
</tr>
<tr>
<td class="clCouleur2" height="10" width="285"></td>
</tr>
<xsl:variable name="nbDONMOD" select="count(DONMOD)"/>
<tr width="100%">
<td class="clCouleur2" width="285">&#160;Date de clôture</td>
<xsl:value-of select="bdf:genDates($DatesList2)" disable-output-escaping="yes"/>
</tr>
<tr width="100%">
<td class="clCouleur2" width="285">&#160;Durée d'exercice</td>
<xsl:value-of select="bdf:genDurees($DatesList2)" disable-output-escaping="yes"/>
</tr>
<tr>
<td colspan="9" class="clCouleur2" height="10"></td>
</tr>
<xsl:apply-templates select="//FIBEN/PERSONNE/MODULEVB/MODULE" mode="tab2"/>
</xsl:if>
</table>
</xsl:if>
<xsl:call-template name="shim"/>
</td>
</tr>
<tr>
<td width="442" colspan="2"></td>
<xsl:if test="not(//IST17)">
<xsl:call-template name="genBoutonImage">
<!-- MISE EN COMMENTAIRE : graphiques -->
<!--xsl:with-param name="graphique" select="false()"/-->
</xsl:call-template>
</xsl:if>
<td width="78"></td>
<xsl:if test="not(//IST17)">
<xsl:call-template name="genFlecheHaut"/>
</xsl:if>
</tr>
<xsl:call-template name="genBasPage"/>
</xsl:if>
</table>
<xsl:call-template name="genMenu"/>
<!-- MISE EN COMMENTAIRE : menu dynamique -->
<!--xsl:copy-of select="$menuHTML1"/-->
</body>
</html>
</xsl:template>
<xsl:template match="IST17" mode="genLib">
<table width="635" border="0" cellspacing="0" cellpadding="0">
<tr align="left">
<td class="clCouleur2">
<xsl:apply-templates select="."/><br/>
</td>
</tr>
</table>
</xsl:template>
<xsl:template match="MODULE" mode="tab1">
<xsl:variable name="NUMMOD" select="NUMMOD"/>
<xsl:if test="$NUMMOD!=66 and $NUMMOD!=67">
<tr>
<!-- MISE EN COMMENTAIRE : requête -->
<!--td class="clCouleur2" width="285">&#160;
<xsl:if test="DONMOD"><a href="#nullePart" onclick="requestBDFInfos('{$NUMMOD}','','9','',false,false,this);" class="clCouleur2"><u> <xsl:value-of select="$NUMMOD"/></u></a></xsl:if><xsl:if test="not(DONMOD)"><xsl:value-of select="$NUMMOD"/></xsl:if>&#160;<xsl:value-of select="$dictionnaire/titre[@module=$NUMMOD]"/></td-->
<td class="clCouleur2" width="285">&#160;
<xsl:if test="DONMOD"><a href="#Lien vers ce module" class="clCouleur2"><u> <xsl:value-of select="$NUMMOD"/></u></a></xsl:if><xsl:if test="not(DONMOD)"><xsl:value-of select="$NUMMOD"/></xsl:if>&#160;<xsl:value-of select="$dictionnaire/titre[@module=$NUMMOD]"/></td>
<xsl:if test="position() mod 2 = 0"><xsl:value-of select="bdf:genModule($DatesList1,.,'clTexte')" disable-output-escaping="yes"/></xsl:if>
<xsl:if test="position() mod 2 = 1"><xsl:value-of select="bdf:genModule($DatesList1,.,'clFond')" disable-output-escaping="yes"/></xsl:if>
</tr>
</xsl:if>
</xsl:template>
<xsl:template match="MODULE" mode="tab2">
<xsl:variable name="NUMMOD" select="NUMMOD"/>
<xsl:if test="$NUMMOD=66 or $NUMMOD=67">
<tr>
<!-- MISE EN COMMENTAIRE : requête -->
<!--td class="clCouleur2" width="285">&#160;
<xsl:if test="DONMOD"><a href="#nullePart" onclick="requestBDFInfos('{$NUMMOD}','','9','',false,false,this);" class="clCouleur2"><u> <xsl:value-of select="$NUMMOD"/></u></a></xsl:if><xsl:if test="not(DONMOD)"><xsl:value-of select="$NUMMOD"/></xsl:if>&#160;<xsl:value-of select="$dictionnaire/titre[@module=$NUMMOD]"/></td-->
<td class="clCouleur2" width="285">&#160;
<xsl:if test="DONMOD"><a href="#Lien vers ce module" class="clCouleur2"><u> <xsl:value-of select="$NUMMOD"/></u></a></xsl:if><xsl:if test="not(DONMOD)"><xsl:value-of select="$NUMMOD"/></xsl:if>&#160;<xsl:value-of select="$dictionnaire/titre[@module=$NUMMOD]"/></td>
<xsl:if test="position() mod 2 = 0"><xsl:value-of select="bdf:genModule($DatesList2,.,'clTexte')" disable-output-escaping="yes"/>
</xsl:if>
<xsl:if test="position() mod 2 = 1"><xsl:value-of select="bdf:genModule($DatesList2,.,'clFond')" disable-output-escaping="yes"/>
</xsl:if>
</tr>
</xsl:if>
</xsl:template>
</xsl:stylesheet>