992.01 Was ist eine Definition?
Der Listengenerator ist nicht nur dazu in der Lage einfache Listen, sondern auch sehr komplexe Auswertungen und Datenexporte zu generieren. Zwischen diesen verschiedenen Generierungsmöglichkeiten werden bei der Definition keine Grenzen gezogen. Eine Liste wird wie ein Export oder eine Auswertung definiert, ohne zuvor eine Entscheidung über Art und Verwendung treffen zu müssen. Aus diesem Grund nennen wir einen zukünftigen Datenexport, eine Liste oder eine Auswertung zunächst Definition. Dieser Begriff wird im folgenden häufig Verwendung finden und beschreibt immer die Zusammenstellung verschiedener Elemente zu einer Liste, einem Export oder einer Auswertung als spezielle Form einer Liste. Mit dem Listengenerator kann eine solche Definition aus verschiedenen Komponenten zusammengestellt und später verwendet werden.
Die Zusammenstellung einer Definition wird grundsätzlich im Modul 9921 Listen definieren (SIB-T01), die Verwendung dagegen im Modul 9922 Listen drucken (SIB-T02) bzw. über einen mit dem Listengenerator generierten infra-Menüpunkt (Kapitel 9921.23 Zusatzangaben) durchgeführt.
Elemente einer Liste
Da die Basis für den Listengenerator trotz der zahlreichen Zusatzfunktionen immer noch die Liste mit Ihren einzelnen Elementen ist und die Zusammenstellung einer Definition sich an diesen Elementen orientiert, werden an dieser Stelle zunächst diese Listenkomponenten beschrieben und auf die Möglichkeiten der Zusammenstellung dieser Komponenten mittels Listengenerator eingegangen. Das folgende Bild zeigt den Aufbau einer einfachen Liste mit den verschiedenen Grundelementen.

