Erweiterte Strukturen
3 Minuten Lesezeit
Hierarchische Gliederung
In Docusnap können Parent-Child-Beziehungen zwischen den Tabellen dargestellt werden. Die Abhängigkeiten zwischen den Tabellen können über Beziehungen oder Parameter umgesetzt werden. Die Parameter werden im Kapitel Spezielle Berichtstechniken erklärt.
Für das unten stehende Beispiel muss ein zusätzliches Datenband hinzugefügt und die Datenquelle tDomains vergeben werden.
Anschließend wird das Textfeld für die Ausgabe der Domäne angelegt. Im Titel wird immer nur ein Textfeld verwendet. Im Text-Editor wird Domäne geschrieben und daraufhin wird die Spalte DomainName hinzugefügt. Die Formatvorlage ist Titel.
Hierarchische Gliederung: Beziehungen
Beim Anlegen eines Berichtes werden bereits alle Beziehungen angelegt. Beim Child-Datenband werden die Beziehung und das Parent-Datenband als Hauptkomponente ausgewählt.
In diesem Bericht sollen die Rechner den Domänen zugeordnet werden. Im ausgeführten Bericht wird zuerst die erste Domäne ausgegeben und dann alle dazugehörigen Rechner. Dann wird die nächste Domäne ausgegeben mit allen zugeordneten Rechnern usw. Um diese Ausgabe zu erhalten, muss zwischen den beiden Datenbändern eine Beziehung definiert werden. Die Beziehungen, die in der Datenbank bestehen, werden in den Berichte-Designer mitgeladen. Beziehungen, die noch nicht bestehen, können angelegt werden. Bei den Beziehungen gibt es immer eine Haupt- und eine Detail-Komponente. Die Detail-Komponente ist das Band, das die Daten enthält, die zugeordnet werden. Bei diesem Beispiel wird das Datenband mit den Rechnern als Detail-Komponente verwendet. Die Haupt-Komponente ist das Datenband, das die Domäne enthält. Die Beziehung, die verwendet wird, steht bei der Detail-Komponente. Daher ist die Beziehung bei der Tabelle tHosts eingetragen. Das Icon identifiziert eine Beziehung. Der Name der Beziehung setzt sich immer aus dem Namen der Tabelle der Haupt-Komponente und aus dem Namen der Tabelle der Detail-Komponente zusammen. Bei diesem Bericht heißt die Beziehung tDomainstHosts.
Durch Doppelklick auf das Datenband mit den Rechnern wird der Dialog Daten einstellen geöffnet. In diesem Dialog kann die Beziehung ausgewählt werden. Durch Klick auf die Option Beziehung werden alle Beziehungen angezeigt, die diese Tabelle besitzt. In diesem Fall gibt es nur eine Beziehung zur Tabelle tDomains. Die Beziehung tDomainstHosts wird ausgewählt. Durch Doppelklick auf die Beziehung wird die Beziehung ausgewählt und der Dialog geschlossen. Wenn die Beziehung nur markiert wird, bleibt der Dialog geöffnet. Um noch weitere Einstellungen machen zu können, sollte die Beziehung durch einfachen Klick markiert werden.
Als nächstes muss die Hauptkomponente gewählt werden. Die Hauptkomponente gibt an, auf welches Band sich diese Beziehung bezieht. Die Beziehung repräsentiert nur die Verbindung zwischen den Tabellen. Bei Berichten mit mehreren Datenbändern muss der richtige Name gesucht werden. Der Name des Datenbandes steht links im blauen Rand des Datenbandes. In diesem Bericht gibt es nur ein weiteres Datenband. Dieses Datenband wird ausgewählt. Durch Klick auf die Schaltfläche OK werden die Beziehungen und die Haupt-Komponente übernommen.
Typen mehrsprachig ausgeben
Da Docusnap ein zweisprachiges Programm ist, werden die Typen auf Deutsch und auf Englisch gespeichert. In der Datenbankstruktur werden dafür zwei zusätzliche Tabellen verwendet. Es existiert einerseits die eigentliche Tabelle, in der sich die Daten befinden und zusätzlich eine Tabelle Type mit der Bezeichnung und die Tabelle TypeText, in der die deutsche und die englische Bezeichnung gespeichert wurde.
In jedem Bericht wird die Variable LanguageID angelegt. Diese Variable enthält entweder 0 für Deutsch oder 1 für Englisch, je nachdem, welche Sprache in diesem Bericht eingestellt wurde. Durch diese Variable kann bei den Typen die jeweilige Sprache ausgegeben werden.
Das SQL-Statement der Datenquelle muss abgeändert werden, um die Typenbezeichnung auch ausgeben zu können. Ein Beispiel für das neue SQL-Statement anhand des Rechner Typs:
Select tHosts.*, TypeText as Type
from tHosts, tHostTypes, tHostTypeText
where tHosts.HostTypeID = tHostTypes.TypeID and tHostTypes.TypeID = tHostTypeText.TypeID and
LanguageID = {LanguageID}
- Über die Schaltfläche Alle Spalten auslesen wird die zusätzliche Spalte hinzugefügt.
- Anschließend werden die Textfelder für den Text und die Überschrift kopiert. Dann können die Überschrift und die gewählte Spalte geändert werden.