<?xml version="1.0" encoding="windows-1252"?>
<!--
    ======================================================================================================================
    XSL-Stylesheet für tibros-PP / BB Prüferentschädigung
    Author: NOC GmbH, Andreas Bürk

    Input: von tibros-PP/BB erzeugte XML-Datei, die jeweils eine Abrechnung in hierarchischer Struktur enthält
    Output: HTML zur Anzeige im Webbrowser Formatierung: dieses XSL, CSS
    ======================================================================================================================
-->

<!-- Basiert auf dem endgültigen XSL, das ab MSXML 3.0 implementiert ist.
     Dieses kann zu IE5.0 und IE5.5 dazu installiert werden, im IE6.0 ist es
     wohl serienmäßig eingebaut -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" >

  <!-- know-how: ab MSXML 3 braucht man das für durchgeleitete Tags -->
  <xsl:template match="/@*|/|node()">
    <xsl:apply-templates />
  </xsl:template>


  <!-- Process the Document -->
  <xsl:template match="/">
    <HTML>
      <HEAD>
        <TITLE>
          tibrosPE Prüfer-Entschädigung
        </TITLE>

        <!-- Link different CSS-Stylesheets for Screen and Printing -->
        <xsl:element name="LINK">
          <xsl:attribute name="REL">stylesheet</xsl:attribute>
          <xsl:attribute name="MEDIA">screen</xsl:attribute>
          <xsl:attribute name="TYPE">text/css</xsl:attribute>
          <xsl:attribute name="HREF">
            <xsl:value-of select="//PE_ABRECHNUNG/Dokumentpfad" />PE_ABRECHNUNG.CSS
          </xsl:attribute>
        </xsl:element>
        <xsl:element name="LINK">
          <xsl:attribute name="REL">stylesheet</xsl:attribute>
          <xsl:attribute name="MEDIA">print</xsl:attribute>
          <xsl:attribute name="TYPE">text/css</xsl:attribute>
          <xsl:attribute name="HREF">
            <xsl:value-of select="//PE_ABRECHNUNG/Dokumentpfad" />PE_ABRECHNUNG_PRINT.CSS
          </xsl:attribute>
        </xsl:element>

      </HEAD>
      <BODY>

        <!-- JavaScript für die Ein/Ausblendung von Bereichen -->

        <script language="JavaScript">
          <xsl:text>
                &lt;!--
                        function ShowDetails(ref)
                        {
                                if (document.all.MYLINK.value == "ausblenden")
                                {
                                        document.all.DETAILS.style.visibility    = "hidden";
                                        document.all.DETAILS.style.display       = "none";
                                        document.all.UEBERSICHT.style.visibility = "visible";
                                        document.all.UEBERSICHT.style.display    = "block";
                                        window.location.href      = "#start_pos";
                                        document.all.MYLINK.value = "einblenden";
                                }
                                else
                                {
                                        document.all.UEBERSICHT.style.visibility = "hidden";
                                        document.all.UEBERSICHT.style.display    = "none";
                                        document.all.DETAILS.style.visibility    = "visible";
                                        document.all.DETAILS.style.display       = "block";
                                        window.location.href = "#" + ref;
                                        document.all.MYLINK.value = "ausblenden";
                                }

                        }
                //--&gt;
                </xsl:text>
        </script>

        <!-- Überschrift -->
        <A name="Anfang" />
        <table WIDTH="100%" CLASS="">
          <tr>
            <td WIDTH="100%" NOWRAP="TRUE">
              <H1>
                <xsl:value-of select="//PE_ABRECHNUNG/PRUEFER/NAME"/> (<xsl:value-of select="//PE_ABRECHNUNG/PRUEFER/IDENT"/>) | Beleg:
                <xsl:value-of select="//PE_ABRECHNUNG/ABRECHNUNG/BELEGNR/DBVALUE"/>
              </H1>
            </td>
            <td NOWRAP="TRUE" ALIGN="RIGHT" VALIGN="BOTTOM" style='padding:4px;'>
		<xsl:value-of select="//PE_ABRECHNUNG/USER" />
            </td>
            <td NOWRAP="TRUE" ALIGN="RIGHT" VALIGN="BOTTOM" style='padding:4px;'>
                <xsl:value-of select="//PE_ABRECHNUNG/DATE" /> Uhr
            </td>
          </tr>
        </table>
        <HR/>

        <!-- Abrechnungsdaten -->

        <xsl:apply-templates select="//PE_ABRECHNUNG/ABRECHNUNG" />

        <!-- Positionsdaten -->

        <A name="start_pos" />

        <xsl:apply-templates select="//PE_ABRECHNUNG/ABRECHNUNG/POSITIONEN"/>

        <table CLASS="NAVIGATION">
          <tr>
            <td CLASS="NAVIGATION" WIDTH="100%">
              <A HREF="#Anfang">zum Anfang</A>
            </td>
            <td CLASS="NAVIGATION" NOWRAP="TRUE" VALIGN="BOTTOM">
              <A HREF="#Anfang">Abrechnungsdaten</A> | <A ID="MYLINK" HREF="JavaScript:ShowDetails(1);">Positionsdetails ein/ausblenden</A>
            </td>
          </tr>
        </table>



        <!-- Blödsinn-->

        <CENTER>
          <font size="-1">
            <BR/><BR/>
            &#169; 2003-2021 | NOSKE OFFICE CONSULTING &amp; MARKETING GmbH <BR/>
            <A HREF="mailto:info@noske-office.de" target="_blank">info@noske-office.de</A> | <A HREF="http://www.noske-office.de" target="_blank">http://www.noske-office.de</A>

          </font>

        </CENTER>


      </BODY>
    </HTML>
  </xsl:template>
  <!-- END OF THE DOCUMENT PROCESSOR -->

  <!-- Abrechnungsdaten ========================== -->
  <xsl:template match="ABRECHNUNG">

    <table CLASS="NAVIGATION">
      <tr>
        <td CLASS="HEAD" WIDTH="100%">Abrechnungsdaten</td>
        <td CLASS="NAVIGATION" NOWRAP="TRUE" VALIGN="BOTTOM">
          <A HREF="#Anfang">Abrechnungsdaten</A> | <A ID="MYLINK" HREF="JavaScript:ShowDetails(1);">Positionsdetails ein/ausblenden</A>
        </td>
      </tr>
    </table>

    <table width="100%" border="0" cellpadding="1">
      <tr>
        <td WIDTH="30%">
          <table WIDTH="100%">
            <tr>
              <th colspan="2">Bankdaten</th>
            </tr>
            <tr>
              <td>Nummer:</td>
              <td NOWRAP="TRUE">
                <xsl:value-of select="BANK/NUMMER" />
              </td>
            </tr>
            <tr>
              <td>Name:</td>
              <td NOWRAP="TRUE">
                <xsl:value-of select="BANK/NAME" />
              </td>
            </tr>
            <tr>
              <td>BIC:</td>
              <td NOWRAP="TRUE">
                <xsl:value-of select="BANK/BIC" />
              </td>
            </tr>
            <tr>
              <td>IBAN:</td>
              <td NOWRAP="TRUE">
                <xsl:value-of select="BANK/IBAN" />
              </td>
            </tr>

            <xsl:if test="string-length(BANK/INHABER) > 0">
              <tr>
                <td>Inhaber:</td>
                <td NOWRAP="TRUE">
                  <xsl:value-of select="BANK/INHABER" />
                </td>
              </tr>
            </xsl:if>
            <xsl:if test="string-length(BANK/EINZUG) > 0">
              <tr>
                <td>Einzug:</td>
                <td NOWRAP="TRUE">
                  <xsl:value-of select="BANK/EINZUG" />
                </td>
              </tr>
            </xsl:if>

            <tr>
              <td colspan="2">
                <br/>
              </td>
            </tr>
            <tr>
              <th colspan="2">Beträge</th>
            </tr>
            <tr>
              <td colspan="2">
                <table WIDTH="100%">
                  <tr>
                    <td ALIGN="RIGHT" COLSPAN="5" NOWRAP="TRUE">Nettopreis</td>
                    <td ALIGN="RIGHT" NOWRAP="TRUE">
                      <xsl:value-of select="NETTOBETRAG/DBVALUE" /> €
                    </td>
                  </tr>
                  <tr>
                    <td ALIGN="RIGHT" COLSPAN="5" NOWRAP="TRUE">MWST</td>
                    <td ALIGN="RIGHT" NOWRAP="TRUE">
                      <xsl:value-of select="USTBETRAG/DBVALUE" /> €
                    </td>
                  </tr>
                  <tr>
                    <td ALIGN="RIGHT" COLSPAN="5" NOWRAP="TRUE">Gesamtpreis</td>
                    <td ALIGN="RIGHT" >
                      <xsl:value-of select="BRUTTOBETRAG/DBVALUE" /> €
                    </td>
                  </tr>
                </table>
              </td>
            </tr>
          </table>
        </td>
        <td COLSPAN="2" width="100%">
          <table WIDTH="100%">
            <tr>
              <th colspan='2'>&#160;</th>
              <!-- <th width="50%">Feld</th> -->
              <!-- <th>Inhalt</th> -->
            </tr>

            <!-- Rechnungsdatum DATUM -->

            <tr>
              <td width="50%">Belegnummer:</td>
              <td NOWRAP="TRUE">
                <b>
                  <xsl:value-of select="BELEGNR/DBVALUE" />
                </b>
              </td>
            </tr>
            <tr>
              <td>Belegdatum:</td>
              <td NOWRAP="TRUE">
                <xsl:value-of select="BELEGDATUM/DBVALUE" />
              </td>
            </tr>
            <tr>
              <td>Rechnungsdatum</td>
              <td>
                <xsl:value-of select="RECHNUNGSDATUM/DBVALUE" />
              </td>
            </tr>

            <!-- Leerzeile -->
            <tr>
              <td COLSPAN="2" CLASS="LEERZEILE">
                <br/>
              </td>
            </tr>

            <!-- Zeitraum spielt in der Prüferentschädigung nicht die Rolle
                        <tr>
                            <td>Zeitraum von</td>
                            <td><xsl:value-of select="ZEITRAUM_VON/DBVALUE" /></td>
                        </tr>
                        <tr>
                            <td>Zeitraum bis</td>
                            <td><xsl:value-of select="ZEITRAUM_BIS/DBVALUE" /></td>
                        </tr>
                        -->

            <!-- Userid Rechnungsersteller USERID (A) -->
            <tr>
              <td>Rechnungsersteller</td>
              <td>
                <xsl:value-of select="USERID/VALUE" />
              </td>
            </tr>

            <!-- Leerzeile -->
            <tr>
              <td COLSPAN="2" CLASS="LEERZEILE">
                <br/>
              </td>
            </tr>

            <!-- RECHTEXT -->
            <xsl:if test="string-length(TEXT/DBVALUE) > 0">

              <!-- Leerzeile -->
              <tr>
                <td COLSPAN="2" CLASS="LEERZEILE">
                  <br/>
                </td>
              </tr>

              <tr>
                <th COLSPAN="2">Text</th>
              </tr>
              <tr>
                <td>
                  <xsl:value-of select="TEXT/DBVALUE" />
                  <BR/>
                </td>
              </tr>
            </xsl:if>
          </table>
        </td>
      </tr>
    </table>
  </xsl:template>

  <!-- Positionen ======================= -->
  <xsl:template match="POSITIONEN">

    <table CLASS="NAVIGATION">
      <tr>
        <td CLASS="HEAD" WIDTH="100%">Abrechnungspositionen</td>
        <td CLASS="NAVIGATION" NOWRAP="TRUE" VALIGN="BOTTOM">
          <A HREF="#Anfang">Abrechnungsdaten</A> | <A ID="MYLINK" HREF="JavaScript:ShowDetails(1);">Positionsdetails ein/ausblenden</A>
        </td>
      </tr>
    </table>

    <!-- ANZEIGE DER POSITIONSÜBERICHT -->
    <DIV ID="UEBERSICHT">
      <table width="100%" border="0" cellpadding="1">
        <tr>
          <th ALIGN="CENTER">Nr.</th>
          <th ALIGN="CENTER">Artikel</th>
          <th ALIGN="CENTER">Einzelpreis</th>
          <th ALIGN="CENTER">Menge</th>
          <!-- Derzeit voll hoheitlich ohne Umsatzsteuer, ausgeblendet
                <th ALIGN="CENTER">USt-Betrag</th>
                -->
          <th ALIGN="CENTER">Gesamtbetrag</th>
        </tr>
        <!-- aufruf der einzelnen Positione (LISTE) -->
        <xsl:apply-templates select="//PE_ABRECHNUNG/ABRECHNUNG/POSITIONEN/POSITION"/>
        <tr>
          <th COLSPAN="5" HEIGHT="3px"></th>
        </tr>
        <tr>
          <td ALIGN="RIGHT" COLSPAN="4">Nettopreis</td>
          <td ALIGN="RIGHT">
            <xsl:value-of select="//PE_ABRECHNUNG/ABRECHNUNG/NETTOBETRAG/DBVALUE" /> €
          </td>
        </tr>
        <tr>
          <td ALIGN="RIGHT" COLSPAN="4">MWST</td>
          <td ALIGN="RIGHT">
            <xsl:value-of select="//PE_ABRECHNUNG/ABRECHNUNG/USTBETRAG/DBVALUE" /> €
          </td>
        </tr>
        <tr>
          <td ALIGN="RIGHT" COLSPAN="4">Gesamtpreis</td>
          <td ALIGN="RIGHT">
            <xsl:value-of select="//PE_ABRECHNUNG/ABRECHNUNG/BRUTTOBETRAG/DBVALUE" /> €
          </td>
        </tr>
      </table>
    </DIV>
    <!-- // ANZEIGE DER POSITIONSÜBERICHT -->

    <xsl:call-template name="POSITIONS-DETAILS" />

  </xsl:template>

  <!-- Position ======================= -->
  <xsl:template match="POSITION">

    <tr>
      <td ALIGN="CENTER">
        <xsl:value-of select="@ID" />
      </td>

      <xsl:element name="TD">
        <!-- jegliche Einrückung wird als Leerzeichen ausgegeben -->
        <xsl:attribute name="TITLE">
          Konto: <xsl:value-of select="KONTO/VALUE" />
          Konto mit USt.: <xsl:value-of select="KONTO_MIT/DBVALUE" />
          Kostenstelle: <xsl:value-of select="KOSTENSTELLE/VALUE" />
          Kostenträger: <xsl:value-of select="KOSTENTRAEGER/VALUE" />
        </xsl:attribute>

        <xsl:attribute name="ALIGN">LEFT</xsl:attribute>

        <xsl:element name="A">
          <xsl:attribute name="HREF">
            JavaScript:ShowDetails(<xsl:value-of select="@ID" />);
          </xsl:attribute>
          <xsl:value-of select="ARTIKEL/VALUE" />
        </xsl:element>

      </xsl:element>

      <!-- <td ALIGN="LEFT" ALT="$myText"> <xsl:value-of select="ARTIKEL/VALUE" /></td> -->
      <td ALIGN="RIGHT">
        <xsl:value-of select="EINZELPREIS_NKS/DBVALUE" /> €
      </td>
      <td ALIGN="CENTER">
        <xsl:value-of select="MENGE/DBVALUE" />
      </td>
      <!-- Derzeit noch voll hoheitlich ohne Umsatzsteuer, deshalb ausgeblendet
                <td ALIGN="RIGHT"><xsl:value-of select="USTBETRAG_NKS/DBVALUE" /> €</td>
                -->
      <td ALIGN="RIGHT">
        <xsl:value-of select="GESAMTPREIS_NKS/DBVALUE" /> €
      </td>
    </tr>


  </xsl:template>

  <!-- Positionen ======================= -->

  <xsl:template name="POSITIONS-DETAILS">

    <!-- ANZEIGE DER POSITIONSÜBERICHT -->
    <DIV ID="DETAILS" STYLE="visibility:hidden;display:none;">
      <xsl:for-each select="//PE_ABRECHNUNG/ABRECHNUNG/POSITIONEN/POSITION">

        <b>
          Position <xsl:value-of select="@ID" /> von <xsl:value-of select="//PE_ABRECHNUNG/ABRECHNUNG/POSITIONEN/@POS_COUNT" />
        </b>

        <!-- Link zum letzten Element -->
        <xsl:if test="1 != @ID">
          |
          <xsl:element name="A">
            <xsl:attribute name="HREF">
              #<xsl:value-of select="@ID -1" />
            </xsl:attribute>
            <xsl:attribute name="CLASS">NAVIGATION</xsl:attribute>
            zur letzten Position
          </xsl:element>
        </xsl:if>

        <!-- Link zum nächsten Element -->
        <xsl:if test="//PE_ABRECHNUNG/ABRECHNUNG/POSITIONEN/@POS_COUNT != @ID">
          |
          <xsl:element name="A">
            <xsl:attribute name="HREF">
              #<xsl:value-of select="@ID +1" />
            </xsl:attribute>
            <xsl:attribute name="CLASS">NAVIGATION</xsl:attribute>
            zur nächsten Position
          </xsl:element>
        </xsl:if>

        <!-- Ausgabe des aktuellen Sprungzieles -->
        <xsl:element name="A">
          <xsl:attribute name="NAME">
            #<xsl:value-of select="@ID" />
          </xsl:attribute>
        </xsl:element>

        <!-- Ausgabe der detailierten Positonsangaben -->

        <table width="100%">
          <tr>
            <td NOWRAP="TRUE" WIDTH="50%">
              <!-- Spalte links -->
              <table WIDTH="100%">
                <tr>
                  <th COLSPAN="2">
                    Position <xsl:value-of select="@ID" />
                  </th>
                </tr>
                <tr>
                  <td>Ausschuss</td>
                  <td>
                    <xsl:value-of select="AUSSCHUSS/VALUE" />
                  </td>
                </tr>
                <tr>
                  <td>Abschluss</td>
                  <td>
                    <xsl:value-of select="ABSCHLUSS/VALUE" />
                  </td>
                </tr>
                <tr>
                  <td>Artikel</td>
                  <td>
                    <xsl:value-of select="ARTIKEL/VALUE" />
                  </td>
                </tr>
                <tr>
                  <td>Kontengruppe</td>
                  <td>
                    <xsl:value-of select="KONTENGRUPPE/VALUE" />
                  </td>
                </tr>
                <tr>
                  <td>Konten kaufm./kam./Kore</td>
                  <td>
                    <xsl:value-of select="KONTOK1/DBVALUE" /> /
                    <xsl:value-of select="KONTOK2/DBVALUE" /> /
                    <xsl:value-of select="KONTOK3/DBVALUE" />
                  </td>
                </tr>
                <tr>
                  <td>Kostenstelle</td>
                  <td>
                    <xsl:value-of select="KOSTENSTELLE/VALUE" />
                  </td>
                </tr>
                <tr>
                  <td>Kostenträger</td>
                  <td>
                    <xsl:value-of select="KOSTENTRAEGER/VALUE" />
                  </td>
                </tr>
                <tr>
                  <td>Onlinebemerkung</td>
                  <td>
                    <xsl:value-of select="BEMERKUNG/VALUE" />
                  </td>
                </tr>
                <tr>
                  <td>Uhrzeiten</td>
                  <td>
                    <xsl:value-of select="UHRZEITAB/VALUE" /> - 
                    <xsl:value-of select="UHRZEITBIS/VALUE" />
                  </td>
                </tr>
                <tr>
                  <td COLSPAN="2">
                    <BR/>
                  </td>
                </tr>
                <tr>
                  <!-- Beträge -->
                  <td align="center">
                    <table width="80%">
                      <tr>
                        <th colspan="3">Beträge</th>
                      </tr>
                      <tr>
                        <td ALIGN="RIGHT" NOWRAP="TRUE">Einzelpreis</td>
                        <td ALIGN="RIGHT" NOWRAP="TRUE">
                          <xsl:value-of select="EINZELPREIS_NKS/DBVALUE" /> €
                        </td>
                        <td WIDTH="100%">
                          <BR/>
                        </td>
                      </tr>
                      <tr>
                        <td ALIGN="RIGHT" NOWRAP="TRUE">Menge</td>
                        <td ALIGN="RIGHT" NOWRAP="TRUE">
                          <xsl:value-of select="MENGE/DBVALUE" />
                        </td>
                        <td WIDTH="100%">
                          <BR/>
                        </td>
                      </tr>
                      <tr>
                        <td ALIGN="RIGHT" NOWRAP="TRUE">UST</td>
                        <td ALIGN="RIGHT" NOWRAP="TRUE">
                          <xsl:value-of select="USTBETRAG_NKS/DBVALUE" /> €
                        </td>
                        <td WIDTH="100%">
                          <BR/>
                        </td>
                      </tr>
                      <tr>
                        <td ALIGN="RIGHT" NOWRAP="TRUE">Gesamtpreis</td>
                        <td ALIGN="RIGHT" NOWRAP="TRUE">
                          <xsl:value-of select="GESAMTPREIS_NKS/DBVALUE" /> €
                        </td>
                        <td WIDTH="100%">
                          <BR/>
                        </td>
                      </tr>
                    </table>
                  </td>
                  <!-- Text -->
                  <td align="center">
                    <table width="80%">
                      <tr>
                        <th>Text</th>
                      </tr>
                      <tr>
                        <td NOWRAP="TRUE">
                          <xsl:if test="string-length(TEXT/DBVALUE) > 0">
                            <xsl:value-of select="TEXT/DBVALUE" />

                          </xsl:if>
                        </td>
                      </tr>
                    </table>
                  </td>
                </tr>
              </table>
            </td>
          </tr>
        </table>
      </xsl:for-each>
    </DIV>
  </xsl:template>


  <!-- Feldinhalt beliebiges Feld========================= -->

  <xsl:template name="Feldinhalt">

    <td>
      <xsl:value-of select="." />
    </td>

  </xsl:template>

  <!-- FieldValue ======================= -->
  <xsl:template name="FieldValue">

    <tr>
      <td>
        <xsl:value-of select="name()" />
      </td>
      <td>
        <xsl:value-of select="/DBVALUE" />
      </td>
    </tr>

  </xsl:template>

  <!-- FieldDBValue ======================= -->
  <xsl:template name="FieldDBValue">

    <tr>
      <td>
        <xsl:value-of select="name()" />
      </td>
      <td>
        <xsl:value-of select="@R_DBVALUE" />
      </td>
    </tr>

  </xsl:template>

</xsl:stylesheet>
