CALL y LINKAGE en COBOL
Dos programas en un archivo: CALL pasa campos a través de la LINKAGE SECTION.
*> Two programs in one file: CALL passes data through LINKAGE.
IDENTIFICATION DIVISION.
PROGRAM-ID. DRIVER.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 SPAN-FT PIC 9(3) VALUE 24.
01 PLANKS PIC 9(4).
PROCEDURE DIVISION.
CALL "PLANK-COUNT" USING SPAN-FT PLANKS
DISPLAY "A " SPAN-FT " ft footbridge needs " PLANKS " planks"
STOP RUN.
END PROGRAM DRIVER.
IDENTIFICATION DIVISION.
PROGRAM-ID. PLANK-COUNT.
DATA DIVISION.
LINKAGE SECTION.
01 IN-SPAN PIC 9(3).
01 OUT-COUNT PIC 9(4).
PROCEDURE DIVISION USING IN-SPAN OUT-COUNT.
*> The called side declares its parameters in the LINKAGE SECTION.
COMPUTE OUT-COUNT = IN-SPAN * 4 + 2
GOBACK.
END PROGRAM PLANK-COUNT.
Cómo funciona
CALL "PLANK-COUNT" USING SPAN-FT PLANKSpasa ambos campos por referencia.- El programa llamado declara sus parámetros en la
LINKAGE SECTION, no en su almacenamiento. PROCEDURE DIVISION USING ...los vincula en orden, yGOBACKregresa.
Palabras clave y builtins usados aquí
CALLCOMPUTEDATADISPLAYDIVISIONENDGOBACKIDENTIFICATIONLINKAGEPROCEDURESECTIONSTOP
El intento, en números
- Líneas
- 24
- Caracteres a escribir
- 665
- Tokens
- 87
- Ritmo de tres estrellas
- 40 tpm
Al ritmo de tres estrellas de 40 tokens por minuto, este intento toma unos 130 segundos.
Paso 3 de 3 en Funciones y llamadas; paso 24 de 27 en Fundamentos del lenguaje.