You are not logged in.

  • Login

1

Wednesday, March 10th 2010, 5:22pm

xml -> xsl Tabelle Hier einzelne Zellen

Hallo @ all ;o)

jeder fängt mal an - übt bitte Nachsicht mit mir.
Ich habe Daten in einer xml gespeichert. Diese Daten beinhalten die Sicherungsergebnisse des lfd. Jahres, Monat und Tag. Die XML wird aus VB.NET gefüllt (täglich). Das klappt so weit sehr gut.

Jetzt möchte ich die xml Daten in einer Tabelle im IE - darstellen.
Hierzu habe ich

XML Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?xml version="1.0" ?>
<!-- Dateiname: xmlsample.xml -->
<?xml-stylesheet type="text/xsl" href="xmlsamplelist.xsl" charset="ISO-8859-1"?>
 
<Serverliste>
   <Seitentitel>Beispiel XML-Seite</Seitentitel>
   <Ueberschrift>Sicherungsergebnisse fuer den Monat Maerz 2010</Ueberschrift>
   <Zusatz>RITS</Zusatz>
   <Eintrag>
      <Server>n2030711</Server>
      <DST>Dienstort</DST>
      <Monate>
          <Monat>
             <Tage>
                 <Tag nr="8">unvollständig</Tag>
                 <Tag nr="9">fehlerhaft</Tag>
                 <Tag nr="10">erforlgreich</Tag>
             </Tage
       </Monate>
   </Eintrag>

...
...



MIt Hilfe einer xsl lasse ich mir das Ganze in der Tabelle anzeigen. okay

Mein Frage:
Wie kann ich das ganze so gestallten, das ich die MOnatsübersicht farbig gestallten kann´und dabei die "Rohgrunddaten" der xml nicht schon mit html Tags befeuere


Also die Zelle erfolgreich z.B. Grün, unvollständig - gelb und fehlerhaft rot, Samstag und Sontag grau.
IN der TAbelle sind 50 Sicherungsergebnisse (Zeilen und die jeweilige Anzahl von Tagen des jeweiligen Monats in Spalten

Geht das überhhaupt????????

Danke euch für ernstgmeinte Anworten.

Gruß
Werner

Tips wie google.de etc. kann ich gerne verzichten (hab ich schon) un keine ensprechende Seite gefunden ;o)

2

Saturday, March 13th 2010, 8:38am

mit CSS kann Html selber noch nachträglich auf eigne Bedürfnisse anpassen werden
In den Browsern sind schon ein paar Vorgaben eingesetzt aber keine Farben
bei der Umwandlung von Xml in Html kann das CSS eingesetzt werden

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<?xml version="1.0" encoding='ISO-8859-15'?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
	<xsl:output indent="yes" method="html"/>
	<xsl:template match="/">
		<html>
			<style>
			table 	{
					border: 2px solid black;
					margin-Left: 25%;
					margin-rigth: 25%;
					width:50%;
					}
			h1		{
					text-align:center;
					}
			td 		{
					border: 2px solid black;
					}
			th 				{
							border: 2px solid black;
							}
/*#xxx entspricht tag mit id attribut xxx also id="xxx" */
			#unvollständig { 
					       color: white;
						   background: red;
						   }
			#fehlerhaft    { 
						   color: white;
						   background: orange;
						   }
			#erforlgreich  {
						   color: white;
						   background: green;
						   }
		</style>
			<xsl:apply-templates select="Serverliste"/>
		</html>
	</xsl:template>


	<xsl:template match="Serverliste">
		<h1>
			<xsl:value-of select="Ueberschrift"/>
		</h1>
		<xsl:apply-templates select="Eintrag"/>
	</xsl:template>

	<xsl:template match="Eintrag">
		<xsl:apply-templates select="Monate"/>
	</xsl:template>

	<xsl:template match="Monate">
		<xsl:apply-templates select="Monat"/>
	</xsl:template>
	<xsl:template match="Monat">
		<table>
			<caption>Auslistung</caption>
			<xsl:apply-templates select="Tage"/>
		</table>
	</xsl:template>
	<xsl:template match="Tage">
		<tr>
			<th>NR</th>
			<th>Zustand</th>
		</tr>
		<xsl:apply-templates select="Tag"/>
	</xsl:template>

	<xsl:template match="Tag">
		<tr>
			<td>
				<xsl:choose>
					<xsl:when test=".='unvollständig'">
						<xsl:attribute name="id">unvollständig</xsl:attribute>
					</xsl:when>
					<xsl:when test=".='fehlerhaft'">
						<xsl:attribute name="id">fehlerhaft</xsl:attribute>
					</xsl:when>
					<xsl:when test=".='erforlgreich'">
						<xsl:attribute name="id">erforlgreich</xsl:attribute>
					</xsl:when>
				</xsl:choose>

				<xsl:value-of select="@nr"/>
			</td>
			<td>
				<xsl:value-of select="."/>
			</td>
		</tr>
	</xsl:template>
</xsl:stylesheet>


das Ergebnis ergibt ein HTML code

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<html>
  <style>
			table 	{
					border: 2px solid black;
					margin-Left: 25%;
					margin-rigth: 25%;
					width:50%;
					}
			h1		{
					text-align:center;
					}
			td 		{
					border: 2px solid black;
					}
			th 		{
					border: 2px solid black;
					}
		#unvollständig { color: white; background: red; }
		#fehlerhaft { color: white; background: orange; }
		#erforlgreich { color: white; background: green; }
		
  </style>
  <h1>Sicherungsergebnisse fuer den Monat März 2010</h1>
  <table>
    <caption>Auslistung</caption>
    <tr>
      <th>NR</th>
      <th>Zustand</th>
    </tr>
    <tr>
      <td id="unvollständig">8</td>
      <td>unvollständig</td>
    </tr>
    <tr>
      <td id="fehlerhaft">9</td>
      <td>fehlerhaft</td>
    </tr>
    <tr>
      <td id="erforlgreich">10</td>
      <td>erforlgreich</td>
    </tr>
  </table>
</html>


falls weiter Fragen ICQ 567877710

Similar threads

Social bookmarks