Beruflich Dokumente
Kultur Dokumente
******************************************************************
* 09-11-2011 |
|48750249|
*
*
|
|
|
*
*
|
|
|
*
*
|
|
|
*
*
|
|
|
*
******************************************************************
/
******************************************************************
* COPYBOOK USED *
*
*
* 1. GRCITAD
LOCATION (FSS196.ADMIN.COPYLIB)
*
* DESCRIPTION - SYMBOLIC MAP VARIABLES
*
* 2. DFHAID
LOCATION (CICS COPYBOOK)
*
* DESCRIPTION - EIB ATTENTION KEYS
*
* 3. DFHBMSCA
LOCATION (CICS COPYBOOK)
*
* DESCRIPTION - BMS COMMUNICATION AREA
*
*
*
*
*
*
*
*
*
* TABLE USED
*
* **********
*
* GR_CRITERA_SELRNGE
- ACCESS MODE (S)
*
* DCLGEN NAME
- GRDCLCSR
*
*
*
*
*
******************************************************************
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SOURCE-COMPUTER. IBM-390.
OBJECT-COMPUTER. IBM-390.
/
DATA DIVISION.
WORKING-STORAGE SECTION.
77 FILLER
PIC X(60) VALUE '**** BEGINNING
' OF WORKING STORAGE - <GDO00172> ****'.
77 WE-PARAGRAPH-NAME
PIC X(43).
77 WW-ERROR-LENGTH
PIC S9(04) USAGE COMP.
77 WW-CHECK
PIC X(02) VALUE '/'.
01 WW-VALID-CHECK
PIC X
VALUE 'N'.
88 WW-VALID-DATA
VALUE 'Y'.
77 DCL-SEQ-NUM1
PIC S9(3)V USAGE COMP-3.
77 WW-ORG-CODE
PIC S9(3)V USAGE COMP-3.
01 WW-COMMAREA.
05 WW-ORG-NUM
05 WW-CRIT-CODE
01 WW-COMMAREA1.
05 WW-ERROR-NO
05 WW-ERROR-NAME
01 WW-COMMAREA2.
05 WW-TRANS
05 WW-PROG-NAME
05 WW-ERROR-NAME1
05 WW-SWITCH
77
77
77
77
WW-PARAGRAPH-NAME
WW-RESP
WW-EXIT
FILLER
COPY GRCITAD.
/
COPY GU00001W.
/
COPY DFHAID.
/
COPY DFHBMSCA.
/
***************************************************************
*
DCLGEN
*
***************************************************************
*
DCLGEN NAME
|
TABLE NAME
*
***************************************************************
*
GRDCLCSR
| GR_CRITERA_SELRNGE
***************************************************************
EXEC SQL
INCLUDE GRDCLCSR
END-EXEC.
EXEC SQL
INCLUDE SQLCA
END-EXEC.
/
LINKAGE SECTION.
01 DFHCOMMAREA.
02 LK-ORG-NUM
02 LK-CRIT-CODE
02 LK-ERROR-NO
02 LK-ERROR-NAME
PIC
PIC
PIC
PIC
/
PROCEDURE DIVISION.
A010-MAINLINE SECTION.
***************************************************************
*
START OF THE PROCEDURE DIVISION
*
***************************************************************
A010-10-MAINLINE-START.
MOVE 'A010-MAINLINE'
TO WE-PARAGRAPH-NAME.
INITIALIZE WW-COMMAREA.
IF EIBCALEN > 0
MOVE DFHCOMMAREA
TO WW-COMMAREA
ELSE IF
EIBCALEN = 0
MOVE LOW-VALUES
TO GRCITADO
MOVE -1
TO TRANSIDL
PERFORM B010-10-SEND-MAP-PARA-START
THRU B010-99-SEND-MAP-PARA-EXIT
END-IF.
EVALUATE EIBAID
WHEN DFHPF3
PERFORM D020-10-EXIT-PARA-START
THRU D020-99-EXIT-PARA-EXIT
WHEN DFHPF6
PERFORM B010-10-RECEIVE-PARA-START
THRU B010-99-RECEIVE-PARA-EXIT
PERFORM E010-10-VALIDATE-PARA-START
THRU E010-99-VALIDATE-PARA-EXIT
PERFORM B030-10-XCTL-DE14-START
THRU B030-99-XCTL-DE14-EXIT
WHEN DFHENTER
PERFORM D010-10-TRANSID-PARA-START
THRU D010-99-TRANSID-PARA-EXIT
WHEN OTHER
MOVE LOW-VALUES TO GRCITADO
MOVE 570
TO WW-ERROR-NO
MOVE WW-ERROR-NAME
TO MESSAGEO
PERFORM B010-10-LINK-ERROR-PARA-START
THRU B010-99-LINK-ERROR-PARA-EXIT
PERFORM B010-10-SEND-MAP-PARA-START
THRU B010-99-SEND-MAP-PARA-EXIT
END-EVALUATE.
A010-99-MAINLINE-EXIT.
EXIT.
/
***************************************************************
*
EXIT FROM THE PROGRAM GDO00172
*
***************************************************************
D020-EXIT-SECTION SECTION.
D020-10-EXIT-PARA-START.
MOVE 'B020-MAINLINE'
TO WE-PARAGRAPH-NAME.
EXEC CICS
SEND TEXT
FROM(WW-EXIT)
ERASE
FREEKB
END-EXEC.
EXEC CICS
RETURN
END-EXEC.
D020-99-EXIT-PARA-EXIT.
EXIT.
/
***************************************************************
*
PROCEDURE DIVISION XCTL DE14 SECTION
*
***************************************************************
B030-XCTL-DE14-SECTION.
B030-10-XCTL-DE14-START.
MOVE 'B030-10-XCTL-DE14'
TO WE-PARAGRAPH-NAME.
MOVE ORGCODEI
TO WW-ORG-NUM.
MOVE CRTCODEI
TO WW-CRIT-CODE.
EXEC CICS XCTL
PROGRAM('GDO00173')
COMMAREA(WW-COMMAREA)
END-EXEC.
B030-99-XCTL-DE14-EXIT.
EXIT.
/
***************************************************************
*
PROCEDURE DIVISION XCTL DE36 SECTION
*
***************************************************************
B030-XCTL-DE36-SECTION.
B030-10-XCTL-DE36-START.
MOVE 'B030-10-XCTL-DE36'
TO WE-PARAGRAPH-NAME.
EXEC CICS XCTL
PROGRAM('GDO00174')
COMMAREA(WW-COMMAREA)
END-EXEC.
B030-99-XCTL-DE36-EXIT.
EXIT.
***************************************************************
*
FETCHING DATA FROM TABLE GR_CRITERA_SELRNGE
*
***************************************************************
/
B010-RECEIVE SECTION.
B010-10-RECEIVE-PARA-START.
MOVE 'B030-MAINLINE'
TO WE-PARAGRAPH-NAME.
MOVE LOW-VALUES
TO GRCITADI.
EXEC CICS
RECEIVE MAP('GRCITAD')
MAPSET('GRCITAD')
INTO(GRCITADI)
END-EXEC.
B010-99-RECEIVE-PARA-EXIT.
EXIT.
/
/
***************************************************************
*
FETCHING DATA FROM TABLE GR_CRITERA_SELRNGE
***************************************************************
/
B010-RECEIVE SECTION.
B010-10-XCTL-DE36-PARA-START.
MOVE 'B030-MAINLINE'
TO WE-PARAGRAPH-NAME.
MOVE LOW-VALUES
TO GRCITADI.
EXEC CICS
RECEIVE MAP('GRCITAD')
MAPSET('GRCITAD')
INTO(GRCITADI)
END-EXEC.
PERFORM E010-10-VALIDATE-PARA-START
THRU E010-99-VALIDATE-PARA-EXIT
PERFORM B030-10-XCTL-DE36-START
THRU B030-99-XCTL-DE36-EXIT.
B010-99-XCTL-DE36-PARA-EXIT.
EXIT.
/
*************************************************************
*
SEND MAP WITH TRANSACTION ID DE14
*
*************************************************************
BO10-SEND-MAP SECTION.
B010-10-SEND-MAP-PARA-START.
COPY GU00001C.
MOVE WW-DATE
TO DATEO.
MOVE WW-TIME
TO TIMEO.
MOVE 00
EXEC CICS SEND
MAP('GRCITAD')
MAPSET('GRCITAD')
FROM(GRCITADO)
FREEKB
CURSOR
ERASE
END-EXEC.
EXEC CICS
RETURN
TRANSID('DE13')
COMMAREA(WW-COMMAREA)
END-EXEC.
B010-99-SEND-MAP-PARA-EXIT.
EXIT.
TO PAGEO.
/
DO10-TRANSID SECTION.
D010-10-TRANSID-PARA-START.
EXEC CICS
RECEIVE MAP('GRCITAD')
MAPSET('GRCITAD')
INTO(GRCITADI)
END-EXEC.
IF TRANSIDI NOT = SPACES
MOVE TRANSIDI
TO WW-TRANS
PERFORM B010-10-LINK-TRANSID-START
THRU B010-99-LINK-TRANSID-EXIT
IF WW-SWITCH = 1
EXEC CICS
XCTL
PROGRAM(WW-PROG-NAME)
END-EXEC
END-IF
MOVE WW-ERROR-NAME1
TO MESSAGEO
PERFORM B010-10-SEND-MAP-PARA-START
THRU B010-99-SEND-MAP-PARA-EXIT
ELSE IF
TRANSIDI = SPACES AND PAGEI = 00
MOVE 609
TO WW-ERROR-NO
PERFORM B010-10-LINK-ERROR-PARA-START
THRU B010-99-LINK-ERROR-PARA-EXIT
MOVE WW-ERROR-NAME
TO MESSAGEO
PERFORM B010-10-SEND-MAP-PARA-START
THRU B010-99-SEND-MAP-PARA-EXIT
ELSE IF PAGEI = 01
EXEC CICS
XCTL
PROGRAM('GDO00173')
END-EXEC
ELSE IF PAGEI = 02
EXEC CICS
XCTL
PROGRAM('GDO00174')
END-EXEC
ELSE IF PAGEI GREATER THAN 02
MOVE -1
TO PAGEL
MOVE 897
TO WW-ERROR-NO
PERFORM B010-10-LINK-ERROR-PARA-START
THRU B010-99-LINK-ERROR-PARA-EXIT
MOVE WW-ERROR-NAME
TO MESSAGEO
PERFORM B010-10-SEND-MAP-PARA-START
THRU B010-99-SEND-MAP-PARA-EXIT.
IF TRANSIDI NOT = SPACES
MOVE TRANSI
TO WW-TRANS
EXEC CICS
RETURN
TRANSID(WW-TRANS)
END-EXEC
END-IF.
D010-99-TRANSID-PARA-EXIT.
EXIT.
/
**********************************************************
*
VALIDATION SECTION
*
**********************************************************
EO10-VALIDATE SECTION.
E010-10-VALIDATE-PARA-START.
IF ORGCODEI = SPACES OR ORGCODEL = ZERO
MOVE -1
TO ORGCODEL
MOVE 571
TO WW-ERROR-NO
PERFORM B010-10-LINK-ERROR-PARA-START
THRU B010-99-LINK-ERROR-PARA-EXIT
MOVE WW-ERROR-NAME
TO MESSAGEO
MOVE 'N'
TO WW-VALID-CHECK
PERFORM B010-10-SEND-MAP-PARA-START
THRU B010-99-SEND-MAP-PARA-EXIT
END-IF.
IF CRTCODEI = SPACES OR CRTCODEL = ZERO
MOVE -1
TO CRTCODEL
MOVE 568
TO WW-ERROR-NO
PERFORM B010-10-LINK-ERROR-PARA-START
THRU B010-99-LINK-ERROR-PARA-EXIT
MOVE WW-ERROR-NAME
TO MESSAGEO
MOVE 'N'
TO WW-VALID-CHECK
PERFORM B010-10-SEND-MAP-PARA-START
THRU B010-99-SEND-MAP-PARA-EXIT
END-IF.
E010-99-VALIDATE-PARA-EXIT.
EXIT.
/
**********************************************************
*
ERROR LINK SECTION
*
**********************************************************
B010-10-LINK-ERROR SECTION.
B010-10-LINK-ERROR-PARA-START.
EXEC CICS LINK
PROGRAM('GUO00001')
COMMAREA(WW-COMMAREA1)
END-EXEC.
B010-99-LINK-ERROR-PARA-EXIT.
EXIT.
/
**********************************************************
*
TRANS ID LINK SECTION
*
**********************************************************
B010-10-LINK-TRANSID SECTION.
B010-10-LINK-TRANSID-START.
EXEC CICS LINK
PROGRAM('GUO00002')
COMMAREA(WW-COMMAREA2)
END-EXEC.
B010-99-LINK-TRANSID-EXIT.
EXIT.
****END GDO00172 PROGRAM*****