32
SDDC - Copyright 2004 1

Cics - Module General

Embed Size (px)

Citation preview

Page 1: Cics - Module General

SDDC - Copyright 2004 1

Page 2: Cics - Module General

SDDC - Copyright 2004 2

Présentation GénéralePrésentation GénéraleButBut

► Simplifier la programmation des applications CICS en pseudo conversationnelSimplifier la programmation des applications CICS en pseudo conversationnel

► ggéérer les branchementsrer les branchements dans le programme dans le programme

► Standardiser l ’écriture des programmesStandardiser l ’écriture des programmes 1ere partie : toujours exécutée 1ere partie : toujours exécutée

► gestion des HANDLE CONDITION et ERROR gestion des HANDLE CONDITION et ERROR ► adressage des zones système CICS adressage des zones système CICS ► Adressage du TCR Adressage du TCR ► gestion des débranchementsgestion des débranchements (GO TO DEPENDING…) (GO TO DEPENDING…)

2eme partie : Ensemble de routines2eme partie : Ensemble de routines► une seule routine est exécutéeune seule routine est exécutée

en fonction du code branchement (CBL-IDROU) gèré par le M.G.en fonction du code branchement (CBL-IDROU) gèré par le M.G.► 1 routine d ’INITIALISATION 1 routine d ’INITIALISATION ► 0 à n routines de VALIDATION 0 à n routines de VALIDATION ► 0 à n routines de CORRELATION 0 à n routines de CORRELATION ► 1 routine de FIN1 (1ere phase) 1 routine de FIN1 (1ere phase) ► 0 ou 1 routine de FIN2 (2eme phase0 ou 1 routine de FIN2 (2eme phase))

Page 3: Cics - Module General

SDDC - Copyright 2004 3

Présentation GénéralePrésentation Générale

► Gestion des écransGestion des écrans Sans intervention du programme d ’applicationSans intervention du programme d ’application Affichage : en optimisant les transmissions BMSAffichage : en optimisant les transmissions BMS Réception: en rendant au programme le maximum Réception: en rendant au programme le maximum

d'informationsd'informations

► Simplifier le contrôle des écransSimplifier le contrôle des écrans contrôles directs par le module généralcontrôles directs par le module général

► NuméricitéNuméricité► zone obligatoire …zone obligatoire …

Routines de validationRoutines de validation Routines de corrélationRoutines de corrélation

► Gérer les zones du programme Gérer les zones du programme pour libérer la place mémoirepour libérer la place mémoire Gestion du TCR (zones travail + Ecran) et écriture sur Gestion du TCR (zones travail + Ecran) et écriture sur

disquedisque

Page 4: Cics - Module General

SDDC - Copyright 2004 4

Réalisation des écransRéalisation des écrans

► VAL2

VAL1

COR1COR2

Page 5: Cics - Module General

SDDC - Copyright 2004 5

►Macro assembleur : MICGENMacro assembleur : MICGEN►7 types 7 types

INITIALINITIAL WORKWORK FIELDFIELD OCCURSOCCURS CORRELCORREL FLMAPFLMAP FINALFINAL

Description des écrans : Description des écrans : MICGENMICGEN

Page 6: Cics - Module General

SDDC - Copyright 2004 6

► INITIALINITIAL Spécifie Spécifie

► le nom de la routine d’INITle nom de la routine d’INIT► Le langage du programme d’applicationLe langage du programme d’application► Le modèle du terminalLe modèle du terminal► La position du message d’erreurLa position du message d’erreur► Le code de la transactionLe code de la transaction► Le nombre de « page »Le nombre de « page »

Macros MICGENMacros MICGEN

Page 7: Cics - Module General

SDDC - Copyright 2004 7

►WORKWORK Zone de travail pour le programmeZone de travail pour le programme

►ASIZE=(F,L,U,S) avec :ASIZE=(F,L,U,S) avec : F : format de la zoneF : format de la zone

