La commande DELETE est utilisée pour supprimer un enregistrement d’un fichier VSAM – KSDS et RRDS.
Syntaxe:
Vous trouverez ci-dessous la syntaxe de la commande DELETE.
EXEC CICS DELETE
FILE('filename')
RIDFLD(data-area) [RBA|RRN]
KEYLENGTH(data-value)
[GENERIC|NUMERIC(rec-number)]
END-EXEC.
Les enregistrements des fichiers VSAM KSDS et RRDS peuvent être supprimés, mais pas des fichiers VSAM ESDS.
L’option NUMREC renverra le nombre d’enregistrements supprimés lors d’une suppression GENERIC.
KEYLENGTH doit être spécifié pour une suppression GENERIC.
La commande DELETE peut être émise pour supprimer des enregistrements d’un ensemble de données de deux manières :
- Émis après une commande READ avec l’option UPDATE pour supprimer l’enregistrement lu.
Syntaxe :EXEC CICS DELETE
FILE('nomfichier')
END-EXEC - Émis avec l’option RIDFLD lorsqu’il n’y a pas d’option READ avec UPDATE préalable. Cela supprimera l’enregistrement dont la clé correspond au RIDFLD.
Syntaxe :EXEC CICS DELETE
FILE('nomfichier')
RIDFLD(zone-donnee)
KEYLENGTH(valeur-donnee)
END-EXEC
Voyons les paramètres utilisés dans la commande DELETE.
- FILE(nomfichier)
Spécifie le nom du fichier auquel accéder. - RIDFLD(zone-donnee)
Spécifie le champ d’identification de l’enregistrement. Il porte le nom de la zone de données contenant la clé de l’enregistrement que l’on souhaite supprimer. - KEYLENGTH(valeur-donnee)
Spécifie la longueur (demi-mot binaire) de la clé qui a été spécifiée dans l’option RIDFLD
Exemple:
Voyons un exemple de programme CICS pour la commande DELETE.
IDENTIFICATION DIVISION.
PROGRAM-ID. IBMMF.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-REC-LEN PIC S9(4) COMP.
01 WS-KEY-LEN PIC S9(4) COMP.
01 WS-REC-KEY PIC 9(6).
01 WS-REC-DATA PIC X(80).
01 WS-DEL-REC PIC S9(4).
PROCEDURE DIVISION.
MOVE '502258' TO WS-REC-KEY.
MOVE 6 TO WS-KEY-LEN.
EXEC CICS DELETE
FILE('STDLST')
RIDFLD(WS-REC-KEY)
KEYLENGTH(WS-KEY-LEN)
GENERIC
NUMREC(WS-DEL-REC)
END-EXEC.
La description:
Cet exemple pour supprimer plus d’un enregistrement. Cela peut être fait en utilisant l’option Générique dans la commande Supprimer, où tous les enregistrements qui satisfont aux critères génériques seront supprimés. NUMREC contiendra le nombre d’enregistrements supprimés. Le champ mentionné ici doit être un demi-mot binaire (S9(4) comp).
Supprimer les conditions d’exception de la commande :
Exception | La description |
---|---|
DISABLED | Un fichier est désactivé |
NOTOPEN | Le fichier n’est pas ouvert. |
NOTAUTH | Une vérification de la sécurité des ressources a échoué sur FILE(nomfile).(c’est-à-dire que l’utilisateur n’a pas suffisamment d’autorisations pour accéder au fichier). |
FILENOTFOUND | Le nom de fichier n’est pas disponible dans FCT. |
INVREQ | Commande de suppression exécutée sans commande READ préalable avec l’option UPDATE. |