IMS DB - Programmazione

Un programma applicativo che include chiamate DL / I non può essere eseguito direttamente. Invece, è necessario un JCL per attivare il modulo batch IMS DL / I. Il modulo di inizializzazione batch in IMS è DFSRRC00. Il programma applicativo e il modulo DL / I vengono eseguiti insieme. Il diagramma seguente mostra la struttura di un programma applicativo che include chiamate DL / I per accedere a un database.

Il programma applicativo si interfaccia con i moduli IMS DL / I tramite i seguenti elementi del programma:

  • Un'istruzione ENTRY specifica che i PCB sono utilizzati dal programma.

  • Una maschera PCB è correlata alle informazioni conservate nel PCB precostruito che riceve le informazioni di ritorno dall'IMS.

  • Un'area di input-output viene utilizzata per passare segmenti di dati da e verso il database IMS.

  • Le chiamate a DL / I specificano le funzioni di elaborazione come fetch, insert, delete, replace, ecc.

  • Controlla codici di stato viene utilizzato per controllare il codice di ritorno SQL dell'opzione di elaborazione specificata per informare se l'operazione è stata eseguita correttamente o meno.

  • Un'istruzione Terminate viene utilizzata per terminare l'elaborazione del programma applicativo che include DL / I.

Layout dei segmenti

A partire da ora, abbiamo appreso che l'IMS è costituito da segmenti utilizzati nei linguaggi di programmazione di alto livello per accedere ai dati. Considera la seguente struttura del database IMS di una libreria che abbiamo visto in precedenza e qui vediamo il layout dei suoi segmenti in 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).

Panoramica del programma applicativo

La struttura di un programma applicativo IMS è diversa da quella di un programma applicativo non IMS. Un programma IMS non può essere eseguito direttamente; piuttosto è sempre chiamato come una subroutine. Un programma applicativo IMS è costituito da blocchi di specifica del programma per fornire una vista del database IMS.

Il programma applicativo e i PSB collegati a quel programma vengono caricati quando eseguiamo un programma applicativo che include i moduli IMS DL / I. Quindi le richieste CALL attivate dai programmi applicativi vengono eseguite dal modulo IMS.

Servizi IMS

I seguenti servizi IMS vengono utilizzati dal programma applicativo:

  • Accesso ai record del database
  • Emissione di comandi IMS
  • Emissione di chiamate al servizio IMS
  • Chiamate al checkpoint
  • Sincronizza le chiamate
  • Invio o ricezione di messaggi da terminali utente in linea