Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
PROCESS DYNAM OUTDD(DISPLAYS)
*****************************************************************
* DESCRIPTION: THIS PGM IS CALLED before Element processing *
* https://github.com/BroadcomMFD/broadcom-product-scripts
* DESCRIPTION: C1UEXT02 is called before Element processing. *
* It gathers Endevor info from the exit blocks *
* then calls REXX program C1UEXTR2. *
* *
Expand All @@ -14,6 +15,9 @@
* DELIMITED BY SIZE *
* INTO ALLOC-TEXT *
* END-STRING. *
* *
* Change the .REXX dataset name to the name of your dataset *
* that contains your C1UEXTR2 Rexx program. *
*****************************************************************
** see also EAGGXCOB for Calling IRXEXEC - the IBM example *
** for calling IRXEXEC from a Cobol program *
Expand Down Expand Up @@ -51,19 +55,21 @@
01 IRXEXEC-PGM PIC X(08) VALUE 'IRXEXEC'.

01 WS-VARIABLES.
03 WS-POINTER PIC 9(8) COMP.
03 WS-WORK-ADDRESS-ADR PIC S9(8) COMP SYNC .
03 WS-WORK-ADDRESS-PTR REDEFINES WS-WORK-ADDRESS-ADR
03 WS-POINTER PIC 9(8) COMP.
03 WS-WORK-ADDRESS-ADR PIC S9(8) COMP SYNC .
03 WS-WORK-ADDRESS-PTR REDEFINES WS-WORK-ADDRESS-ADR
USAGE IS POINTER .
03 ADDRESS-ECB-RETURN-CODE PIC 9(10) .
03 ADDRESS-ECB-MESSAGE-CODE PIC 9(10) .
03 ADDRESS-ECB-MESSAGE-LENGTH PIC 9(10) .
03 ADDRESS-ECB-MESSAGE-TEXT PIC 9(10) .
03 ADDRESS-REQ-SISO-INDICATOR PIC 9(10) .
03 ADDRESS-REQ-CCID PIC 9(10) .
03 ADDRESS-REQ-COMMENT PIC 9(10) .
03 WS-INSPECT-CCID PIC X(12) .
03 WS-INSPECT-COMMENT PIC X(40) .
03 ADDRESS-ECB-RETURN-CODE PIC 9(10) .
03 ADDRESS-ECB-MESSAGE-CODE PIC 9(10) .
03 ADDRESS-ECB-MESSAGE-LENGTH PIC 9(10) .
03 ADDRESS-ECB-MESSAGE-TEXT PIC 9(10) .
03 ADDRESS-REQ-SISO-INDICATOR PIC 9(10) .
03 ADDRESS-REQ-CCID PIC 9(10) .
03 ADDRESS-REQ-COMMENT PIC 9(10) .
03 ADDRESS-REQ-USER-DATA PIC 9(10) .
03 ADDRESS-REQ-ALTER-WITH-UPDATE PIC 9(10) .
03 WS-INSPECT-CCID PIC X(12) .
03 WS-INSPECT-COMMENT PIC X(40) .


01 BPXWDYN PIC X(8) VALUE 'BPXWDYN'.
Expand Down Expand Up @@ -180,6 +186,16 @@
MOVE WS-WORK-ADDRESS-ADR
TO ADDRESS-REQ-COMMENT .

SET WS-WORK-ADDRESS-PTR TO
ADDRESS OF REQ-USER-DATA .
MOVE WS-WORK-ADDRESS-ADR
TO ADDRESS-REQ-USER-DATA .

SET WS-WORK-ADDRESS-PTR TO
ADDRESS OF REQ-ALTER-WITH-UPDATE .
MOVE WS-WORK-ADDRESS-ADR
TO ADDRESS-REQ-ALTER-WITH-UPDATE .

