Hallo zusammen.. ich versteh das mit den variablen einfach nicht wirklich. Kann mir jemand einen Denkanstoß geben??
folgender XML Ausschnitt ist die Basis:
<Kontodaten>
<Konto id="1">
<Kontonummer>123</Kontonummer>
<Inhaber>
<Kundennummer>15</Kundennummer>
</Inhaber>
<Anfangskapital>100</Anfangskapital>
</Konto>
</Kontodaten>
<Kontobewegungen>
<Konto id="1">
<Datum>2000-01-01</Datum>
<Uhrzeit>13:00:00</Uhrzeit>
<Wertangaben>-10</Wertangaben>
<KontonummerEmpfänger>179</KontonummerEmpfänger>
</Konto>
<Konto id="1">
<Datum>2001-02-01</Datum>
<Uhrzeit>10:35:01</Uhrzeit>
<Wertangaben>+10</Wertangaben>
<KontonummerAbsender>156</KontonummerAbsender>
</Konto>
<Konto id="1">
<Datum>2012-03-02</Datum>
<Uhrzeit>18:22:57</Uhrzeit>
<Wertangaben>-5</Wertangaben>
<KontonummerEmpfänger>167</KontonummerEmpfänger>
</ <Kontobewegungen>
Ich möchte nun mittels xsl alle Kontobewegungen für das Konto mit der ID=1 ausgeben. Inklusive Berechnungen. Also, Anfangskapital angeben und dann die Wertangaben addieren oder subtrahieren.
ich bekomm es nur hin mir die Daten anzeigen zu lassen:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="http://www.w3.org/TR/REC-html40">
<xslutput method="html"/>
<xsl:template match="EntenhausenerSparkasse">
<HTML>
<BODY>
<TABLE border="1" cellspacing="0" cellpadding="4">
<xsl:apply-templates select="Kontobewegungen">
</xsl:apply-templates>
</TABLE>
</BODY>
</HTML>
</xsl:template>
<xsl:template match="Kontobewegungen">
<td> <xsl:text> Kontobewegungen von Kontonummer: 1</xsl:text>
</td>
<TR>
<xsl:for-each select="Konto[@id='1']">
<tr> <xsl:text>Datum: </xsl:text>
<xsl:value-of select="Datum" /></tr>
<td> <xsl:text>Uhrzeit: </xsl:text>
<xsl:value-of select="Uhrzeit" /></td>
<td> <xsl:text>Einnahmen: </xsl:text>
<xsl:value-of select="Wertangaben" /></td>
<td> <xsl:text>Ausgaben: </xsl:text>
<xsl:value-of select="Wertangaben" /></td>
</xsl:for-each>
</TR>
<td>
<xsl:for-each select="Kontobewegungen/Konto[@id='1']">
<xsl:value-of select="sum(Wertangaben)">
</xsl:value-of>
</xsl:for-each>
</td>
</xsl:template>
folgender XML Ausschnitt ist die Basis:
<Kontodaten>
<Konto id="1">
<Kontonummer>123</Kontonummer>
<Inhaber>
<Kundennummer>15</Kundennummer>
</Inhaber>
<Anfangskapital>100</Anfangskapital>
</Konto>
</Kontodaten>
<Kontobewegungen>
<Konto id="1">
<Datum>2000-01-01</Datum>
<Uhrzeit>13:00:00</Uhrzeit>
<Wertangaben>-10</Wertangaben>
<KontonummerEmpfänger>179</KontonummerEmpfänger>
</Konto>
<Konto id="1">
<Datum>2001-02-01</Datum>
<Uhrzeit>10:35:01</Uhrzeit>
<Wertangaben>+10</Wertangaben>
<KontonummerAbsender>156</KontonummerAbsender>
</Konto>
<Konto id="1">
<Datum>2012-03-02</Datum>
<Uhrzeit>18:22:57</Uhrzeit>
<Wertangaben>-5</Wertangaben>
<KontonummerEmpfänger>167</KontonummerEmpfänger>
</ <Kontobewegungen>
Ich möchte nun mittels xsl alle Kontobewegungen für das Konto mit der ID=1 ausgeben. Inklusive Berechnungen. Also, Anfangskapital angeben und dann die Wertangaben addieren oder subtrahieren.
ich bekomm es nur hin mir die Daten anzeigen zu lassen:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="http://www.w3.org/TR/REC-html40">
<xslutput method="html"/>
<xsl:template match="EntenhausenerSparkasse">
<HTML>
<BODY>
<TABLE border="1" cellspacing="0" cellpadding="4">
<xsl:apply-templates select="Kontobewegungen">
</xsl:apply-templates>
</TABLE>
</BODY>
</HTML>
</xsl:template>
<xsl:template match="Kontobewegungen">
<td> <xsl:text> Kontobewegungen von Kontonummer: 1</xsl:text>
</td>
<TR>
<xsl:for-each select="Konto[@id='1']">
<tr> <xsl:text>Datum: </xsl:text>
<xsl:value-of select="Datum" /></tr>
<td> <xsl:text>Uhrzeit: </xsl:text>
<xsl:value-of select="Uhrzeit" /></td>
<td> <xsl:text>Einnahmen: </xsl:text>
<xsl:value-of select="Wertangaben" /></td>
<td> <xsl:text>Ausgaben: </xsl:text>
<xsl:value-of select="Wertangaben" /></td>
</xsl:for-each>
</TR>
<td>
<xsl:for-each select="Kontobewegungen/Konto[@id='1']">
<xsl:value-of select="sum(Wertangaben)">
</xsl:value-of>
</xsl:for-each>
</td>
</xsl:template>
Comment