Cics-delete
提供:Dev Guides
CICS-削除
DELETEコマンドは、ファイルに存在するレコードを削除するために使用されます。 このコマンドの前に、レコードはREAD UPDATEコマンドで読み取る必要があります。 パラメーターは、前に説明したものと同じです。 削除コマンドの構文は次のとおりです-
構文
EXEC CICS DELETE
FILE('name')
END-EXEC.
以下は、更新オプションでレコードを読み取らずに直接レコードを削除する構文です-
構文
EXEC CICS DELETE
FILE('name')
RIDFLD(data-value)
END-EXEC.
例
以下は、グループ削除*の例です。 これは、 *Generic オプションを使用して実行できます。このオプションでは、一般的な条件を満たすすべてのレコードが削除されます。 NUMREC は削除されたレコードの数を保持します。 ここに記載されているフィールドは、S9(4)compです。
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-STD-REC-LEN PIC S9(4) COMP.
01 WS-STD-KEY-LEN PIC S9(4) COMP.
01 WS-STD-REC-KEY PIC 9(3).
01 WS-STD-REC PIC X(70).
01 WS-NUM-REC-DEL PIC S9(4).
PROCEDURE DIVISION.
MOVE '11' TO WS-STD-REC-KEY.
MOVE 2 TO WS-STD-KEY-LEN.
EXEC CICS READ
FILE ('FL001')
RIDFLD (WS-STD-REC-KEY)
KEYLENGTH (WS-STD-KEY-LEN)
GENERIC
NUMREC (WS-NUM-REC-DEL)
END-EXEC.
コマンド例外の削除
次の表は、DELETEステートメント中に発生する例外のリストを示しています-
Sr.No | Exception & Description |
---|---|
1 |
NOTOPEN ファイルが開いていません。 |
2 |
NOTFND 検索中のレコードがデータセットに存在しません(RIDFLDを使用した削除)。 |
3 |
NOTAUTH ユーザーにファイルを使用するための十分な権限がない場合。 |
4 |
INVREQ UPDATEを使用した事前の読み取りなしで書き換えます。 |
5 |
FILENOTFOUND ファイルエントリはFCTでは作成されません。 |