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. |