PERCON führt intern eine Reihe von Informationen, auf die der Benutzer über Kennwörter zugreifen kann. Diese Kennwörter können je nach Bedarf in Ausgabesätze oder Druckseiten eingefügt oder als Vergleichskriterium verwendet werden. Diese Informationen werden von PERCON mehrfach sowohl für die Eingabe(n) als auch für die Ausgabe(n) zur Verfügung gestellt.
Die von PERCON mitgeführten Zähler werden jeweils nach der entsprechenden Aktion erhöht oder verändert. Sie sind mit 0 initialisiert. Z.B. wird der Satzzähler der Eingabedatei nach dem Lesen eines Satzes, der Satzzähler der Ausgabedatei nach dem Schreiben eines Satzes in die Ausgabedatei erhöht. Dies ist zu beachten, wenn man sich in Anweisungen auf die Kennwörter bezieht. Folgende Kennwörter stehen zur Verfügung:
Bedeutung | Bezeichnung bei 1 | |
SET-GROUP-ATTRIBUTES | SELECT-INPUT- | |
Satzlänge | RECORD-LENGTH | RECLEN |
Blockzähler | BLOCK-COUNTER | BLKCNT |
Zeichenzähler | BYTE-COUNTER | BYTCNT |
Satzzähler | RECORD-COUNTER | RECCNT |
Seitenzähler | PAGE-COUNTER | nicht angebbar |
Datum | DATE | |
Zeit | TIME |
1Format und Länge der Kennwörter hängen von der PERCON-Anweisung ab, unter der das Kennwort verwendet wird. Siehe Syntaxbeschreibung der entsprechenden Anweisung.
Aufbereitung von Kennwörtern ab Ausgabelänge 1
Bei der Aufbereitung von Kennwörtern (außer DATE und TIME) in den Anweisungen SET-RECORD-MAPPING und SET-GROUP-ATTRIBUTES ist der Minimalwert für den Operanden OUTPUT-LENGTH gleich 1.
Die Angabe von OUTPUT-LENGTH=1 in Verbindung mit den Ausgabe-Formaten DECIMAL oder SIGNED-DECIMAL führt allerdings zu einem Semantikfehler (Meldung PER0007), da wegen der bei diesem Format vorhandenen Vorzeichenstelle mindestens der Wert 2 als Länge erforderlich ist.
Bei der Aufbereitung eines Kennworts dürfen gültige Stellen nicht abgeschnitten werden. Passt ein aufzubereitender Wert eines Kennworts auf Grund einer zu kleinen Ausgabelänge nicht in das Ausgabefeld, so wird der Konvertierungsschritt mit der Meldung PER0042 abgebrochen.
Hinweis zum Kennwort GROUP-COUNTER
Beim Gruppieren von Eingabesätzen werden Zähler geführt, die so genannten GROUP-COUNTER (siehe SET-GROUP-ATTRIBUTES-Anweisung "SET-GROUP-ATTRIBUTES Festlegen von Gruppenwechselbedingungen").
GROUP-COUNTER ist für die Gruppenstufen 1 bis 8 jeder Ausgabeeinheit verfügbar. Jeder Zähler ist durch seinen Dateikettungsnamen und durch eine Gruppenstufe eindeutig bestimmt.
Die Zähler sind mit 0 voreingestellt und werden zu folgenden Zeitpunkten aktualisiert:
Zähler auf 1 gesetzt
Nach dem Schreiben des Gruppenvorlaufs bzw. bei GROUP-HEADER=*NONE, wenn das Kriterium zum Schreiben des Gruppenvorlaufs gegeben ist.Zähler um 1 erhöht
Nach dem Lesen eines Eingabesatzes, wenn das Kriterium eines Gruppenwechsels nicht erfüllt ist.