IMS DB - Programación

Un programa de aplicación que incluye llamadas DL / I no se puede ejecutar directamente. En su lugar, se requiere un JCL para activar el módulo por lotes DL / I de IMS. El módulo de inicialización por lotes en IMS es DFSRRC00. El programa de aplicación y el módulo DL / I se ejecutan juntos. El siguiente diagrama muestra la estructura de un programa de aplicación que incluye llamadas DL / I para acceder a una base de datos.

El programa de aplicación interactúa con los módulos IMS DL / I a través de los siguientes elementos del programa:

  • Una declaración ENTRY especifica que el programa utiliza los PCB.

  • Una máscara de PCB correlaciona con la información conservada en el PCB preconstruido que recibe información de retorno del IMS.

  • Un área de entrada y salida se utiliza para pasar segmentos de datos hacia y desde la base de datos IMS.

  • Las llamadas a DL / I especifican las funciones de procesamiento como buscar, insertar, eliminar, reemplazar, etc.

  • Verificar códigos de estado se utiliza para verificar el código de retorno SQL de la opción de proceso especificada para informar si la operación fue exitosa o no.

  • Se utiliza una declaración Terminate para finalizar el procesamiento del programa de aplicación que incluye el DL / I.

Diseño de segmentos

A partir de ahora, nos enteramos de que el IMS consta de segmentos que se utilizan en lenguajes de programación de alto nivel para acceder a los datos. Considere la siguiente estructura de base de datos IMS de una biblioteca que hemos visto anteriormente y aquí vemos el diseño de sus segmentos en COBOL:

01 LIBRARY-SEGMENT.
   05 BOOK-ID        PIC X(5).
   05 ISSUE-DATE     PIC X(10).
   05 RETURN-DATE    PIC X(10).
   05 STUDENT-ID     PIC A(25).
	
01 BOOK-SEGMENT.
   05 BOOK-ID        PIC X(5).
   05 BOOK-NAME      PIC A(30).
   05 AUTHOR         PIC A(25).
	
01 STUDENT-SEGMENT.
   05 STUDENT-ID     PIC X(5).
   05 STUDENT-NAME   PIC A(25).
   05 DIVISION       PIC X(10).

Descripción general del programa de aplicación

La estructura de un programa de aplicación IMS es diferente a la de un programa de aplicación no IMS. Un programa IMS no se puede ejecutar directamente; más bien siempre se llama como una subrutina. Un programa de aplicación IMS consta de bloques de especificación de programa para proporcionar una vista de la base de datos IMS.

El programa de aplicación y los PSB vinculados a ese programa se cargan cuando ejecutamos un programa de aplicación que incluye módulos IMS DL / I. Luego, el módulo IMS ejecuta las solicitudes CALL desencadenadas por los programas de aplicación.

Servicios IMS

El programa de aplicación utiliza los siguientes servicios IMS:

  • Acceder a los registros de la base de datos
  • Emitir comandos IMS
  • Emitir llamadas de servicio IMS
  • Llamadas a puestos de control
  • Sincronizar llamadas
  • Enviar o recibir mensajes desde terminales de usuario en línea