Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

IS-CATALOGED-FILE( ) Katalogeintrag prüfen

&pagelevel(3)&pagelevel

Anwendungsgebiet: Datei-Informationen

Die Funktion IS-CATALOGED-FILE( ) prüft, ob es einen Katalogeintrag mit dem angegebenen Dateinamen gibt. Die Reaktion im Fehlerfall (ungültiger Dateiname usw.) kann vereinbart werden.

Format

IS-CATALOGED-FILE( )

IS-CAT-FILE( )

FILE = string_ausdruck

,ERROR-REPORTING = *PROC-ERROR-MECHANISM / *RETURN-FALSE

,ERROR-VARIABLE = *NONE / string_ausdruck

Ergebnistyp

BOOLEAN

Eingabeparameter

FILE = string_ausdruck
Bezeichnet eine Datei, muss also dem SDF-Datentyp <filename 1...54 without-gen-vers> entsprechen.

Ein Dateiname ohne Katalog- und/oder Benutzerkennung wird nach den Regeln des DMS vervollständigt:
Fehlt die Benutzerkennung, wird die Benutzerkennung des laufenden Auftrags (d.h. die aus dem SET-LOGON-PARAMETERS-Kommando) eingesetzt.
Fehlt die Katalogkennung, wird der Default-Pubset der Benutzerkennung eingesetzt.

ERROR-REPORTING =
Es kann vereinbart werden, ob im Fehlerfall die Fehlerbehandlung ausgelöst oder ob der Meldungsschlüssel der Fehlermeldung in einer S-Variablen abgelegt wird.

ERROR-REPORTING = *PROC-ERROR-MECHANISM
Im Fehlerfall wird die Fehlerbehandlung ausgelöst, siehe Abschnitt „Fehlerbehandlung“.

ERROR-REPORTING = *RETURN-FALSE
Im Fehlerfall wird das Ergebnis FALSE ausgegeben. Eine Fehlermeldung wird nicht ausgegeben. In die bei ERROR-VARIABLE = ... angegebene Variable wird der Meldungsschlüssel der Fehlermeldung geschrieben.

ERROR-VARIABLE =
Es kann eine S-Variable für den Meldungsschlüssel vereinbart werden. Der Meldungsschlüssel wird nur dann in die Variable geschrieben, wenn im Funktionsaufruf ERROR-REPORTING = *RETURN-FALSE angegeben wurde.

ERROR-VARIABLE = *NONE
Es wird keine S-Variable vereinbart.

ERROR-VARIABLE = string_ausdruck
Name der S-Variablen, in die der Meldungschlüssel der Fehlermeldung geschrieben wird. Es ist Folgendes zu beachten:

  • Wird der Variablenname direkt angegeben, muss er in Hochkommas eingeschlossen sein. Anderenfalls wird der Inhalt der Variablen als Variablenname interpretiert.

  • In die S-Variable wird nur geschrieben, wenn ein Fehler auftritt (Ergebnis=FALSE) und ERROR-REPORTING=*RETURN-FALSE angegeben wurde. Beispiel für mögliche Meldungsschlüssel: SDP0439, SDP0440 oder DMSxxxx.

  • Tritt beim Schreiben in die S-Variable ein Fehler auf, werden die entsprechenden Fehlermeldungen unabhängig von der Angabe in ERROR-REPORTING nach SYSOUT ausgegeben und die S-Variable enthält keinen Rückgabewert.

Ergebnis

TRUE
Die im Parameter FILE bezeichnete Datei ist katalogisiert.

FALSE
Die im Parameter FILE bezeichnete Datei ist nicht katalogisiert oder beim Aufruf mit ERROR-REPORTING=*RETURN-FALSE ist ein Fehler aufgetreten.

Fehlermeldung

SDP0439   LAENGE DES DATEI-NAMENS NULL ODER GROESSER ALS 54 
SDP0440   NAME '(&00)' KEIN DATEINAME ODER KEIN SPEZIFISCHER DATEINAME 
SDP0441   DVS-FEHLER '(&00)' BEIM AUFRUF DES FSTAT-MAKROS. 
          IM SYSTEM-MODUS: /HELP-MSG (&00) 

Beispiel 1

Eine Banddatei BAND.A soll gelesen werden. Zuvor muss geprüft werden, ob BAND.A schon katalogisiert ist oder ob BAND.A vor dem Importieren katalogisiert werden muss.

/IF (NOT IS-CATALOGED-FILE(FILE = 'BAND.A'))
/IMPORT-FILE SUPPORT=*TAPE(FILE-NAME=BAND.A,DEVICE-TYPE=...,VOLUME=...)
/END-IF

Beispiel 2

/DECLARE-VARIABLE NAME=(A(TYPE=*BOOL),B(TYPE=*STRING),C(TYPE=*BOOL))
/A = IS-CATALOGED-FILE(FILE='A_A',ERROR-REPORTING=*RETURN-FALSE,/
                                 ERROR-VARIABLE='B')
/C = IS-CATALOGED-FILE(FILE='A_A')
/ . . .
/SET-JOB-STEP
/SHOW-VARIABLE SELECT=*BY-ATTRIBUTES(INITIALIZATION=*ANY)

Ablaufprotokoll

% 1  1 /DECLARE-VARIABLE NAME=(A(TYPE=*BOOL), B(TYPE=*STRING), C(TYPE=*BOOL)) 
% 2  1 /A = IS-CATALOGED-FILE(FILE='A_A',ERROR-REPORTING=*RETURN-FALSE,ERROR-
VARIABLE='B') 
% 3  1 /C = IS-CATALOGED-FILE(FILE='A_A') 
%  SDP0440 NAME 'A_A' NOT A FILE NAME OR NOT A SPECIFIC FILE NAME 
%  SDP0431 ERROR 'SDP0440' IN BUILTIN FUNCTION 'IS-CATALOGED-FILE' 
%  SDP0239 ERROR DURING EVALUATION OF RIGHT SIDE OF ASSIGNMENT 
%  SDP0004 ERROR DETECTED AT COMMAND LINE: 3 IN PROCEDURE ':R:$CSLTOM.PROC' 
% 5  1 /SET-JOB-STEP 
% 6  1 /SHOW-VARIABLE SELECT=*BY-ATTR(INIT=*ANY) 
A = FALSE 
B = SDP0440
C = *NO-INIT 
*END-OF-CMD