SuperX-Kernmodul
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

235 lines
7.9 KiB

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:sx="http://memtext.de"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:import href="pageComponents_html.xsl" />
<!--In diesem Stylesheet können Sie individuelle templates unterbringen,
die in ihrer Präzedenz das normale Stylesheet
pageComponents_html.xsl überragt. -->
<xsl:import href="pageComponents_html_final.xsl" />
<xsl:import href="resultset_html.xsl" />
<xsl:import href="interLinks_html.xsl" />
<xsl:decimal-format name="German" grouping-separator="." NaN="" zero-digit ="0" decimal-separator="," />
<xml:output method="html" />
<xsl:variable name="webapp-url" select="'../'" />
<xsl:template match="/">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
<LINK REL="stylesheet" type="text/css" href="../style/superx.css" ></LINK>
<LINK REL="stylesheet" type="text/css" href="../xml/superxml_html.css" ></LINK>
<LINK REL="stylesheet" type="text/css" href="../xml/tabelle_html.css" ></LINK>
<title><xsl:value-of select="concat('Ergebnis ',/ergebnisse/ergebnis[ position()=1]/maskenname)" /></title>
<LINK REL="stylesheet" type="text/css" href="../edit/gang/gang.css" ></LINK>
</head>
<body onload="isReady=true">
<table border="0" width="100%"><tr><td align="left"><a href="javascript:window.print();"><img src="../images/printer.svg" class="svg_icon" border="0" /></a></td><td align="right"><img border="0" alt="Logo">
<xsl:attribute name="src"><xsl:value-of select="$webapp-url"/><xsl:text>images/logo.gif</xsl:text></xsl:attribute></img>
</td></tr></table>
<xsl:choose>
<!--MB -->
<xsl:when test="/ergebnisse/makro/@id !=''">
<h1><xsl:value-of select="/ergebnisse/makro/name" /></h1>
<p><input type="hidden" name="tid">
<xsl:attribute name="value"><xsl:value-of select="/ergebnisse/makro/@id" /></xsl:attribute>
</input>
</p></xsl:when>
<xsl:otherwise>
<p><input type="hidden" name="tid">
<xsl:attribute name="value"><xsl:value-of select="/ergebnisse/ergebnis/maskenname/@id" /></xsl:attribute>
</input></p>
</xsl:otherwise>
</xsl:choose>
<!--<xsl:call-template name="legende" />-->
<xsl:for-each select="ergebnisse/ergebnis/ergebniselement">
<xsl:if test="position()=1" >
<!-- legende nur bei erster Tabelle -->
<xsl:call-template name="legende" />
</xsl:if>
<xsl:choose>
<xsl:when test="@id= '25080' or @id= '25200' or @id= '25240' ">
<xsl:call-template name="tabelle_html_pivot" />
</xsl:when>
<xsl:when test="@typ='tabelle'">
<p class="macro_ueberschrift"><xsl:value-of select="../maskenname" /></p>
<!-- MB fehlermeldung direkt vom Servlet
<xsl:if test="errmsg !=''"><p class="errmsg"><xsl:copy-of select="errmsg" /></p></xsl:if>
-->
<table class="ergtabelle">
<tr>
<!--Spaltenüberschriften: zunächst wird geprüft, ob Spaltenüberschriften verknüpft werden sollen -->
<xsl:variable name="spanned_cols">
<xsl:for-each select="sqlerg/headers/header">
<xsl:if test="contains(wert,'\000')">
<xsl:text>true</xsl:text>
</xsl:if>
</xsl:for-each>
</xsl:variable>
<xsl:choose>
<xsl:when test="contains($spanned_cols,'true')">
<xsl:variable name="headers_str">
<xsl:for-each select="sqlerg/headers/header">
<xsl:value-of select="concat('^',wert)" />
</xsl:for-each>
</xsl:variable>
<!--Zurückgegeben werden html-<tr>-Tags -->
<xsl:value-of select="sx:headers2html($headers_str)" disable-output-escaping="yes"/>
</xsl:when>
<xsl:otherwise>
<!--Normale headers-->
<xsl:for-each select="sqlerg/headers/header">
<xsl:call-template name="header">
<xsl:with-param name="derwert" select="wert" />
</xsl:call-template>
</xsl:for-each>
</xsl:otherwise>
</xsl:choose>
<!--<td></td>-->
</tr>
<xsl:for-each select="sqlerg/row">
<tr>
<xsl:if test="col/f_name = 'ebene'">
<xsl:attribute name="class"><xsl:text>erglevel_</xsl:text><xsl:value-of select="col[ f_name = 'ebene' ] /wert" /></xsl:attribute>
</xsl:if>
<xsl:for-each select="col">
<td class="ergfeld">
<xsl:choose>
<!--<xsl:when test="@id='0'">
<xsl:attribute name="class">themenspalte</xsl:attribute>
</xsl:when>
<xsl:when test="@typ='1'"> String
<xsl:attribute name="class">string</xsl:attribute>
<xsl:value-of select="wert" />
</xsl:when>-->
<xsl:when test="@typ='2' or @typ='8' or @typ='3'"> <!-- DecimalFormat -->
<xsl:attribute name="class">decimal</xsl:attribute>
<!--<xsl:value-of select="wert" />-->
<xsl:choose>
<xsl:when test="wert != ''">
<xsl:value-of select="format-number(wert,'###.###.###.###.##0,00','German')" />
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="'&#160;'" />
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:when test="@typ='4'"> <!-- Integer -->
<xsl:attribute name="class">integer</xsl:attribute>
<!--<xsl:value-of select="wert" />-->
<xsl:choose>
<xsl:when test="wert != ''">
<xsl:value-of select="format-number(wert,'###.###.###.###.###','German')" />
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="'&#160;'" />
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<!--Typ=1 ist string und wird defaultmäßig behandelt -->
<xsl:call-template name="field_type" />
<xsl:variable name="zs">
<xsl:call-template name="field_value">
</xsl:call-template>
</xsl:variable>
<xsl:variable name="zs3">
<xsl:call-template name="resultsetLink">
<xsl:with-param name="zs2" select="$zs" />
</xsl:call-template>
</xsl:variable>
<!--Ab hier können Benutzerspezifische Transformationen nach Feldnamen oder Typ beginnen
Bei leeren Zellen wird nbsp übergeben, weil
der IE die Zellen sonst ohne Rahmen darstellt.
Standardmmäßig wird der Feldinhalt nur noch kopiert.-->
<xsl:call-template name="get_val_or_nbsp">
<xsl:with-param name="zs4"><xsl:copy-of select="$zs3" /></xsl:with-param>
</xsl:call-template>
</xsl:otherwise>
</xsl:choose>
</td>
</xsl:for-each>
<!--<td></td>-->
</tr>
</xsl:for-each>
</table>
</xsl:when>
<xsl:otherwise>
<xsl:text>
Nicht unterstützter Ergebnistyp </xsl:text><xsl:value-of select="@type" />
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
<!--<div id="inhalt" class="versteckt"><p><TEXTAREA NAME="content" ROWS="40" COLS="80" WRAP="off" READONLY="true">
<ergebnis><xsl:copy-of select="/ergebnis/*|@*|text()" /></ergebnis>
</TEXTAREA>
</p></div>
<script language="Javascript">
versteckeText("inhalt");
</script>-->
<xsl:call-template name="bottombar" />
</body>
</html>
</xsl:template>
<xsl:template name="tabwert">
<xsl:choose>
<xsl:when test="wert/@type='numeric'"><xsl:value-of select="wert" />
<!--<xsl:value-of select="format-number(wert,'#.###.##0,00','de_DE')" />-->
</xsl:when>
<xsl:otherwise><xsl:value-of select="wert" /></xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="create_url">
<xsl:param name="stylesheet"/>
<xsl:text>../servlet/SuperXmlTabelle?</xsl:text>
<xsl:if test="$stylesheet!=''"><xsl:text>stylesheet=</xsl:text><xsl:value-of select="$stylesheet" /><xsl:text>&amp;</xsl:text>
</xsl:if>
<xsl:text>UserID=</xsl:text><xsl:value-of select="/ergebnis/userID" /><xsl:text>&amp;tid=</xsl:text><xsl:value-of select="/ergebnisse/ergebnis/maskenname/@id" />
<xsl:for-each select="/ergebnis/tabelle/felder/feld">
<xsl:if test="wert/value !=''">
<xsl:text>&amp;</xsl:text><xsl:value-of select="wert/@varname" /><xsl:text>=</xsl:text><xsl:value-of select="wert/value" />
</xsl:if>
</xsl:for-each>
</xsl:template>
<xsl:template name="tabelle_html_pivot">
<p class="macro_ueberschrift"><xsl:value-of select="../maskenname" /></p>
<xsl:for-each select="sqlerg/row">
<table><caption><span class="gang_titel"><xsl:value-of select="col [f_name='studiengang']/wert" /></span></caption>
<xsl:for-each select="col [ string-length(wert) &gt; 0 ]">
<tr><td class="db_label">
<xsl:variable name="col_id"><xsl:value-of select="@id" /></xsl:variable>
<xsl:value-of select="../../headers/header [ @id= $col_id] / wert" />
</td>
<td><xsl:value-of select="wert" /></td>
</tr>
</xsl:for-each>
</table>
<hr />
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>