*****
***** / Convert COBOL exit block Datanames into Rexx \
*****
Expand Down Expand Up @@ -226,6 +242,18 @@
DELIMITED BY SIZE
';'
DELIMITED BY SIZE
'Address_REQ_USER_DATA = '
DELIMITED BY SIZE
ADDRESS-REQ-USER-DATA
DELIMITED BY SIZE
';'
DELIMITED BY SIZE
'Address_REQ_ALTER_WITH_UPDATE = '
DELIMITED BY SIZE
ADDRESS-REQ-ALTER-WITH-UPDATE
DELIMITED BY SIZE
';'
DELIMITED BY SIZE
'REQ_COMMENT = "'
DELIMITED BY SIZE
REQ-COMMENT
Expand Down Expand Up @@ -577,7 +605,7 @@

MOVE SPACES TO ALLOC-TEXT .
STRING 'ALLOC DD(REXFILE2) ',
'DA(SYSMD32.NDVR.ADMIN.ENDEVOR.ADM1.CLSTREXX)'
'DA(YOURSITE.NDVR.REXX)'
DELIMITED BY SIZE
' SHR REUSE'
DELIMITED BY SIZE
Expand All @@ -592,7 +620,7 @@

MOVE SPACES TO ALLOC-TEXT .
STRING 'ALLOC DD(SYSEXEC) ',
'DA(SYSMD32.NDVR.ADMIN.ENDEVOR.ADM1.CLSTREXX)'
'DA(YOURSITE.NDVR.REXX)'
DELIMITED BY SIZE
' SHR REUSE'
DELIMITED BY SIZE
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -189,6 +189,12 @@
DELIMITED BY SIZE
'";'
DELIMITED BY SIZE
'REQ_USER_DATA = "'
DELIMITED BY SIZE
REQ-USER-DATA
DELIMITED BY SIZE
'";'
DELIMITED BY SIZE
'REQ_SISO_INDICATOR = "'
DELIMITED BY SIZE
REQ-SISO-INDICATOR
Expand Down Expand Up @@ -555,7 +561,7 @@

MOVE SPACES TO ALLOC-TEXT .
STRING 'ALLOC DD(REXFILE) ',
'DA(SYSMD32.NDVR.ADMIN.ENDEVOR.ADM1.CLSTREXX)'
'DA(YOURSITE.NDVR.REXX)' 00051710
DELIMITED BY SIZE
' SHR REUSE'
DELIMITED BY SIZE
Expand All @@ -570,7 +576,7 @@

MOVE SPACES TO ALLOC-TEXT .
STRING 'ALLOC DD(SYSEXEC) ',
'DA(SYSMD32.NDVR.ADMIN.ENDEVOR.ADM1.CLSTREXX)'
'DA(YOURSITE.NDVR.REXX)' 00053210
DELIMITED BY SIZE
' SHR REUSE'
DELIMITED BY SIZE
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
/* -------------------------------------------------------------- */
/* This is a simple version that: */
/* o Reuses a CCID value already on the element if CCID is blank */
/* o Validates a CCID with Service-Now */
/* o Reuses a comment value from element if comment is blank */
/* o Gives a friendly reminder if the SIGNOUT OVERRIDE is on */
/* -------------------------------------------------------------- */
Expand Down Expand Up @@ -39,15 +40,31 @@
Message =''
MessageCode = ' '

/* If CCID is left blank, then apply last used CCID */
/* If CCID is left blank, then apply last used CCID */
/* otherwise if it appears to be a ServiceNow - validate */
If REQ_CCID = COPIES(' ',12) then Call Update_CCID;
Else,
If Substr(REQ_CCID,1,3) = 'PRB' |,
Substr(REQ_CCID,1,3) = 'CHG' then Call Validate_CCID;

/* If COMMENT is left blank, then apply last used COMMENT */
If MyRc < 8 &,
REQ_COMMENT = COPIES(' ',40) then Call Update_COMMENT;

sa= 'MyRc =' MyRc