► 9 9 : numérique: numérique► x x : alphanumérique: alphanumérique

L : longueur de la zoneL : longueur de la zone U : usage de la zoneU : usage de la zone

► display display : Etendu (u=display si f=x): Etendu (u=display si f=x)► comp-3 comp-3 : PACKE: PACKE► CompComp : binaire: binaire

S : pour zones numériques signéesS : pour zones numériques signées

Macros MICGENMacros MICGEN

Page 8: Cics - Module General

SDDC - Copyright 2004 8

►OCCURSOCCURS Répétition de champs Répétition de champs DOCCO01/FOCCO01 ---> 1er tableauDOCCO01/FOCCO01 ---> 1er tableau DOCCO2/FOCCO02 ---> 2eme tableauDOCCO2/FOCCO02 ---> 2eme tableau ExempleExemple

*********** DEBUT TABLEAU **************************************** DEBUT TABLEAU *****************************

MICGEN TYPE=OCCURS,NBR=xx,MAP=x,INCR=xxMICGEN TYPE=OCCURS,NBR=xx,MAP=x,INCR=xx

COPY DOCCO01COPY DOCCO01

---------==> map 0------------------------------==> map 0---------------------

------------field----------------------------------field----------------------

COPY FOCCO01COPY FOCCO01

MICGEN TYPE=FINALMICGEN TYPE=FINAL

************ FIN TABLEAU ****************************************** FIN TABLEAU ******************************

Macros MICGENMacros MICGEN

Page 9: Cics - Module General

SDDC - Copyright 2004 9

►CORRELCORREL Déclaration d’une corrélation entre zones Déclaration d’une corrélation entre zones

écranécran► Effectuer des contrôles de cohérenceEffectuer des contrôles de cohérence► Type ET / OUType ET / OU

MICGEN TYPE=CORREL,COMBTYP=xx,CORROUT=cxxxxx, MICGEN TYPE=CORREL,COMBTYP=xx,CORROUT=cxxxxx, * *

FIELDS=(ZON001,ZON002,ZON003)FIELDS=(ZON001,ZON002,ZON003)

Macros MICGENMacros MICGEN

Page 10: Cics - Module General

SDDC - Copyright 2004 10

►FIELDFIELD Pour chaque champ écranPour chaque champ écran Différents suffixes Différents suffixes

► II : Détecter si zone modifiée: Détecter si zone modifiée► OO : Forcer la zone (curseur, simulation saisie): Forcer la zone (curseur, simulation saisie)► AA : Attribut: Attribut► NN : Numérique: Numérique

►I : Permet de détecter si une zone a été introduite par I : Permet de détecter si une zone a été introduite par l'utilisateur (c’est à dire modifiée)l'utilisateur (c’est à dire modifiée)

ZONEI=‘ I ’ si la zone a été introduite par l'utilisateurZONEI=‘ I ’ si la zone a été introduite par l'utilisateur

Macros MICGENMacros MICGEN

Page 11: Cics - Module General

SDDC - Copyright 2004 11

►FIELD (suite)FIELD (suite)► O : Permet de Forcer le curseur sur une zoneO : Permet de Forcer le curseur sur une zone

MOVEMOVE ’C ’ ’C ’ TO ZONEOTO ZONEO

► O : Provoquer le forçage de la zoneO : Provoquer le forçage de la zone même si l'utilisateur ne modifie pas la zone, le Module général fera même si l'utilisateur ne modifie pas la zone, le Module général fera

comme si elle avait été introduite (modifiée) par l'utilisateurcomme si elle avait été introduite (modifiée) par l'utilisateur► Joue les routines de validation ou corrélation associéesJoue les routines de validation ou corrélation associées

MOVE MOVE ‘ F ’ ‘ F ’ TO ZONEOTO ZONEO

► A : Permet d'indiquer l'attribut BMSA : Permet d'indiquer l'attribut BMS BRT / NORM / DRKBRT / NORM / DRK PROT / UNPROTPROT / UNPROT ICIC

Macros MICGENMacros MICGEN

Page 12: Cics - Module General

SDDC - Copyright 2004 12

►FIELD (suite)FIELD (suite)► N : Si la zone est numériqueN : Si la zone est numérique

Zone sans suffixe = contenu de la zoneZone sans suffixe = contenu de la zone

► Exemple Exemple 05 ZONEI PIC X.05 ZONEI PIC X. 05 ZONEO PIC X.05 ZONEO PIC X. 05 ZONEA PIC X.05 ZONEA PIC X. 05 ZONE. 07 ZONEN PIC 9(6).05 ZONE. 07 ZONEN PIC 9(6).

Macros MICGENMacros MICGEN

Page 13: Cics - Module General

SDDC - Copyright 2004 13

►FLMAPFLMAP FacultatifFacultatif Permet de séparer 2 MAPS afin de générer un Permet de séparer 2 MAPS afin de générer un

niveau 03 pour chaque MAP dans la clause copy niveau 03 pour chaque MAP dans la clause copy cobol CBLxxxx (conversation xxxx)cobol CBLxxxx (conversation xxxx)

ExempleExemple► 01 CBLxxxx.01 CBLxxxx.► 03 xxxxWORK.03 xxxxWORK.► 0505► 03 Axxxx00. ---> 1ere map03 Axxxx00. ---> 1ere map► 0505► 03 Axxxx01. ---> 2eme map03 Axxxx01. ---> 2eme map► 0505

Macros MICGENMacros MICGEN

Page 14: Cics - Module General

SDDC - Copyright 2004 14

►FINALFINAL Macro instruction de finMacro instruction de fin

Macros MICGENMacros MICGEN

Page 15: Cics - Module General

SDDC - Copyright 2004 15

MICGEN TYPE=INITIAL,INEXIT=MICGEN TYPE=INITIAL,INEXIT=10-DEB-INIT,MODEL10-DEB-INIT,MODEL=1920,ERRPOS=1760,*=1920,ERRPOS=1760,*

TRANSID=JGCA,LANG=COBOL, *TRANSID=JGCA,LANG=COBOL, * MAXPAG=01,MAPOCC=(1) MAXPAG=01,MAPOCC=(1) WMAN MICGEN TYPE=WORK,ASIZE=(X,2550,DISPLAY) WMAN MICGEN TYPE=WORK,ASIZE=(X,2550,DISPLAY) OPERAT MICGEN TYPE=FIELD, *OPERAT MICGEN TYPE=FIELD, * LENGTH=6, *LENGTH=6, * MAPOS=(00,0330), *MAPOS=(00,0330), * ATTRB=(UNPROT,DRK,IC), *ATTRB=(UNPROT,DRK,IC), * VALROUT=25-DEB-SIGNATVALROUT=25-DEB-SIGNAT MICGEN TYPE=FIELD, *MICGEN TYPE=FIELD, * LENGTH=31, *LENGTH=31, * MAPOS=(00,0344), *MAPOS=(00,0344), * ATTRB=(PROT,BRT), *ATTRB=(PROT,BRT), * INITIAL='*******************************' INITIAL='*******************************' WMESSER MICGEN TYPE=FIELD, *MESS SYSTEME* *WMESSER MICGEN TYPE=FIELD, *MESS SYSTEME* * LENGTH=35, *LENGTH=35, * MAPOS=(00,1804), *MAPOS=(00,1804), * ATTRB=(PROT,BRT,ASKIP) ATTRB=(PROT,BRT,ASKIP) ……………………………… ………………………………. . MICGEN TYPE=CORREL,COMBTYP=OU, *MICGEN TYPE=CORREL,COMBTYP=OU, * CORROUT=20-DEB-CORR1CORROUT=20-DEB-CORR1, *, * FIELDS=(NOMCLI,PRECLI,VILLE,CODPOS,DATEJJ,DATEMM,DATEAA, *FIELDS=(NOMCLI,PRECLI,VILLE,CODPOS,DATEJJ,DATEMM,DATEAA, * SSRES,EMET,NUMERO,BQERIB,GUIRIB,CPTRIB,CLERIB,OPERAT) SSRES,EMET,NUMERO,BQERIB,GUIRIB,CPTRIB,CLERIB,OPERAT) MICGEN TYPE=FINAL,MICGEN TYPE=FINAL,OUTEXIT=(30-DEB-FIN1,95-DEB-FIN2)OUTEXIT=(30-DEB-FIN1,95-DEB-FIN2) COPY FINMIC COPY FINMIC END END

Exemple source MICGENExemple source MICGEN

Page 16: Cics - Module General

SDDC - Copyright 2004 16

Macros MICGEN : RôleMacros MICGEN : Rôle

►Servent a générer les 4 éléments nécessaires Servent a générer les 4 éléments nécessaires pour une conversation  MODULE-GENERAL pour une conversation  MODULE-GENERAL

►2 éléments utilisés directement par le MODULE GENERAL2 éléments utilisés directement par le MODULE GENERAL Mapsets et MAPS BMS : SXXXXnn et AXXXXnnMapsets et MAPS BMS : SXXXXnn et AXXXXnn Table d’application TXXXXTable d’application TXXXX

►2 éléments inclus dans le programme de la conversation 2 éléments inclus dans le programme de la conversation au moyen d'une instruction cobol 'copy' au moyen d'une instruction cobol 'copy'

Description du TCR : CBLxxxxDescription du TCR : CBLxxxx► Zones WORKZones WORK► Zones écranZones écran► Zones Module généralZones Module général

Coding de branchement aux routines du programme : CBLCxxxxCoding de branchement aux routines du programme : CBLCxxxx

Page 17: Cics - Module General

SDDC - Copyright 2004 17

Compilation

Source MICGEN

COPY CBLxxxx CBLCxxxx

LOAD Txxxx Sxxxxnn

Sxxxxnn

COMPILATION MACRO COMPILATION MACRO MICGEN MICGEN

Page 18: Cics - Module General

SDDC - Copyright 2004 18

► Plusieurs routines dans le programme Plusieurs routines dans le programme d’applicationd’application Débranchement contrôlé par CBL-IDROUDébranchement contrôlé par CBL-IDROU 1 INIT1 INIT 0 à n VALIDATION(S)0 à n VALIDATION(S) 0 à n CORRELATION(S)0 à n CORRELATION(S) 1 FIN11 FIN1 0 ou 1 FIN20 ou 1 FIN2

Routines du programmeRoutines du programme

Page 19: Cics - Module General

SDDC - Copyright 2004 19

► INITINIT Débranchement à cette routine avant Débranchement à cette routine avant

l'affichage du premier écran de la l'affichage du premier écran de la conversation.conversation.

Permet d'effectuer les traitements Permet d'effectuer les traitements d'initialisation de la conversation tels que d'initialisation de la conversation tels que

► Suppression des tsSuppression des ts► Pré affichage d’écranPré affichage d’écran► … …

Retour en fin de paragraphe par GOBACK.Retour en fin de paragraphe par GOBACK.

Routines du programmeRoutines du programme

Page 20: Cics - Module General

SDDC - Copyright 2004 20

►VALIDATION VALIDATION Liée à une zone de l ’écranLiée à une zone de l ’écran Débranchement à cette routine lorsque la Débranchement à cette routine lorsque la

zone a été modifiée par l'utilisateur.zone a été modifiée par l'utilisateur. Permet d’effectuer les contrôles unitaires de Permet d’effectuer les contrôles unitaires de

la zonela zone Retour en fin de paragraphe par GOBACK.Retour en fin de paragraphe par GOBACK.

Routines du programmeRoutines du programme

Page 21: Cics - Module General

SDDC - Copyright 2004 21

► CORRELATIONCORRELATION Liée à une ou plusieurs zones de l ’écranLiée à une ou plusieurs zones de l ’écran Débranchement à cette routine lorsqueDébranchement à cette routine lorsque

► Une zone au moins a été modifiée par l'utilisateurUne zone au moins a été modifiée par l'utilisateur► Aucune zone de la corrélation en erreur de validationAucune zone de la corrélation en erreur de validation

CORRELATION de type OU / ETCORRELATION de type OU / ET► OU : Une zone de la corrélation est renseignéeOU : Une zone de la corrélation est renseignée► ET : Toutes les zones de la corrélation sont ET : Toutes les zones de la corrélation sont

renseignéesrenseignées Permet d’effectuer les contrôles de cohérence Permet d’effectuer les contrôles de cohérence

des zones de la corrélationdes zones de la corrélation Retour en fin de paragraphe par GOBACK.Retour en fin de paragraphe par GOBACK.

Routines du programmeRoutines du programme

Page 22: Cics - Module General

SDDC - Copyright 2004 22

► FIN1FIN1 Débranchement à cette routine lorsqu'il n'y Débranchement à cette routine lorsqu'il n'y

a plus d'erreur (validation et corrélation)a plus d'erreur (validation et corrélation) Cette routine permet Cette routine permet

► D’effectuer des contrôles supplémentairesD’effectuer des contrôles supplémentaires► Réafficher l ’écran pour demande de Réafficher l ’écran pour demande de

confirmation confirmation CBL-ERRINCBL-ERRIN► Demander l'affichage de l ’écran suivant Demander l'affichage de l ’écran suivant

CBL-NUMAPCBL-NUMAP► Demander l'exécution d'une nouvelle Demander l'exécution d'une nouvelle

transaction transaction CBL-NEXTRANCBL-NEXTRAN = «*» = «*»

Routines du programmeRoutines du programme

Page 23: Cics - Module General

SDDC - Copyright 2004 23

► FIN1 (Suite)FIN1 (Suite) Cette routine permet Cette routine permet

► De valoriser la TCTUADe valoriser la TCTUA► D’effectuer des STARTD’effectuer des START► De demander le passage dans la routine de fin2 De demander le passage dans la routine de fin2

CBL-FIN2OUI = "*«  CBL-FIN2OUI = "*« ► D’effectuer les mises à jour des fichiersD’effectuer les mises à jour des fichiers

Lorsque le Module général reprend la mainLorsque le Module général reprend la main► Effectue un SYNCPOINT (COMMIT)Effectue un SYNCPOINT (COMMIT)► Effectue ce que le programme d’application lui a Effectue ce que le programme d’application lui a

demandé (par défaut : réaffiche l ’écran en cours)demandé (par défaut : réaffiche l ’écran en cours)

Routines du programmeRoutines du programme

Page 24: Cics - Module General

SDDC - Copyright 2004 24

Routines du programmeRoutines du programme

► FIN2FIN2 Cette routine permetCette routine permet

► D’effectuer les mises à jour des fichiersD’effectuer les mises à jour des fichiers► De reprendre la conversation au début (INIT)De reprendre la conversation au début (INIT)

Lorsque le Module général reprend la Lorsque le Module général reprend la mainmain

►Effectue un SYNCPOINT (COMMIT)Effectue un SYNCPOINT (COMMIT)►Se débranche à la routine INIT Se débranche à la routine INIT

Page 25: Cics - Module General

SDDC - Copyright 2004 25

Routines du programmeRoutines du programme

►RemarquesRemarques Si une zone de l ’écran est effacée par Si une zone de l ’écran est effacée par l'utilisateur, elle est considérée par le Module l'utilisateur, elle est considérée par le Module général comme inexistantegénéral comme inexistante

►les routines de validation et de corrélation ne les routines de validation et de corrélation ne seront pas exécutées.seront pas exécutées.

Les mises à jour peuvent être effectuées en Les mises à jour peuvent être effectuées en FIN1 ou FIN2 (suivant la méthode utilisée)FIN1 ou FIN2 (suivant la méthode utilisée)

►Elles ne doivent pas être effectuées dans les 2 Elles ne doivent pas être effectuées dans les 2 routines, car le module général effectue un routines, car le module général effectue un SYNCPOINT après FIN1 (risque d'incohérences...).SYNCPOINT après FIN1 (risque d'incohérences...).

Page 26: Cics - Module General

SDDC - Copyright 2004 26

XXXX

P.AM.G

Routine INIT

XXXX PAGE 00…. ….….. ....

ZONE1 ?Validation ZONE1

ZONE2 ?

Validation ZONE2

ZONE3 ?

Corrélation 1

ERREUR ?OUINONXXXX PAGE 00

…. ….….. .… ERREUR

A

Dynamique Module GénéralDynamique Module Général

Page 27: Cics - Module General

SDDC - Copyright 2004 27

ZONE1 ?Validation ZONE1

ZONE2 ?

Validation ZONE2

ZONE3 ?

Corrélation 1

ERREUR ?AFFICHAGE?OUINON

XXXX PAGE 00…. ….….. .… ERREUR

XXXX PAGE 00…. ….….. .… FIN1

AFFICHAGE?OUI

TRT FIN2 ?OUI

NON

XXXX PAGE 00…. ….….. .…

CBL-NUMAP FIN2Retour INIT

XXXX PAGE 00…. ….….. .…

XXXX PAGE 00…. ….….. .… ERREUR

A

Dynamique Module GénéralDynamique Module Général

Page 28: Cics - Module General

SDDC - Copyright 2004 28

► Types Types Message bloquant (= erreur)Message bloquant (= erreur)

► Affichage demandé en VALIDATION ou Affichage demandé en VALIDATION ou CORRELATION CORRELATION (CBL-CODERR)(CBL-CODERR)

► L'utilisateur est oblige de modifier au moins une L'utilisateur est oblige de modifier au moins une zone (sinon le Module général reste bloqué sur zone (sinon le Module général reste bloqué sur l'affichage de l’écran – le programme d’application l'affichage de l’écran – le programme d’application n’a pas la main)n’a pas la main)

Message non bloquantMessage non bloquant► Affichage demandé en INIT, CORRELATION ou Affichage demandé en INIT, CORRELATION ou

FIN1 FIN1 (CBL-ERRIN)(CBL-ERRIN)

Messages d’erreursMessages d’erreurs

Page 29: Cics - Module General

SDDC - Copyright 2004 29

► LINKAGE SECTION. LINKAGE SECTION. ► 01 TWA.01 TWA.► * ltwa= 343 octets <--- twa indispensable au  M.G* ltwa= 343 octets <--- twa indispensable au  M.G► 03 filler pic x(323).03 filler pic x(323).► 03 ADTTCRCOB POINTER.03 ADTTCRCOB POINTER.► 03 filler pic x(16).03 filler pic x(16).► 01 filler. 01 filler. <--- tua pour transfert d'informations <--- tua pour transfert d'informations ► COPY TUACOBOL. COPY TUACOBOL. ► COPY CBLxxxx. <--- pour zone de communication avec le TCR et M.G.COPY CBLxxxx. <--- pour zone de communication avec le TCR et M.G.► *01 CBLxxxx. initialisée à chaque début de conversation*01 CBLxxxx. initialisée à chaque début de conversation► . 03 xxxxWORK.. 03 xxxxWORK.► . 05 .. <--- zones de travail éventuelles. 05 .. <--- zones de travail éventuelles► . 05 .... 05 ...► . 03 xxxxnn.. 03 xxxxnn.► . 05 .... <--- zones relatives à l ’écran nn. 05 .... <--- zones relatives à l ’écran nn► . ..... (au moins une zone par écran). ..... (au moins une zone par écran)► . 03 xxxx01. <--- si deuxième écran. 03 xxxx01. <--- si deuxième écran►

Structure d’un programmeStructure d’un programme

Page 30: Cics - Module General

SDDC - Copyright 2004 30

► . . Suite… Les zones de communicationSuite… Les zones de communication► . 03 cbl-mapcou pic 9(4) comp. . 03 cbl-mapcou pic 9(4) comp. écran en coursécran en cours► . 03 cbl-fonct pic x. Touche fonction (idem EIBAID). 03 cbl-fonct pic x. Touche fonction (idem EIBAID)► . 03 cbl-numap pic 9(4) comp. . 03 cbl-numap pic 9(4) comp. Prochain écran à afficherProchain écran à afficher► . 03 cbl-coderr pic 9(4) comp. Numéro message anomalie (zero=ok). 03 cbl-coderr pic 9(4) comp. Numéro message anomalie (zero=ok)► . 03 cbl-fin2oui pic x. Mettre ‘ * ’ pour jouer   ’FIN2 ’. 03 cbl-fin2oui pic x. Mettre ‘ * ’ pour jouer   ’FIN2 ’► . 03 cbl-idrou pic 9(4) comp. Numéro de la routine à jouer. 03 cbl-idrou pic 9(4) comp. Numéro de la routine à jouer► . 03 cbl-errin pic 9(4) comp. Numéro ano. en ‘ FIN1 ’ & ‘ INIT ’. 03 cbl-errin pic 9(4) comp. Numéro ano. en ‘ FIN1 ’ & ‘ INIT ’► . 03 cbl-bypass pic x. Mettre ‘ * ’ pour le ‘ bypass ’. 03 cbl-bypass pic x. Mettre ‘ * ’ pour le ‘ bypass ’► . 03 cbl-nextran pic x(4). Code de la prochaine conversation. 03 cbl-nextran pic x(4). Code de la prochaine conversation► . 03 cbl-i pic 9(4) comp. Indice si  ’ OCCURS ’ sur écran. 03 cbl-i pic 9(4) comp. Indice si  ’ OCCURS ’ sur écran

Structure d’un programmeStructure d’un programme

Page 31: Cics - Module General

SDDC - Copyright 2004 31

► PROCEDURE DIVISIONPROCEDURE DIVISION► .. <--- initialisations éventuelles de WORKING STORAGE. <--- initialisations éventuelles de WORKING STORAGE.► EXEC CICS ADDRESS CWA(ptrcwa) TWA(TWA EXEC CICS ADDRESS CWA(ptrcwa) TWA(TWA ► TCTUA(ptrtua) TCTUA(ptrtua) ► END-EXEC END-EXEC ► SET ADDRESS OF CBLxxxx TO ADTCRCOB. SET ADDRESS OF CBLxxxx TO ADTCRCOB. ► COPY CBLCxxxx.COPY CBLCxxxx.► GO TOGO TO► . INIT <--- débranchement aux diverses routines. INIT <--- débranchement aux diverses routines► . VALID1 de la conversation. VALID1 de la conversation► . VALID2 (instruction exécutée à chaque. VALID2 (instruction exécutée à chaque► . VALID3 appel du "module général"). VALID3 appel du "module général")► . CORREL1. CORREL1► . CORREL2. CORREL2► . FIN1. FIN1► . FIN2. FIN2► DEPENDING ON CBL-IDROU.DEPENDING ON CBL-IDROU.► EXEC CICS RETURN END-EXEC.EXEC CICS RETURN END-EXEC.

Structure d’un programmeStructure d’un programme

Page 32: Cics - Module General

SDDC - Copyright 2004 32

► PROCEDURE DIVISION (suite)PROCEDURE DIVISION (suite)► INIT.INIT.► ..► GOBACK.GOBACK.

► VALID1.VALID1.► ..► GOBACK.GOBACK.► . etc.. etc.

► FIN1.FIN1.► ..► GOBACK.GOBACK.► ► FIN2.FIN2.► ..► GOBACK.GOBACK.

Structure d’un programmeStructure d’un programme