CICS - ESCREVER

O comando Write é usado para adicionar novos registros a um arquivo. Os parâmetros usados ​​no comando Write são os mesmos que descrevemos antes. Os dados são selecionados na área de dados mencionada na cláusula FROM. A seguir está a sintaxe do comando Write -

Sintaxe

EXEC CICS WRITE
   FILE(name)
   FROM(data-area)
   RIDFLD(data-area)
   LENGTH(data-value)
   KEYLENGTH(data-value)
END-EXEC.

Exemplo

A seguir está o exemplo para escrever um registro no arquivo 'FL001' onde a id do aluno é a chave primária e um novo registro com 101 a id do aluno será escrito no arquivo -

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).
PROCEDURE DIVISION.
MOVE +70           TO WS-STD-REC-LEN.
MOVE ‘101’         TO WS-STD-REC-KEY.
MOVE 3             TO WS-STD-KEY-LEN.
MOVE '101Mohtahim M TutorialsPoint' TO WS-STD-REC.
EXEC CICS WRITE
   FILE ('FL001')
   FROM (WS-STD-REC)
   LENGTH (WS-STD-REC-LEN)
   RIDFLD (WS-STD-REC-KEY)
   KEYLENGTH (WS-STD-KEY-LEN)
END-EXEC.

Gravar exceções de comando

A tabela a seguir mostra a lista de exceções que surgem durante uma instrução WRITE -

Sr. Não Exceção e descrição
1

NOTOPEN

O arquivo não está aberto.

2

FILENOTFOUND

A entrada do arquivo não é feita na FCT.

3

LENGERR

Incompatibilidade entre o comprimento especificado no comando e o comprimento real do registro.

4

NOTAUTH

Se o usuário não tiver permissões suficientes para usar o arquivo.

5

DUPKEY

Se mais de 1 registro satisfizer a condição da chave alternativa.

6

NOSPACE

Não há espaço suficiente no conjunto de dados.