Abbildung: Beispielliste 1
Bevor die einzelnen Elemente der eben gezeigten Liste näher beschrieben werden, sei noch einmal kurz darauf hingewiesen, dass alle in der Online-Hilfe bzw. dem Handbuch gezeigten Beispiele bei der Installation des Listengenerators in Ihrem System mitinstalliert und aktiviert werden.
Die zuvor gezeigte Liste enthält die Grundelemente einer einfachen Listendefinition:
|
(1)
|
infra-Standard-Kopfzeile
Diese Zeile ziert jedes Blatt einer infra-Liste, die Sie mit den infra-Standardprogrammen ausdrucken können. Der Listengenerator unterstützt ebenfalls die Ausgabe dieser Zeile, in der Druckprogrammbezeichnung, Datum, Uhrzeit, Benutzer, Seitenzahl, etc. enthalten sind. Sie können die Ausgabe der Standard-Kopfzeile auf Wunsch deaktivieren oder die Position auf der Liste selbst bestimmen. Die Informationen innerhalb der Zeile werden in Abhängigkeit von Listenbreite und Schriftart automatisch zusammengestellt.
|
|
(2)
|
Listenkopf
Der Listenkopf wird als Anfang einer jeden Liste oder Auswertung gedruckt und ist eine Art Einleitung mit Informationen über den zu druckenden Listeninhalt. Bei infra:NET werden zwei Arten von Listenköpfen unterschieden. Der erste Listenkopf und der Folgekopf. Der erste Listenkopf ist der, der auf der ersten Seite einer Liste gedruckt wird. Auf jeder weiteren Seite wird ein sogenannter Folgekopf ausgegeben. Mit dem Listengenerator können Sie diese beiden Köpfe unterschiedlich gestalten, indem die Informationen, die im ersten Listenkopf enthalten sind, im Folgekopf einfach unterdrückt werden. Die Elemente im Listenkopf können Sie aus Texten, Textblöcken aus externen ASCII-Dateien, Datenfeldern oder Rechenfeldern frei zusammenstellen.
|
|
(3)
|
Spaltenüberschriften
Die Spaltenüberschriften sind in der Regel ein Element des Listenkopfes. Bei der Definition des Listenkopfes können Sie entscheiden, ob die Überschriften im Kopf eines jeden Blattes ausgegeben und evtl. mit einem Strich vom Rest der Liste getrennt werden sollen. Die Überschriften der einzelnen Spalten werden bei der Zusammenstellung der Listenzeilen angegeben.
|
|
(4)
|
Zeilendruck
Unter Zeilendruck versteht man sich wiederholende, zusammenhängende Zeilen, in denen Informationen über ein gewünschtes Objekt ausgegeben werden. Ein Objekt ist hierbei ein selektierter Datensatz oder eine Zusammenstellung von Datensätzen bei Koppelungen aus der infra-Datenbank. Für jedes gefundene und gewünschte Objekt wird der Zeilendruck wiederholt. Ein Zeilendruck kann dabei nicht nur eine Zeile auf der zu druckenden Seite in Anspruch nehmen, sondern sich über beliebig viele Zeilen erstrecken. Im Extremfall sogar über eine ganze Seite. Im zuvor gezeigten Beispiel umfasst ein Zeilendruck zwei Druckzeilen.
Die Informationen eines Zeilendrucks werden aus sogenannten Listenfeldern zusammengestellt. Ein Listenfeld kann ein Datenfeld aus einem Datensatz der infra-Datenbank, ein fester Text, ein Textblock aus einer externen ASCII-Datei, ein Rechenfeld aus einer Rechenregel oder eine Zeichenkette aus Füllzeichen, z.B. Linien oder Umrandungen, sein. Die Position der Listenfelder kann frei bestimmt werden.
Da in bestimmten Anwendungsfällen die Listenzeilen einer Liste je nach Informationsgehalt nicht immer gleich aufgebaut sein müssen, unterstützt der Listengenerator die Definition von bis zu 9 verschiedenen Zeilentypen, die in Abhängigkeit von bestimmten Bedingungen ausgedruckt werden. Typischer Anwendungsfall ist hier der Druck eines Fertigungsauftrags. Die Auftragspositionen enthalten je nach Zeilentyp andere Informationen, z.B. Zeiten bei Arbeitsgängen, Mengen bei Materialzeilen oder Kosten bei Kostenzeilen etc.
|
|
(5)
|
Listenabschluss
Der Listenabschluss wird dann ausgegeben, wenn keine weiteren Datensätze für den Zeilendruck gefunden werden. Auch hier können Sie die auszugebenden Informationen selbst aus den üblichen Elementen zusammenstellen. Hierbei sind feste Texte, ein Textblock aus einer externen ASCII-Datei, Datenfelder, Rechenfelder und Füllzeichen erlaubt. Zusätzlich stehen im Abschluss noch Statistikauswertungen über frei wählbare Datenfelder der ausgedruckten Datensätze zur Verfügung. So kann zum Beispiel das Minimum oder der Durchschnitt eines bestimmten Felds ermittelt werden.
|
|
(6)
|
Listenfuß
Der Listenfuß wird als Ende einer jeden Seite ausgegeben und kann ähnlich wie der Listenkopf frei zusammengestellt und an einer beliebigen Position ausgegeben werden.
|
|
(7)
|
infra-Standardfußzeile
Genau wie die infra-Standardkopfzeile kann die Standard-Fußzeile deaktiviert oder als Element des Listenfußes platziert werden. In der Regel enthält diese Zeile Angaben über Benutzer, Datum, Uhrzeit und Anzahl der bisher gedruckten Datensätze. Je nach Breite der Liste und Schriftart werden diese Informationen automatisch zusammengestellt.
|
Möglichkeiten einer Definition
Eine Definition kann über die zuvor beschriebenen Elemente einer Liste hinaus noch wesentlich mehr Funktionen beinhalten. Im folgenden wird eine etwas komplexere Definition einer Liste vorgestellt, in der neben den bekannten Grundelementen noch weitere Komponenten enthalten sind:

Abbildung: Beispielliste 2
|
(1)
|
Gruppenwechselkopf
Neben dem Listenkopf, der am Anfang jeder neuen Seite ausgegeben wird, erlaubt der Listengenerator die Definition sogenannter Gruppenwechselköpfe. Ein Gruppenwechselkopf wird immer dann ausgegeben, wenn entsprechend der Sortierung der auszugebenden Druckzeilen ein zuvor definierter Gruppenwechsel auftrat (im Beispiel: Wechsel des Lager). Zum Begriff "Gruppenwechsel und die damit verbundenen Aktionen der Listenausgabe siehe auch Kapitel 992.02 Begriffe und Verfahren, Abschnitt "Was ist ein Gruppenwechsel?".
Mit dem Listengenerator ist die Definition von bis zu 6 Gruppenwechseln möglich, ein Gruppenwechsel je Sortierfeld (siehe Kapitel 992.02 Begriffe und Verfahren, Abschnitt "Dateien, Felder und Sortierung - Datenzugriff mit System").
Ein Gruppenwechselkopf kann genau wie ein Listenkopf aus beliebigen Elementen zusammengestellt werden.
|
|
(2)
|
Spaltenüberschriften
Die Spaltenüberschriften wurden zuvor beim ersten Listenbeispiel als Teil des Listenkopfes beschrieben. In der zweiten Liste werden die Überschriften nun als Teil des Gruppenwechselkopfes ausgegeben. Sie können bei der Definition Ihrer Liste selbst entscheiden, ob und wo die Spaltenüberschriften ausgegeben werden. Die Überschriften können im Listenkopf, im Gruppenwechselkopf der ersten oder zweiten Gruppe usw. ausgegeben werden.
|
|
(3)
|
Zeilendruck
Der Zeilendruck findet bei der Verwendung von Gruppenwechseln in Gruppen statt. Alle Zeilen, die zu einer Gruppe gehören werden zwischen dem Gruppenwechselkopf und dem dazugehörigen -fuß gedruckt, sofern beide definiert sind.
|
|
(4)
|
Gruppenwechselfuß
Genau wie die Gruppenwechselköpfe können Gruppenwechselfüße zu jedem Gruppenwechsel definiert werden. Es können maximal 6 Gruppenwechsel definiert werden. Diese werden dann am Ende einer Gruppe ausgegeben. Ein Gruppenwechselfuß kann ebenfalls aus beliebigen Elementen zusammengestellt werden. Im obigen Listenbeispiel ist eine Besonderheit der Gruppenwechselfüße zu erkennen. Die Verwendung von Gruppensummenfeldern aus der Rechenregel. Das Gruppenwechselfußfeld im Beispiel "Lagerwert EK-bewertet" ist ein solches Gruppensummenfeld. Verknüpft mit einem beliebigen Daten- oder Rechenfeld (in diesem Fall mit dem Rechenfeld «EK-Wert gesamt») stellt es immer die Summe dieses Felds bezüglich der aktuellen Gruppe zur Verfügung (siehe Kapitel 9921.19 Rechenregeln definieren).
|
|
(5)
|
Listenabschluss
Der Listenabschluss funktioniert wie gehabt, nur eine Besonderheit tritt bei der Verwendung der im Gruppenwechselfuß beschriebenen Gruppensummenfelder im Abschluss auf. Das gleiche Gruppensummenfeld, das im Gruppenwechselfuß den Wert "Lagerwert EK-bewertet" beinhaltete, stellt nun, ohne zusätzlichen Aufwand bei der Definition, eine Summe über die gesamte Liste zur Verfügung ("EK-Bewertung aller Hauptlager").
|
Weitere Funktionen
Im folgenden wird ein kurzer Überblick über weitere Definitionsmöglichkeiten des Listengenerators gegeben:
Gruppenwechselelemente
Gruppenwechsel können für alle Sortierfelder einer selbst zusammengestellten oder einer Standard-Sortierfolge von infra:NET definiert werden. Die in diesem Zusammenhang neu entstandenen Listenelemente wurden bereits in diesem Kapitel beschrieben. Es sind dies Gruppenwechselköpfe und -füße mit Gruppensummenfeldern.
Selektionsbild
Für jede Definition kann ein Selektionsbild zusammengestellt werden. Dazu werden alle Felder aus der Leitdatei oder den Koppeldateien angegeben, die dem Benutzer die Eingrenzung der zu behandelnden Datensätze ermöglichen sollen. Sie können diese Selektionsfelder beliebig vorbelegen und/oder verbergen lassen, so dass dem Benutzer z.B. bewusst bestimmte Daten vorenthalten werden. Neben der üblichen von/bis Selektion können Sie auch sogenannte negative Selektionen definieren. Diese ermöglichen dem Benutzer die Auswahl der Datensätze, die nicht ausgegeben werden sollen. Und falls Sie zum Zeitpunkt der Definition noch nicht genau wissen sollten, über welche Felder Sie selektieren möchten, rufen Sie einfach bei der Anwahl Ihrer Definition ein oder mehrere temporäre Selektionsfelder auf den Selektionsbildschirm (siehe Kapitel 9922.01 Selektionsbildschirm - Listen drucken).
Dateikoppelungen
Da die infra-Datenbank in der Regel alle Daten, die in irgendeiner Form gespeichert werden müssen, so verteilt, dass möglichst keine Redundanzen entstehen, müssen zum Zeitpunkt eines Listendrucks, einer Auswertung oder bei einem Datenexporte eventuell Informationen aus verschiedenen Dateien zusammengesucht werden. Um aus mehreren Dateien gleichzeitig Daten zur Verfügung stellen zu können, muss der Listengenerator wissen, auf welche Datei er wie zugreifen soll. Dieses Wissen wird dem Listengenerator über sogenannte Koppelinformationen vermittelt. Koppelinformationen können von Ihnen selbst definiert werden, ohne dass Sie dabei auf die in der infra-Datenbank hinterlegten Koppelungen angewiesen sind. Alle Standard-Koppelungen können direkt, ohne eigene Angaben verwendet werden, da der Listengenerator bei der Installation alle Koppelungen aus der infra-Datenbank importiert und für Sie aufbereitet (siehe Abschnitt "Erster Programmstart"). Jede neue Koppelung muss von Ihnen einmal erfasst werden. Bei der nächsten Verwendung steht dann auch diese Koppelung als bekannte Koppelung zur Verfügung und kann direkt angewählt werden.
Eine Koppelung mit einer Datei kann auf verschiedene Arten erfolgen, zum Beispiel eindeutig oder mehrdeutig. Zusätzlich existiert noch eine negative Koppelart. Sie haben damit die Möglichkeit festzustellen, zu welchen Datensätzen es keine Koppelsätze gibt. Das ist zum Beispiel für Diagnoseauswertungen bezüglich der infra-Datenkonsistenz interessant. Mehr zum Thema "Dateikoppelungen" finden Sie in Kapitel 992.02 Begriffe und Verfahren, Abschnitt "Was sind Dateikoppelungen ?".
Rechenregeln
Neben den in der infra-Datenbank hinterlegten Informationen und festen Listentexten existiert oft der Wunsch nach zusätzlichen Informationen, die z.B. aus einer Berechnung entstehen oder abhängig von bestimmten Bedingungen ausgegeben werden sollen. Der Listengenerator bietet für solche Fälle die Definition einer Rechenregel für Ihre Liste, Ihre Auswertung oder Ihren Datenexport an. Dabei können Sie beliebige Rechnungen durchführen, Rechenfelder definieren und mit Werten versorgen, Konstanten definieren oder erst beim Druck der Liste durch den Benutzer eingeben lassen, Berechnungen abhängig von Bedingungen durchführen oder wiederholen und, und, und ...
Die so definierte Rechenregel wird vor jedem Zeilendruck einmal durchlaufen und stellt so immer aktuelle Werte für die Liste zur Verfügung. Um eine Rechenregel auch für weitere Definitionen zu verwenden, kann sie als Standard-Rechenregel gespeichert und in jede Definition importiert werden.
Datenexporte
Der Listengenerator stellt nicht nur Möglichkeiten zur Definition von Listen bzw. Auswertungen zur Verfügung, sondern erlaubt Ihnen auch die Zusammenstellung komplexer Datenexporte. So haben Sie die Wahl zwischen drei verschiedenen Exportarten:
|
Datensatzexport
|
Beim Datensatzexport werden komplette infra-Datensätze entsprechend dem definierten Satzaufbau im infra-DataDictionary exportiert. Dieser Exporttyp kann mit dem folgenden verknüpft werden.
|
|
Felddatenexport
|
Der Felddatenexport erlaubt Ihnen die Zusammenstellung eines Datenexports nach Ihren Bedürfnissen. Sie können die zu exportierenden Felder aus der Leitdatei oder den Koppeldateien, aus der Rechenregel oder aus festen Texten beliebig zusammenstellen. Zwischen den einzelnen Exportelementen können frei wählbare Trennzeichen, auch ASCII-Sonderzeichen, exportiert werden, ebenso zwischen den Datensätzen.
|
|
Word-Steuerdatei
|
Sie können mit dem Listengenerator eine Word-Steuerdatei für Serienbriefe erstellen lassen. Diese Steuerdatei kann ohne weitere Bearbeitung durch Word verarbeitet werden. Die Daten, die in Ihrer Steuerdatei zur Verfügung stehen sollen, können Sie beliebig zusammenstellen.
|
Protokollbildschirm
Um bei der Druckausgabe oder beim Datenexport verfolgen zu können, welche Daten momentan gedruckt bzw. exportiert werden, oder um eine Übersicht ohne Druckausgabe, z.B. für einen Probelauf, am Bildschirm zu erhalten, kann bei der Definition der Listenelemente entschieden werden, ob ein bestimmtes Feld in das Protokoll aufgenommen werden soll.
Schriftattribute
Bisher konnten infra-Listen nur relativ "trocken" in ein und derselben Schrift gedruckt und nicht durch Hervorhebungen übersichtlicher oder etwas freundlicher gestaltet werden. Außer wenn die Drucktabellen mit den infra-Applikationstools bearbeitet worden sind. Mit dem Listengenerator Version 5.00 können Sie nun für jedes zu druckende Feld beliebige Schriftattribute aus den durch infra:NET unterstützten Attributen auswählen. Falls Ihr Drucker es zulässt, können sie Ihre Listen auch mit Barcode drucken.
Beliebige Formulargrößen
Der Listengenerator unterstützt jede von Ihnen definierte Formulargröße im Rahmen der Variationsmöglichkeiten eines Standard-Druckers. Dies können DIN A4-Papier, Adressaufkleber, Produktetiketten, breite Listen usw. sein.
So können Sie z.B. auch mit einem Laserdrucker mehr als 70 Zeilen auf ein DIN A4-Formular drucken. Damit Sie diese Möglichkeit der freien Formulargestaltung nutzen können, müssen Sie allerdings ein paar Handgriffe bei der infra-Druckeranpassung vornehmen (Kapitel 9922.03 Anpassungen für variable Formulargrößen).
infra-Menüpunkte definieren
Falls Sie eine Auswertung, eine Liste oder einen Export öfter benötigen, zum Beispiel Routine-Auswertungen oder Erzeugung von Steuerdateien, können Sie bei der Definition angeben, dass Sie einen infra-Menüpunkt generieren möchten. Nach der Generierung können Sie dann Ihre Definition unter der angegebenen Menünummer aufrufen. Sie können jede freie infra-Menünummer für Ihre Definitionen verwenden. Zusätzlich können Sie veranlassen, dass der Selektionsbildschirm bei der Anwahl übergangen und/oder der Druck automatisch aktiviert wird.