Dienstprogramme usw. sind in der Regel unter einer System-Standardkennung katalogisiert. Sollen solche Programme oder Prozeduren genutzt werden, kann der Zugriff auf den Benutzerkatalog umgangen werden, indem diese Standardkennung dem Dateinamen vorangestellt oder die Standardkennung durch Voranstellen des $-Zeichens abgekürzt wird. Dabei muss Folgendes beachtet werden:
Ist der Dateiname durch Punkte in Teilnamen gegliedert, muss die System-Standardkennung mit „$.“ abgekürzt werden.
Ist der Dateiname nicht gegliedert, braucht das $-Zeichen nicht durch einen Punkt vom Dateinamen getrennt zu werden.
Soll auf eine Datei unter der System-Standardkennung zugegriffen werden, und wird dem Dateinamen weder „$.“ noch „$“ vorangestellt, sucht das DVS diese Datei zunächst im Benutzerkatalog der Default-Benutzerkennung des Auftrags. Ist diese Suche erfolglos, führt das DVS bei Kommandos wie START-EXECUTABLE-PROGRAM und CALL-PROCEDURE automatisch den „Secondary Read“ durch, einen zweiten Lesezugriff auf den Katalog der System-Standardkennung.
Dieses „Zweite Lesen“ kann auch für die OPEN-Verarbeitung mit dem Operanden OPTION=GLODEF im FCB-Makroaufruf vereinbart werden.
Es sollte möglichst wenig Gebrauch von der „Secondary-Read“-Funktion gemacht, sondern die Abkürzungsmöglichkeiten für die System-Standardkennung ($, $.) genutzt werden, da auf diese Weise die Zahl der Katalogzugriffe reduziert werden kann.
Beispiel 1: Makro-Zugriff auf Dateien unter System-Standardkennung / Secondary Read
katalogisierte Dateien: |
|
| |
| |
| |
| |
Standardkennung: |
|
Es bedeuten:
| erster Katalogzugriff |
| zweites Lesen (Secondary Read) |
| erfolgloser Katalogzugriff |
| Treffer |
| Fehlermeldung |
| Fehlermeldung, eine Benutzerkennung $DAT. existiert nicht! |
Beispiel 2: Kommando-Zugriff auf Dateien unter System-Standardkennung/Secondary Read
katalogisierte Dateien: |
|
| |
| |
| |
| |
Standardkennung: |
|
Es bedeuten:
| erster Katalogzugriff |
| zweites Lesen (Secondary Read) |
| erfolgloser Katalogzugriff |
| Treffer |
| Fehlermeldung |
| Fehlermeldung, eine Benutzerkennung $DAT. existiert nicht! |
Beispiel 3: Kommando-Zugriff auf Dateien unter System-Standardkennung/Secondary Read
/show-file-attributes file-name=edt ——————————————————————————————————— (1) % 3 :2WR3:$A1234.EDT %:3WR3: PUBLIC: 1 FILE RES= 3 FRE= 2 REL= 0 PAGES /start-exec-program from-file=edt ———————————————————————————————————— (2) % BLS0518 INVALID FORMAT OF LOAD MODULE. COMMAND REJECTED % NRTT101 ABNORMAL JOBSTEP TERMINATION BLS0518 /start-exec-program from-file=$edt ———————————————————————————————————— (3) % BLS0500 PROGRAM 'EDT', VERSION '17.0A10' OF '2009-03-06' LOADED % BLS0552 COPYRIGHT (C) FUJITSU TECHNOLOGY SOLUTIONS 2009. ALL RIGHTS RESERVED : % EDT8000 EDT TERMINATED /show-file-attributes $edt ———————————————————————————————————————————— (4) % 6 :3WWW:$TSOS.EDT %:3WWW: PUBLIC: 1 FILE RES= 6 FRE= 2 REL= 0 PAGES
(1) | Für die Benutzerkennung $A1234 ist eine Datei „EDT“ katalogisiert. |
(2) | Die Datei „EDT“ enthält kein ablauffähiges Programm, das Kommando START-EXECUTABLE-PROGRAM wird zurückgewiesen. |
(3) | Es wird der Dateiaufbereiter $EDT aufgerufen, der unter der System-Standardkennung katalogisiert ist. |
(4) | Das Kommando SHOW-FILE-ATTRIBUTES zeigt den Katalogeintrag des Dateiaufbereiters $EDT. |