NOPFB2-N und NOPXPL-A - SYSOUT-Dateinamen für BS2000 generieren

#### Search Results

Search

# NOPFB2-N und NOPXPL-A - SYSOUT-Dateinamen für BS2000 generieren

Dieser Abschnitt behandelt folgende Themen:

- Generieren von SYSOUT-Dateinamen für BS2000

- Vorschriften zur Codierung des Exits

- Verwendung bei der Löschung von Arbeitsdateien

- Beispiel

## Generieren von SYSOUT-Dateinamen für BS2000

Zur benutzerdefinierten Generierung von SYSOUT-Dateinamen im BS2000 kann der Exit `NOPFB2-N` in die Bibliothek `SYSEOR` gestellt werden. Der Exit existiert genau einmal im System und wird nur ausgeführt, falls er vorhanden ist; sonst wird die Standard-Namensgenerierung verwendet.

Der Exit wird mit der Parameterliste `NOPXPL-A` aufgerufen. Die erste Zeile des Exits muss somit lauten:

    DEFINE DATA PARAMETER USING NOPXPL-A

Bedeutung der Parameter in `NOPXPL-A`:

Parameter | Format/Länge | Verwendung
--- | --- | ---
`P-CALL-PLACE` | A3 | ein | Konstante `FSB` (Dateiname SYSOUT BS2000).
`P-RC` | N4 | aus | Rückgabe-Code:
|  |  | `0` | Funktion ok (Namensgenerierung ok).
|  |  | `1` | Es konnte kein Name generiert werden. Die Standard-Namensroutine von Entire Operations soll aufgerufen werden.
|  |  | `2` | Es konnte kein Name generiert werden. Die Aktion (Aktivierung) soll abgebrochen werden.
|  |  | Falls die Aktivierung durch die Namensroutine abgebrochen wird, so wird ein entsprechender Protokoll-Eintrag geschrieben.
`P-RT` | A66 | aus | Rückgabe-Text (wird nicht ausgewertet).
`P-OWNER` | A10 | ein | Eigentümer des Netzwerks.
`P-NETWORK` | A10 | ein | Job-Netzwerk.
`P-JOB` | A10 | ein | Job.
`P-RUN` | P13 | ein | Laufnummer.
`P-ACTIVATION-TIME` | T | ein | Aktivierungszeit des Netzwerks.
`P-EXECUTION-NODE` | N3 | ein | Entire System Server-Ausführungsknoten.
`P-EXECUTION-OPSYS` | A8 | ein | Betriebssystem des Entire System Server-Knotens.
`P-SYMBOL-TABLE` | A10 | ein | Name der definierten Symboltabelle.
`P-FSB-OBJECT-TYPE` | A5 | ein | Datei-Typ:
|  |  | `SO-C` | Aktuelle SYSOUT-Datei.
|  |  | `SO-P` | Vorherige SYSOUT-Datei.
|  |  | `SO-P1` | Vorherige SYSOUT-Datei, ohne Benutzerkennung.
|  |  | `SO-A` | Alle SYSOUT-Dateien eines Jobs.
`P-FSB-USERID` | A8 | ein | BS2000-User-ID.
`P-FSB-CATID` | A4 | ein | BS2000-Catid.
`P-FSB-SUFFIX` | A2 | ein | BS2000-Suffix.
`P-SYSOUT-FILE` | A54 | aus | Generierter Dateiname.

## Vorschriften zur Codierung des Exits

- Es müssen systemweit eindeutige Dateinamen erzeugt werden. Sonst ist der ordnungsgemäße Ablauf von Entire Operations nicht mehr möglich.

- Systemweit eindeutige Dateinamen ergeben sich durch gleichzeitige Verwendung der Felder `P-OWNER`, `P-NETWORK`, `P-RUN`, `P-JOB`, `P-FSB-SUFFIX`.

- Alle oben definierten Objekttypen müssen behandelt werden können.

- Außer beim Objekttyp `SO-P1` muss der Dateiname vollqualifiziert inklusive BS2000-Benutzerkennung erzeugt werden.

- Für den Typ `SO-A` muss eine Platzhalterzeichen-Dateiangabe erzeugt werden, die auf alle SYSOUT-Dateien eines aktiven Jobs zutrifft. Dieser Typ wird zum Löschen von Dateien verwendet.

- Das Feld `P-FSB-SUFFIX` wird übergeben und muss verwendet werden, um SYSOUT-Dateien eventueller Job-Wiederholungen unterscheiden zu können. Der Aufrufer stellt sicher, dass der Suffix für den jeweiligen aktiven Job eindeutig ist. Für den Objekttyp `SO-C` ist dieses Feld leer.

Anmerkung
Wird kein Dateiname zurückgegeben, wird für diesen Fall die Standard-Namensgenerierung angewendet.

## Verwendung bei der Löschung von Arbeitsdateien

Auch beim Löschen von Arbeitsdateien (bei der Deaktivierung oder Bereinigung) wird dieser Exit aufgerufen, falls er vorhanden ist. Dafür gilt folgendes:

- Auf jeden Fall wird versucht, auch Arbeitsdateien zu löschen, die den standardmäßigen Namenskonventionen von Entire Operations entsprechen, unabhängig von der Existenz des Exits.

- Es wird vorausgesetzt, dass der Exit die Laufnummer mit genau 5 Stellen generiert, die von Punkten eingeschlossen sind:

  - `aaa.00000.bbb` (Beispiel: `aaa.01234.bbb`)

  Dieses Muster wird für die Datei-Suche von Entire Operations durch ein Platzhalterzeichen ersetzt:

  - `aaa.00000.bbb --> aaa.*.bbb`

- Falls die Namenssyntax des Exits geändert wird, können Dateien nicht mehr gefunden werden, deren Namen vor der Änderung generiert worden sind. Es wird davon abgeraten, den Exit auszutauschen, während aktive Jobs im Betriebssystem laufen.

## Beispiel

    * NOPFB2-N
    * EXAMPLE EXIT FOR SYSOUT FILE NAME
    *
    * MODIFICATIONS:
    * 18.11.08 (139240) SYSOUT FILE NAME EXIT                       SN210
    * -------------------------------------------------------------------
    DEFINE DATA PARAMETER USING NOPXPL-A
    END-DEFINE
    * -------------------------------------------------------------------
    COMPRESS P-OWNER P-NETWORK P-RUN P-JOB
      INTO P-SYSOUT-FILE LEAVING NO SPACE
    IF P-FSB-OBJECT-TYPE NE 'SO-P1'
    * -- ALL OBJECT TYPES EXCEPT SO-P1  M U S T  HAVE A BS2000 USERID --
      COMPRESS '$' P-FSB-USERID '.' P-SYSOUT-FILE
        INTO P-SYSOUT-FILE LEAVING NO SPACE
    END-IF
    IF P-FSB-OBJECT-TYPE EQ 'SO-A'
    * -- ALL SYSOUT FILES FOR A JOB --
      COMPRESS P-SYSOUT-FILE '*'
        INTO P-SYSOUT-FILE LEAVING NO SPACE
    ELSE
      COMPRESS P-SYSOUT-FILE '.S' P-FSB-SUFFIX
        INTO P-SYSOUT-FILE LEAVING NO SPACE
    END-IF
    RESET P-RC        /* OK
    END

### On this page

- Generieren von SYSOUT-Dateinamen für BS2000
- Vorschriften zur Codierung des Exits
- Verwendung bei der Löschung von Arbeitsdateien
- Beispiel