- IMS DB - Inicio
- IMS DB - Descripción General
- IMS DB - Estructura
- IMS DB - DL/I Terminología
- IMS DB - DL/I Procesamiento
- IMS DB - Bloques de Control
- IMS DB - Programación
- IMS DB - Cobol Básico
- IMS DB - DL/I Funciones
- IMS DB - PCB máscara
- IMS DB - SSA
- IMS DB - Recuperación de Datos
- IMS DB - Manipulación de Datos
- IMS DB - Índice Secundario
- IMS DB - Base de datos lógica
- IMS DB - Recuperación
- IMS DB - Preguntas de la entrevist
IMS DB - Cobol Bsico
Incluimos DL/I, se pide en COBOL programa de aplicacin para comunicarse con base de datos de IMS. Utilizamos las siguientes declaraciones DL/I en programa COBOL para acceder a la base de datos:
- Entrada Declaracin
- Goback Declaracin
- Instruccin Call
Entrada Declaracin
Se usa para pasar el control del DL/I el programa COBOL. Esta es la sintaxis de entrada:
ENTRY 'DLITCBL' USING pcb-name1
[pcb-name2]
La afirmacin anterior es codificada en el procedimiento divisin de un programa COBOL. Vamos a entrar en los detalles de la entrada de programa COBOL:
El lote inicializacin activa el mdulo y el programa de la aplicacin se ejecuta bajo su control.
El DL/I carga el control necesario y bloques y mdulos del programa de aplicacin y control de los programas de aplicacin.
DLITCBL significa DL/I de COBOL. La entrada se usa para definir el punto de entrada en el programa.
Cuando pedimos un sub-programa en COBOL, la direccin tambin se proporcionan. Del mismo modo, cuando el DL/I le da el control a la aplicacin, tambin proporciona la direccin de cada PCB definidos en el programa de radiotelevisin.
Todos los PCB usados en el programa de aplicacin debe ser definido dentro de la Seccin de elevacin el programa COBOL porque PCB reside fuera del programa de aplicacin.
El PCB definicin dentro de la Seccin del elevador se llama como PCB Mscara.
La relacin entre mscaras y PCB pcb en almacenamiento real es creado con una lista de los PCB en la entrada. La secuencia de la inclusin en el registro debe ser la misma declaracin, tal y como aparecen en la PSBGEN.
Goback Declaracin
Se usa para pasar el control al programa de IMS. Siguiente es la sintaxis del goback declaracin:
GOBACK
A continuacin se enumeran los puntos fundamentales a tener en cuenta acerca del goback declaracin:
GOBACK est codificada en la final del programa de aplicacin. Devuelve el control al DL/I del programa.
No debemos utilizar DETENER ejecutar como se devuelve el control al sistema operativo. Si utilizamos DETENER EJECUTAR, el DL/I nunca tiene la oportunidad de realizar sus funciones de cierre. Esta es la razn por la que, en el DL/I programas de aplicacin, goback se usa.
Antes de emitir una declaracin goback, todos los no-DL/I conjuntos de datos utilizados en la aplicacin COBOL programa debe ser cerrado, de lo contrario, el programa terminar anormalmente.
Instruccin Call
Instruccin Call se utiliza para solicitud de DL/I servicios tales como ejecutar ciertas operaciones en la base de datos de IMS. Esta es la sintaxis de la instruccin call:
CALL 'CBLTDLI' USING DLI Function Code
PCB Mask
Segment I/O Area
[Segment Search Arguments]
La sintaxis anterior muestra los parmetros que puede utilizar con la instruccin call. Analizaremos cada uno de ellos en la siguiente tabla:
| S. No. | Descripcin de los parmetros |
|---|---|
| 1 |
DIL Cdigo de funcin Identifica el DL/I funcin que se va a realizar. Este argumento es el nombre de los cuatro campos de caracteres que describen la operacin de I/O. |
| 2 |
Mscara PARA PCB El PCB definicin dentro de la Seccin del elevador se llama como PCB Mscara. Se utilizan en la entrada. No seleccionar, asignar, abrir o cerrar las declaraciones son necesarios. |
| 3 |
Segmento rea de I/O Nombre de la entrada/salida rea de trabajo. Este es un rea de la aplicacin en la que el programa DL/I pone un segmento solicitado. |
| 4 |
Segmento Argumentos de Bsqueda Estos son parmetros opcionales en funcin del tipo de convocatoria. Se utilizan para buscar segmentos de datos dentro de la base de datos de IMS. |
A continuacin, se presentan los puntos a tener en cuenta sobre la llamada declaracin:
CBLTDLI de COBOL a DL/I. Es el nombre de un mdulo de interfaz que es link editar con su mdulo de objeto del programa.
Despus de cada llamada DL/I, el ILD almacena un cdigo de estado de la placa de circuito impreso. El programa puede utilizar este cdigo para determinar si la llamada ha tenido xito o no.
Ejemplo
Para obtener ms conocimiento de COBOL, puede pasar por nuestro COBOL tutorialaqu. El ejemplo siguiente muestra la estructura de un programa COBOL que utiliza base de datos de IMS y DL/I, se pide. Vamos a analizar en detalle cada uno de los parmetros utilizados en el ejemplo en los prximos captulos.
IDENTIFICATION DIVISION.
PROGRAM-ID. TEST1.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 DLI-FUNCTIONS.
05 DLI-GU PIC X(4) VALUE 'GU '.
05 DLI-GHU PIC X(4) VALUE 'GHU '.
05 DLI-GN PIC X(4) VALUE 'GN '.
05 DLI-GHN PIC X(4) VALUE 'GHN '.
05 DLI-GNP PIC X(4) VALUE 'GNP '.
05 DLI-GHNP PIC X(4) VALUE 'GHNP'.
05 DLI-ISRT PIC X(4) VALUE 'ISRT'.
05 DLI-DLET PIC X(4) VALUE 'DLET'.
05 DLI-REPL PIC X(4) VALUE 'REPL'.
05 DLI-CHKP PIC X(4) VALUE 'CHKP'.
05 DLI-XRST PIC X(4) VALUE 'XRST'.
05 DLI-PCB PIC X(4) VALUE 'PCB '.
01 SEGMENT-I-O-AREA PIC X(150).
LINKAGE SECTION.
01 STUDENT-PCB-MASK.
05 STD-DBD-NAME PIC X(8).
05 STD-SEGMENT-LEVEL PIC XX.
05 STD-STATUS-CODE PIC XX.
05 STD-PROC-OPTIONS PIC X(4).
05 FILLER PIC S9(5) COMP.
05 STD-SEGMENT-NAME PIC X(8).
05 STD-KEY-LENGTH PIC S9(5) COMP.
05 STD-NUMB-SENS-SEGS PIC S9(5) COMP.
05 STD-KEY PIC X(11).
PROCEDURE DIVISION.
ENTRY 'DLITCBL' USING STUDENT-PCB-MASK.
A000-READ-PARA.
110-GET-INVENTORY-SEGMENT.
CALL CBLTDLI USING DLI-GN
STUDENT-PCB-MASK
SEGMENT-I-O-AREA.
GOBACK.