Spezifikation von Druckdokumenten (Teil 2)

Im ersten Teil meiner kleinen Blogserie zum Thema Dokumentenspezifikation, habe ich Ihnen bereits den allgemeinen Aufbau sowie den Bereich „Daten“ vorgestellt. Diesmal beschäftigen wir uns unter anderem mit der Verknüpfung von „Daten“ und „Layout“.

Das „Layout“
Im Bereich „Layout“ unserer Druckspezifikation müssen wir uns mit vier Themen auseinandersetzen: der Struktur, Variablen, Fixtexten und Blöcken.

Der erste Block „Dokumentenname“ wird eigentlich nur als „Überschrift“ genutzt, d.h. in unserem Fall dient er nur zum Festhalten, wie unser Dokument heißt, also z.B. „Rechnungsübersicht“, „Angebot X“, … In der „Kopfzeile“ wird der Bereich beschrieben, der auf JEDER Seite oben angedruckt werden soll. Dies könnte z.B. der Text „Rechnungsübersicht Oktober 2012“ sein. Die darin enthaltenen Informationen können sich auch von Seite zu Seite unterscheiden. In solchen Fällen müssen Sie den Namen „Kopfzeile“ durch z.B. „Kopfzeile Seite 2+“ ersetzen. Damit erhalten Sie erst ab der 2ten Seite eine Kopfzeile.
Nach der „Kopfzeile“ folgt der „Kopfbereich“. Hier werden gerade in zu verschickenden Dokumenten typischerweise der Absender, Empfänger und  der Betreff des Briefes definiert. Im „Detailbereich“ werden dann, wie der Name schon sagt, die eigentlichen Inhalte des Dokuments beschrieben.
Den Abschluss bilden „Fußbereich“, mit Texten wie z.B. „Mit freundlichen Grüßen, …“, und die „Fußzeile“. Analog zur „Kopfzeile“ werden in der „Fußzeile“ die Texte festgehalten, die auf jeder Seite unten angedruckt werden, z.B.  typischerweise die Seitenzahl und/oder Rechtsträger.

Da eine Einteilung in diese 6 Hauptbereich selten ausreicht, benötigen wir weitere Modellierungsmöglichkeiten, nämlich Gruppen und Verschachtelungen. Viele Dokumente enthalten solche Konstrukte. Im einfachsten Fall sind dies Aufzählungen, wie z.B. „Sie haben folgende Waren bei uns bestellt -> Liste aller Bestellpositionen“. Da zur Beschreibung jeder Bestellposition die Attribute „Artikelnummer“, „Artikelbezeichnung“ etc. wiederholt angedruckt werden, heißt dieser Bereich Wiederholgruppe oder kurz Gruppe. Klassische Wiederholgruppen sind Tabellen.

Die einzelnen Bereiche einer Gruppe (in Abbildung 2 innerhalb des Detailbereichs des Dokuments) besteht aus den Unterbereichen „Gruppenname“ (analog dem „Dokumentennamen“), der „Kopfzeile Gruppe“ mit den Überschrift von Tabellen oder anderen Bezeichnung, dem „Detailbereich Gruppe“ mit den einzelnen Daten der Tabelle oder Auflistungen usw., sowie dem „Fußbereich Gruppe“ in dem Summen, Zusammenfassungen usw. erfasst werden.
Sollten diese Möglichkeiten zur Beschreibung einer Tabelle nicht ausreichen, so können mehrere Gruppen auch ineinander geschachtelt werden oder sequenziell hintereinander folgen.

 

Nachdem wir nun die Möglichkeit besitzen, komplizierte Strukturen abzubilden, können wir uns langsam um den konkreten Inhalt kümmern. Um den Inhalt zu beschreiben, brauchen wir Variablen und Fixtexte. Die Variablen dienen dabei als Platzhalter, in welche bei der Erstellung des Dokuments die konkreten Daten gefüllt werden. Fixtexte sind Texte, die auf jedes Dokument gedruckt werden. Ausnahme: es existiert eine Druckentscheidung die definiert, unter welchen Bedingungen der eine Fixtext gedruckt wird und wann ein Alternativtext gedruckt wird (mehr dazu im 3. Teil der Blockserie). Variablen und Fixtexte können zu logischen Blöcken zusammengefasst werden. Dies kann einerseits die Lesbarkeit erhöhen, andererseits können Regeln (Druckentscheidung, Datenherleitung, usw.) direkt mit diesen Blöcken verknüpft werden.

Doch füllen wir tatsächlich den Wert des Attributes „Geschlecht“ (z.B. Mann, Frau) eines Kunden in die Variable „Anrede Empf.“? Wahrscheinlich nicht, denn es wäre besser wenn wir dort „Herr“ bzw. „Frau“ drucken würden. Und was ist mit unseren Fixtexten? Diese Fragen beantworte ich ihnen im letzten Teil.

Hier finden Sie den 3. Teil der Blogserie „Spezifikation von Druckdokumenten“.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert