18.5 Beispiel einer Drucksteuertabellendatei
Zur Illustration des Aufbaus einer Liste durch verschiedene Drucksteuertabellen sollen die Drucksteuertabellen des Programms "Teilestamm vollständig nach Teil" (113) dargestellt werden.
|
Tabelle 1:
|
Formaltabelle
|
|
K:PDV113,10#
|
Kopfzeile(n) der ersten Seite laden
|
|
U:PDV113,20#
|
Fußzeile(n) laden
|
|
O:PDV113,30#
|
Kopfzeile(n) der Folgeseiten laden
|
|
A:PDV113,40#
|
Abschlusszeile(n) laden
|
|
W:3#
|
Druckdichte=17 Zeichen pro Zoll
|
|
P:12,6#
|
Seitenlänge=72 Zeilen (pro Zoll 6 Zeilen).
|
|
Z:4,9,64,70#
|
oberer Blattrand=4, Textzeile=9, Fußzeile=64, unterer Blattrand=70
|
|
Tabelle 10:
|
Kopftabelle
|
|
|
Zunächst werden 3 Variablen aus dem Dateipuffer für die erste und letzte Druckzeile (Index 252) als Bestandteil der Kopfzeile ausgegeben. Im Anhang ist eine Beschreibung des Dateipuffers 252 enthalten.
|
|
V:1,252,1,C68#
|
Die Variable aus Dateipuffer 252, Position 1, soll als Zeichenkette mit 68 Zeichen, an der Position 1 ausgegeben werden. In Position 1 bis 68 sind Modulnummer, Versionsnummer und Programmbezeichnung erfasst.
|
|
V:69,252,69,C68#
|
Die Variable aus Dateipuffer 252, Position 69, wird als Zeichenkette mit 68 Zeichen, an der Position 69 ausgegeben. In Position 69 bis 136 des Dateipuffers 252 sind Datumsangaben erfasst.
Achtung
Die zwei eingelesenen Zeichenketten ergeben eine Länge von 136 Zeichen. Diese Länge kann nicht von jedem Drucker ausgedruckt werden.
|
|
V:128,,,P#
|
Die interne Seitennummer soll an der Position 128 ausgegeben werden.
|
|
D:1#
|
Ausdruck des bisherigen Druckpufferinhalts. Anschließend Löschen des Inhalts und Zeilenvorschub um eine Zeile.
|
|
F:1,C-,132#
|
Unterstreichen der Kopfzeile
Eine Zeichenkette, die mit 132 Strichen - gefüllt ist, soll an der Position 1 ausgegeben werden.
|
|
D:2#
|
Ausdruck des bisherigen Druckpufferinhalts. Anschließend löschen des Inhalts und Zeilenvorschub um 2 Zeilen.
|
|
B:1,PDV113,200,1,116#
|
Die Spaltenüberschrift für die Datensätze der Liste wird ausgedruckt. Ein 116 Zeichen langer Textblock aus der Drucksteuertabelle mit dem Tabellennamen PDV113 und der Tabellennummer 200 wird ab Position 1 eingelesen. Anschließend wird der Block an Position 1 ausgegeben. Bei diesem Textblock handelt es sich um den ersten Teil der Spaltenüberschrift der Liste.
|
|
D:1#
|
Ausdruck des Textblocks. Anschließend Löschen des Druckpufferinhalts und Zeilenvorschub um eine Zeile.
|
|
B:1,PDV113,200,151,121#
|
Ein 121 Zeichen langer Textblock aus der Drucksteuertabelle mit dem Tabellennamen PDV113 und der Tabellennummer "200" wird ab Position 151 eingelesen. Anschließend wird der Block an Position 1 ausgegeben. Bei diesem Textblock handelt es sich um den zweiten Teil der Spaltenüberschrift der Liste.
|
|
D:1#
|
Ausdruck des Textblocks. Anschließend Löschen des Druckpufferinhalts und Zeilenvorschub um eine Zeile.
|
|
F:1,C-,132#
|
Unterstreichen der Spaltenüberschrift
Eine Zeichenkette, die mit 132 Strichen - gefüllt ist, soll an der Position 1 ausgegeben werden. Dieser Trennstrich dient zur Abtrennung der Spaltenüberschriften von den Datensätzen.
|
|
D:1#
|
Ausdruck der Zeichenkette. Anschließend Löschen des Druckpufferinhalts und Zeilenvorschub um eine Zeile.
|
|
Tabelle 20:
|
Fußtabelle
|
|
M:Z70#
|
Zeilenvorschub auf Zeile 70, in der der Fuß beginnen soll. Es werden 3 Variablen aus dem Dateipuffer für die erste und letzte Druckzeile (Index 252) als Bestandteil der Fußzeile ausgegeben. Im Anhang ist eine Beschreibung des Dateipuffers 252 enthalten.
|
|
V:1,252,137,C68#
|
Die Variable aus Dateipuffer 252, Position 137, wird als Zeichenkette mit 68 Zeichen, an der Position 1 ausgegeben. In Position 137 bis 205 des Dateipuffers 252 sind Firmenname, Benutzername, Datum der ersten Druckzeile und die Uhrzeit erfasst.
|
|
V:69,252,205,C20#
|
Die Variable aus Dateipuffer 252, Position 205, wird als Zeichenkette mit 20 Zeichen an der Position 69 ausgegeben. In Position 205 bis 225 des Dateipuffers 252 ist der Text "Anzahl Sätze" erfasst.
|
|
V:88,255,269,N5#
|
Die Variable aus Dateipuffer 255, Position 269 wird als numerisches Feld mit 5 Stellen an der Position 88 ausgegeben. Der Dateipuffer 255 enthält programmindividuelle Angaben (hier: Anzahl gedruckter Sätze).
|
|
D:#
|
Ausdruck des Druckpufferinhalts. Anschließend Löschen des Inhalts. Es wird kein Zeilenvorschub durchgeführt.
|
|
Tabelle 30:
|
Folgekopftabelle
|
|
|
Die Folgekopftabelle hat im Wesentlichen denselben Aufbau wie der Kopf der ersten. Seite.
|
|
Tabelle 40:
|
Abschlusstabelle
|
|
|
Die Abschlusstabelle besteht aus einer Abschlusszeile und einem Fußteil, der identisch ist mit den Angaben der Fußtabelle. Zunächst werden für die Abschlusszeile zwei Zeichenketten und eine Variable aus der Datei für programmindividuelle Angaben (Index 255) ausgegeben.
|
|
M:3#
|
Zeilenvorschub um 3 Zeilen.
|
|
S:1,>> Ende der Liste <<#
|
Die angegebene Zeichenkette wird an der Position 1 ausgegeben.
|
|
V:44,255,269,N5#
|
Die Variable aus Dateipuffer 255, Position 269 wird als numerisches Feld mit 5 Stellen an der Position 88 ausgegeben. Der Dateipuffer 255 enthält programmindividuelle Angaben (hier: Anzahl Datensätze).
|
|
S:51,Teil(e) bearbeitet#
|
Die angegebene Zeichenkette wird an der Position 51 ausgegeben.
|
|
D:2#
|
Ausdruck des Druckpufferinhalts. Anschließend Löschen des Inhalts und Vorschub um 2 Zeilen.
|
|
V:1,252,240,C80#
|
Die Variable aus Dateipuffer 252, Position 240, wird als Zeichenkette mit 80 Zeichen, an der Position 1 ausgegeben. In Position 240 bis 320 des Dateipuffers 252 sind evtl. aufgetretene Fehlermeldungen erfasst.
|
|
D:#
|
Ausdruck des Dateipufferinhalts. Anschließend Löschen des Inhalts. Es wird kein Zeilenvorschub durchgeführt.
Die folgenden Operatoren sind identisch mit dem Inhalt der Fußtabelle.
|
|
M:Z70#
|
Zeilenvorschub auf Zeile 70, in der der Fußbereich beginnt. Es werden 3 Variablen aus dem Dateipuffer für die erste und letzte Druckzeile (Index 252) als Bestandteil der Fußzeile ausgegeben. Im Anhang ist eine Beschreibung des Dateipuffers 252 enthalten.
|
|
V:1,252,137,C68#
|
Die Variable aus Dateipuffer 252, Position 137,wird als Zeichenkette mit 68 Zeichen, an der Position 1 ausgegeben. In Position 137 bis 205 des Dateipuffers 252 sind Firmenname, Benutzername, Datum der ersten Druckzeile und die Uhrzeit erfasst.
|
|
V:69,252,205,C20#
|
Die Variable aus Dateipuffer 252, Position 205, wird als Zeichenkette mit 20 Zeichen, an der Position 69 ausgegeben. In Position 205 bis 225 des Dateipuffers 252 ist der Text "Anzahl Sätze" erfasst.
|
|
V:88,255,269,N5#
|
Die Variable aus Dateipuffer 255, Position 269 wird als numerisches Feld mit 5 Stellen an der Position 88 ausgegeben. Der Dateipuffer 255 enthält programmindividuelle Angaben.
|
|
D:#
|
Ausdruck des Druckpufferinhalts. Anschließend Löschen des Inhalts. Es wird kein Zeilenvorschub durchgeführt.
|
|
Tabelle 100:
|
Zeilendrucksteuertabelle
|
|
Q:!F,!L+4,1,M:F#
|
Überprüfung der aktuellen Druckzeile, um rechtzeitig einen Seitenvorschub durchzuführen. Es wird verglichen, ob die erste Fußzeile kleiner ist, als die aktuelle Zeile + 4. Mit anderen Worten: es wird überprüft, ob auf der Seite noch 3 Zeilen Platz ist, bis der Fuß beginnt. Um einen Datensatz, der zwei Zeilen benötigt, auszudrucken, ohne dass die zwei Zeilen auseinandergerissen werden, werden mindestens 3 Zeilen benötigt. Eine Zeile für den Zeilenvorschub und zwei Zeilen für den Datensatz. Ist der Platz kleiner als 3 Zeilen, ist also die Zeilennummer der aktuellen Zeile + 4 größer als die Zeilennummer der Fußzeile, dann wird ein Zeilenvorschub auf die Fußzeile durchgeführt. Dadurch wird die Fußzeile gedruckt, der Seitenumbruch vorgenommen und der Folgekopf der nächsten Seite gedruckt. Das Auseinanderreißen eines Datensatzes wird verhindert.
|
|
M:2#
|
Zeilenvorschub um 2 Zeilen.
|
|
C:1,6,F1,F1#
|
Kommentar.
Im folgenden Teil werden alle Daten aus der Datei "6 Teilestammsatz" gelesen und ausgegeben, die für die Liste relevant sind.
|
|
V:2,6,F3,F3#
|
Die Variable aus dem Dateipuffer 6 und Position laut DataDictionary für Feldnummer 3 wird an Position 2 ausgegeben. Dafür wird das Format verwendet, das im DataDictionary für das Feld mit der Nummer 3 beschrieben wird. Diese Variable ist die Teilenummer aus der Teilestammdatei. Alle weiteren Variablen sind ebenfalls aus der Teilestammdatei und werden nur noch in Kurzform erklärt.
|
|
V:19,6,F4,F4#
|
Bezeichnung an Position 19.
|
|
V:51,6,F7,F7#
|
Klassifizierung an Position 51.
|
|
V:68,6,F10,F10#
|
Teileart an Position 68.
|
|
V:71,6,F11,F11#
|
Teilegruppe an Position 71.
|
|
V:75,6,F12,F12#
|
Zeichnungsnummer an Position 75.
|
|
V:105,6,F1,F1#
|
Teilestatus an Position 105.
|
|
V:109,6,F2,F2#
|
Änderungsdatum an Position 109.
|
|
D:1#
|
Ausdruck des Druckpufferinhalts. Anschließend Löschen des Inhalts und Zeilenvorschub um eine Zeile. Pro Datensatz der Datei "6 Teilestammsatz" werden zwei Druckzeilen benötigt. Ab jetzt beginnt die zweite Druckzeile.
|
|
V:3,6,F13,F13#
|
Lagermaßeinheit an Position 3.
|
|
V:6,6,F15,F15#
|
Basismenge an Position 6.
|
|
V:19,6,F16,F16#
|
Losgröße an Position 19.
|
|
V:33,6,F17,F17#
|
Ausschussfaktor an Position 33.
|
|
V:40,6,F18,F18#
|
Beschaffungszeit an Position 40.
|
|
V:49,6,F19,F19#
|
Menge pro Beschaffungszeit an Position 49.
|
|
V:65,6,F20,F20#
|
Projektlaufzeit an Position 65.
|
|
V:75,6,F14,F14#
|
Dispositionsart an Position 75.
|
|
V:79,6,F21,F21#
|
Lieferantennummer an Position 79.
|
|
V:88,6,F22,F22#
|
Verrechnungspreis an Position 88.
|
|
V:100,6,F23,F23#
|
Preiseinheit an Position 100.
|
|
V:106,6,F24,F24#
|
Gewicht in kg an Position 106.
|
|
V:118,6,F25,F25#
|
Extra AP-Nummer an Position 118.
|
|
D:0#
|
Ausdruck des Druckpufferinhalts. Anschließend Löschen des Inhalts. Es wird kein Zeilenvorschub durchgeführt.
|
In dieser Liste werden pro Teilestammsatz zwei Druckzeilen benötigt. Dieser Sachverhalt ist an dem zweimaligen Ausdruck des Druckpufferinhalts innerhalb der Tabelle 100 erkennbar.
|
Tabelle 200:
|
Texttabelle
|
Hier stehen die Texte für die Spaltenüberschriften, die in den Tabellen 10 und 30 in zwei Blöcken à zwei Zeilen geladen werden. Jede Zeile ist bis zu 75 Zeichen lang.
