COBOL - Comando GOBACK - wwww.cadcobol.com.br



Desenvolvido por DORNELLES Carlos Alberto - Analista de Sistemas - Brasília DF. - cad_cobol@hotmail.com

COBOL - Comando GOBACK - wwww.cadcobol.com.br
Enterprise COBOL for z/OS, V4.2, Language Reference

A instrução GOBACK funciona como a instrução EXIT PROGRAM quando é codificada como parte de um programa chamado (ou a instrução EXIT METHOD quando GOBACK é codificada como parte de um método chamado) e como a instrução STOP RUN quando codificada em um programa principal.

A instrução GOBACK especifica o final lógico de um programa chamado ou método chamado.

Uma declaração GOBACK deve aparecer como a única declaração ou a última de uma série de declarações imperativas em uma frase, porque quaisquer declarações após o GOBACK não são executadas.
GOBACK não deve ser usado em um procedimento declarativo no qual a frase GLOBAL é especificada.

Se o controle atingir uma instrução GOBACK enquanto uma instrução CALL estiver ativa, o controle retornará ao ponto no programa ou método de chamada imediatamente após a instrução CALL, como na instrução EXIT PROGRAM.

Além disso, a execução de uma instrução GOBACK em um programa chamado que possui o atributo INITIAL é equivalente a executar uma instrução CANCEL que faz referência a esse programa.

A tabela abaixo mostra as ações executadas para a instrução GOBACK em um programa principal, um subprograma e um método chamado.

Termination statement Programa principal Subprograma Método invocado
GOBACK Retorna ao programa de chamada.
Retorna ao programa de chamada. Retorna ao método de chamada.

Exemplo prático

Programa principal:

IDENTIFICATION DIVISION.
PROGRAM-ID.    PRINCIPAL.
ENVIRONMENT    DIVISION.
DATA           DIVISION.
WORKING-STORAGE SECTION.

01  WS-AUXILIARES.
    05 WS-INPUT1       PIC 9(002).
    05 WS-INPUT2       PIC 9(002).
    05 WS-OUT-PUT      PIC 9(003).

PROCDEDURE DIVISION.

ACCEPT WS-INPUT1
ACCEPT WS-INPUT2

CALL 'SUBPROGR' USING WS-INPUT1 WS-INPUT2 WS-OUT-PUT

DISPLAY WS-OUT-PUT
STOP RUN.
Sub-programa:

IDENTIFICATION DIVISION.
PROGRAM-ID.    SUBPROGR.
ENVIRONMENT    DIVISION.
DATA           DIVISION.
LINKAGE        SECTION.

01  LS-AUXILIARES.
    05 LS-INPUT1       PIC 9(002).
    05 LS-INPUT2       PIC 9(002).
    05 LS-OUT-PUT      PIC 9(003).

PROCEDURE DIVISION USING LS-INPUT1 LS-INPUT2 LS-OUT-PUT.

    COMPUTE LS-OUT-PUT = LS-INPUT1 * LS-INPUT2  
    GOBACK.





Veja também



© Copyright IBM Corp.