von
Feature der Woche: Wiederholender Tabellenkopf (2)
Nachdem ich letzte Woche Tabellenkopf (und
-Fuß) über <Tablehead>
(und das Gegenstück <Tablefoot>
) gezeigt habe, wird
diese Woche ein dynamischer Tabellenkopf erzeugt. Die Variante aus letzter
Woche und diese Variante können kombiniert werden.
<Tr sethead="yes" backgroundcolor="lightgray">
<Td>
<Paragraph>
<Value>Neuer Kopf 2</Value>
</Paragraph>
</Td>
</Tr>
Die »Magie« steckt in sethead="yes"
in der Tabellenzeile. Dadurch wird diese
Zeile nun auf der nächsten Seite ganz oben wiederholt, direkt unterhalb eines
eventuell vorhandenen statischen Tabellenkopfs. Das eignet sich sehr gut für
Zwischenüberschriften oder Abschnitte in Tabellen.
Ein etwas konstruiertes Beispiel ist folgendes:
<Layout xmlns="urn:speedata.de:2009/publisher/en">
<Pageformat width="100mm" height="60mm"/>
<Options mainlanguage="German"/>
<Record element="data">
<PlaceObject>
<Table padding="1mm" stretch="max">
<Tablehead page="all">
<Tablerule color="black"/>
<Tr backgroundcolor="gray">
<Td>
<Paragraph>
<Value>Kopf statisch</Value>
</Paragraph>
</Td>
</Tr>
<Tablerule color="black"/>
</Tablehead>
<Loop select="7" variable="i">
<Tr>
<Td>
<Paragraph>
<Value>Zeileninhalt Zeile </Value>
<Value select="$i"/>
</Paragraph>
</Td>
</Tr>
</Loop>
<Tr sethead="yes" backgroundcolor="lightgray">
<Td>
<Paragraph>
<Value>Neuer Kopf 1</Value>
</Paragraph>
</Td>
</Tr>
<Loop select="7" variable="i">
<Tr>
<Td>
<Paragraph>
<Value>Zeileninhalt Zeile </Value>
<Value select="$i"/>
</Paragraph>
</Td>
</Tr>
</Loop>
<Tr sethead="yes" backgroundcolor="lightgray">
<Td>
<Paragraph>
<Value>Neuer Kopf 2</Value>
</Paragraph>
</Td>
</Tr>
<Loop select="7" variable="i">
<Tr>
<Td>
<Paragraph>
<Value>Zeileninhalt Zeile </Value>
<Value select="$i"/>
</Paragraph>
</Td>
</Tr>
</Loop>
</Table>
</PlaceObject>
</Record>
</Layout>
Diese Datei (layout.xml
) wie gehabt übersetzen mit sp --dummy
, um eine
Datendatei mit dem Inhalt <data />
vorzutäuschen.