Das von MAREN angebotene Standard-Layout kann abgeändert oder auch ganz neu entworfen werden. Ein eigenes Layout muss in einer Datei hinterlegt werden. Der Dateiname kann frei gewählt werden (siehe auch „Dummy-Dateien“ (Installation mit IMON)). Die Datei muss die folgenden Attribute besitzen:
ACCESS-METHOD=SAM,RECORD-FORMAT=V,USER-ACCESS=ALL-USERS,ACCESS=READ
In einem Netzwerk muss die Datei bei Bedarf an jedem System vorhanden sein, wobei die Layouts unterschiedlich sein können. An allen Systemen, an denen diese Datei nicht existiert, wird das Standard-Layout verwendet.
In der Layout-Datei dürfen alle Zeichen verwendet werden, also auch alle Sonderzeichen und auch nicht-abdruckbare Zeichen. Wie der Ausgabebeleg dann tatsächlich auf dem Drucker ausgegeben wird liegt in der Verantwortung des MAREN-Administrators.
Die Anzahl der Sätze ist nicht beschränkt. Die einzelnen Sätze dürfen maximal 141 Zeichen (einschließlich Satzlängenfeld) lang sein.
Damit die Ausgabebelege mit aktuellen Werten versorgt werden können, wurden so genannte „Layout-Variable“ festgelegt. Sie sind 7 oder 8 Zeichen lang und beginnen mit dem &-Zeichen. Die Layout-Datei wird von MAREN nach diesen Variablen durchsucht. In jedem Satz der Layout-Datei dürfen an beliebigen Stellen beliebig viele Variable vorkommen, beschränkt nur durch die maximale Satzlänge.
Variable dürfen auch mehrfach vorkommen. Bei der Erstellung eines Ausgabebelegs wird die Layout-Datei satzweise sequenziell gelesen, alle Variablen werden durch aktuelle Werte ersetzt, und alle Sätze werden in die Ausgabedatei geschrieben.
Name | Länge | Bedeutung |
&ACCNT8* | 8 | ACCESS-COUNT |
&ACCOUNT | 8 | ACCOUNT |
&ADMFIEL | 8 | ADMINISTRATOR-FIELD |
&ADMFI2* | 16 | ADMINISTRATOR-FIELD-2 |
&ARCHUSA | 54 | FREE-POOL |
&AUDITV* | 3 | AUDIT |
&CHECNT* | 2 | CHECK-COUNT |
&CLOSEI* | 6 | CLOSE-INDICATOR |
&CRECAT* | 4 | CREATION-CATALOG-ID |
&CREDATE | 10 | CREATION-DATE |
&CREJOBN | 8 | CREATION-JOB-NAME |
&CRETIME | 8 | CREATION-TIME |
&CREUSID | 8 | CREATION-USER-ID |
&DEVNAM* | 4 | DEVICE-NAME |
&DEVTYPE | 8 | DEVICE-TYPE |
&DIRNAME | 54 | DIRECTORY-NAME |
&DIROVOL | 3 | DIRECTORY-ON-VOLUME |
&DOMAIN | 8 | DOMAIN |
&EXPADDR | 50 | EXPORT-ADDRESS |
&EXPDATE | 10 | EXPORT-DATE |
&EXPIRAT | 10 | EXPIRATION-DATE |
&FILENAM | 41 | FILE-NAME |
&FILSEQ* | 4 | FILE-SEQ |
&FIRSTV* | 6 | FIRST-VOLUME |
&FREDATE | 10 | FREE-DATE |
&FREELOC | 8 | FREE-LOCATION |
&HOMELOC | 8 | HOME-LOCATION |
&INITFL* | 3 | INITIALIZATION |
&LACACCO | 8 | LAST-ACC-ACCOUNT |
&LACCPUN | 8 | LAST-ACC-HOSTNAME |
&LACDATE | 10 | LAST-ACC-DATE |
&LACFFL* | 2 | LAST-ACC-FUNCTION-FLAG |
&LACFNAM | 8 | LAST-ACC-FUNCTION-NAME |
&LACJOBN | 8 | LAST-ACC-JOB-NAME |
&LACSNO* | 3 | LAST-ACC-SNO |
&LACTIME | 8 | LAST-ACC-TIME |
&LACTSN* | 4 | LAST-ACC-TSN |
&LACUSER | 8 | LAST-ACC-USER-ID |
&LATEMPL | 8 | Letzter Temporärer Lagerort |
&LAWRBCN | 10 | LAST-WRITE-BLOCK-CNT |
&LCLDATE | 10 | LAST-CLOSE-DATE |
&LCLTIME | 8 | LAST-CLOSE-TIME |
&OPENMOD | 8 | OPEN-MODE |
&ORDACCO | 8 | Auftraggeber Accountnummer |
&ORDCPUN | 8 | Auftraggeber Systemname |
&ORDJOBN | 8 | Auftraggeber Jobname |
&ORDTSN* | 4 | Auftraggeber TSN |
&ORDUSER | 8 | Auftraggeber Benutzerkennung |
&PASSWO* | 4 | PASSWORD |
®DATE | 10 | REGISTRATION-DATE |
&REMARKF | 24 | REMARK |
&REMAR2 | 10 | REMARK-2 |
&REMAR3 | 12 | REMARK-3 |
&RESCNT* | 4 | RESERVATION-COUNT |
&RESDATE | 10 | RESERVATION-DATE |
&SUBSAVE | 2 | SubSave # |
&SUBSEQU | 3 | SubSequence # |
&SVIDSFI | 15 | SVID / SFID from ARCHIVE/HSMS |
&TEMPLOC | 8 | TEMP-LOCATION |
&TODDATE | 10 | Erstellungsdatum des Belegs |
&TODTIME | 8 | Erstellungszeit des Belegs |
&USERACC | 12 | USER-ACCESS |
&USERFIE | 54 | USER-FIELD |
&USERIDE | 8 | USER-ID |
&VOLGROU | 32 | VOLUME-GROUP |
&VOLSEQ* | 4 | VOLUME-SEQUENCE |
&VOLSTAT | 8 | VOLUME-STATUS |
&VOLUME* | 6 | VOLUME-VSN |
Diejenigen Variablen, die mit einem Stern enden, können siebenstellig (ohne *) oder achtstellig (mit *) angegeben werden.
Da die Länge der Variablennamen (7 oder 8 Zeichen) meistens nicht mit der Länge der aktuellen Werte (2 bis 54 Zeichen) übereinstimmt, müssen beim Entwerfen des Layouts einige Regeln beachtet werden.
Fall 1:
Alle benötigten Variablen werden achtstellig (also ggf. mit *) angegeben, und (falls Länge > 8) rechts von den Variablen sind jeweils ausreichend viele Leerzeichen (Blanks) eingetragen, damit die aktuellen Werte in der vollen Länge Platz haben. Dann werden bei der Erstellung des Ausgabebelegs keine Textteile verschoben. Das hat den Vorteil, dass das Layout mit allen Textteilen (und speziell auch mit den Zeichen des rechten Randes) lagerichtig entworfen werden kann. Die aktuellen Werte der Längen 2 bis 6 werden rechts bis zur Länge 8 mit Leerzeichen aufgefüllt.
Beispiel
Die folgenden Layout-Zeilen: $&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$
$ VSN = &VOLUME* FSEQ = &FILSEQ* $
$ $
$ REMARK = &REMARKF $
$ ACCESS# = &ACCCNT* SHARE = &USERACC $
$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$
ergeben die folgenden Druckzeilen: $&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$
$ VSN = TAPE01 FSEQ = 0001 $
$ $
$ REMARK = FILE BACKUP FEBRUARY $
$ ACCESS# = 0005 SHARE = FOREIGN-READ $
$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$
Fall 2:
Wenn der aktuelle Wert einer Layout-Variablen nicht in der vollen Länge benötigt wird, dann kann die Ausgabelänge durch irgendein Zeichen ungleich Blank begrenzt werden. Dabei beträgt die Mindestlänge 8 Zeichen.
Beispiel
Von dem Dateinamen sollen immer nur die ersten 20 Zeichen ausgedruckt werden. Die folgende Layout-Zeile :| FILENAME = &FILENAM * |
ergibt dann bei dem aktuellen Wert FILE-BACKUP-LIST.FEBRUARY für Dateiname die Druckzeile:| FILENAME = FILE-BACKUP-LIST.FEB |
Fall 3:
Bei den Layout-Variablen mit einem Stern am Ende werden die aktuellen Werte standardmäßig bis zur Länge 8 mit Leerzeichen aufgefüllt. Wenn dieses Auffüllen nicht gewünscht wird, dann müssen die Variablennamen siebenstellig (also ohne *) angegeben werden.
Beispiel
Die folgenden Layout-Zeilen:+-----------------+
| &VOLUME/&FILSEQ |
+-----------------+
ergeben die folgenden Druckzeilen:+-------------+
| TAPE01/0001 |
+-------------+