Tuesday 8 October 2024

Uma instrução CLOSE pode ser executada somente para um arquivo em um modo aberto. Após a execução bem-sucedida de uma instrução CLOSE sem a frase REEL ou UNIT:

  • A área de registro associada ao nome do arquivo-1 não está mais disponível. A execução sem êxito de uma instrução CLOSE deixa a disponibilidade dos dados de registro indefinidos.
  • Uma instrução OPEN para o arquivo deve ser executada antes de qualquer outra instrução de entrada / saída.

As seguintes considerações se aplicam ao uso da instrução CLOSE:

  • Se o arquivo estiver em um status aberto e a execução de um CLOSE Declaração não é bem-sucedida, o EXCEPTION / ERROR procedimento (se especificado) para este arquivo é executado.
  • Se uma instrução CLOSE sem uma frase REEL ou UNIT não tiver sido processada antes de ser atingido o fim da unidade de execução, ou antes do programa ser cancelado, o arquivo será fechado implicitamente.
  • Se a cláusula SELECT OPTIONAL for especificada na entrada de controle de arquivo para esse arquivo e o arquivo não estiver presente no tempo de execução, o processamento padrão de fim de arquivo não será executado.
  • Se a cláusula FILE STATUS for especificada na entrada FILE-CONTROL, a chave de status associada será atualizada quando a instrução CLOSE for executada. Para mais informações sobre a chave de estado, consulte Instalações de Processamento comuns .
  • Para arquivos relativos Somente: Para estender um limite de arquivo relativo para além do número atual de registros e no tamanho do arquivo, use o comando INZPFM para adicionar registros excluídos antes de processar o arquivo. Você precisará fazer isso quando mais registros precisam ser adicionados ao arquivo e o status do arquivo 0Q foi recebido. Qualquer tentativa de estender um arquivo relativo além de seu tamanho atual resulta em uma violação de limite.

 

WITH LOCK

COBOL garante que este ficheiro não pode ser reaberto por este programa COBOL durante este processamento do programa. Arquivos externos fechados com LOCK não podem ser abertos novamente dentro da unidade de execução. Isso inclui outros programas que definiram o arquivo externo.