If SRC_ENV_SYSTEM_NAME = 'ADMINSYS' |,
TGT_ENV_SYSTEM_NAME = 'ADMINSYS' then,
Do
hexAddress = D2X(ADDRESS_REQ_USER_DATA)
storrep = STORAGE(hexAddress,,'Endevor Admin Work')
hexAddress = D2X(ADDRESS_REQ_ALTER_WITH_UPDATE)
storrep = STORAGE(hexAddress,,'00000004'X)
hexAddress = D2X(Address_ECB_RETURN_CODE)
storrep = STORAGE(hexAddress,,'00000004'X)
Exit
End

/* Did user specify OVERRIDE SIGNOUT ? */
If MyRc = 0 & REQ_SISO_INDICATOR = 'Y' then
Do
Expand Down Expand Up @@ -103,6 +120,62 @@ Update_CCID:

Return;

Validate_CCID:

/* build STDENV input */
CALL BPXWDYN ,
"ALLOC DD(STDENV) LRECL(080) BLKSIZE(24000) SPACE(1,1) ",
" RECFM(F,B) TRACKS ",
" NEW UNCATALOG REUSE ";
Queue "EXPORT PATH=$PATH:" ||,
"'/usr/IBM/python/lib/python#.##/'"
Queue "EXPORT VIRTUAL_ENV=" ||,
"'u/your/venv/lib/python#.##/site-packages/'"
"EXECIO 2 DISKW STDENV (finis"

/* build BPXBATCH inputs and outputs */
/* build STDPARM input */
CALL BPXWDYN ,
"ALLOC DD(STDPARM) LRECL(080) BLKSIZE(24000) SPACE(1,1) ",
" RECFM(F,B) TRACKS ",
" NEW UNCATALOG REUSE ";
Queue "sh cd " ||,
"u/your/venv/lib/python#.##/site-packages;"
Queue "python ServiceNow.py" REQ_CCID
"EXECIO 2 DISKW STDPARM (finis"

CALL BPXWDYN ,
"ALLOC DD(STDOUT) LRECL(200) BLKSIZE(20000) SPACE(5,5) ",
" RECFM(F,B) TRACKS ",
" NEW UNCATALOG REUSE ";
Notnow =,
"ALLOC DD(STDOUT) DA('IBMUSER.STDOUT') OLD REUSE "

CALL BPXWDYN "ALLOC DD(STDIN) DUMMY SHR REUSE"
CALL BPXWDYN "ALLOC DD(STDERR) DA(*) SHR REUSE"

ADDRESS LINK 'BPXBATCH'

"EXECIO * DISKR STDOUT (Stem stdout. finis"
lastrec# = stdout.0
lastrecord = Substr(stdout.lastrec#,1,40)

If Pos("Exists",lastrecord) = 0 then,
Do
Message = 'C1UEXTR2 - CCID ' REQ_CCID ||,
' is not defined to Service-Now'
MessageCode = 'U012'
MyRc = 8
End

CALL BPXWDYN "FREE DD(STDENV) "
CALL BPXWDYN "FREE DD(STDPARM)"
CALL BPXWDYN "FREE DD(STDOUT) "
CALL BPXWDYN "FREE DD(STDIN) "
CALL BPXWDYN "FREE DD(STDERR) "

Return;

Update_COMMENT:

If Wordpos(ECB_ACTION_NAME,ActionsThatUse_SRC) > 0 then,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
CALL BPXWDYN STRING;

/* Indicate your choices here..... */
LoggingPrefix = 'SYSMD32.NDVR.LOGGING'
LoggingPrefix = 'YOURSITE.NDVR.LOGGING'
HowManyEntries= 20

/* If C1UEXTR3 is allocated to anything, turn on Trace */
Expand Down Expand Up @@ -41,9 +41,10 @@
Message =''
MessageCode = ' '
/*
If TGT_ENV_TYPE_OF_BLOCK = 'C' then,
If SRC_ENV_IO_TYPE = 'I' then,
*/
If SRC_ENV_SYSTEM_NAME = 'ADMINSYS' |,
TGT_ENV_SYSTEM_NAME = 'ADMINSYS' then,
Say REQ_USER_DATA

sa= SRC_ENV_TYPE_OF_BLOCK
sa= TGT_ENV_TYPE_OF_BLOCK
Expand Down