Skip to content

Commit 99cfc81

Browse files
committed
Additional Items added
1 parent cb685ad commit 99cfc81

File tree

10 files changed

+3532
-2321
lines changed

10 files changed

+3532
-2321
lines changed
Lines changed: 40 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,40 @@
1-
/* REXX */
2-
/* */
3-
"ISREDIT MACRO"
4-
/* WRITTEN BY DAN WALTHER */
5-
/* TRACE R ; */
6-
/* MOVEOUT works on a member created by MOVEIN */
7-
/* Edit the member and enter MOVEOUT */
8-
/* to create or update members from the one you are editing */
9-
ADDRESS ISREDIT " CURSOR = 1 1 " ;
10-
RETCODE = 0 ;
11-
ADDRESS ISREDIT " (LPOS1,CPOS1) = CURSOR " ;
12-
DO WHILE RETCODE = 0
13-
ADDRESS ISREDIT " (DLINE) = LINE "LPOS1
14-
MYMBR = STRIP(SUBSTR(DLINE,15,22),T) ;
15-
ADDRESS ISREDIT " FIND './ ADD NAME=' 1 "
16-
RETCODE = RC
17-
IF RETCODE > 0 THEN ,
18-
DO
19-
ADDRESS ISREDIT " CURSOR = .ZLAST " ;
20-
ADDRESS ISREDIT " (LPOS2,CPOS2) = CURSOR " ;
21-
IF LPOS2 > LPOS1 THEN,
22-
ADDRESS ISREDIT " REPLACE "MYMBR LPOS1+1 LPOS2
23-
REPRC = RC ;
24-
END ; /* IF RETCODE > 0 THEN */
25-
ELSE,
26-
DO
27-
ADDRESS ISREDIT " (LPOS2,CPOS2) = CURSOR " ;
28-
LPOS2 = LPOS2 - 1 ;
29-
IF LPOS1 < LPOS2 THEN,
30-
ADDRESS ISREDIT " REPLACE "MYMBR LPOS1+1 LPOS2
31-
REPRC = RC
32-
LPOS1 = 1
33-
END; /* ELSE (RETCODE ...) */
34-
IF REPRC = 0 THEN ,
35-
ADDRESS ISREDIT " DELETE "LPOS1 LPOS2 ;
36-
END; /* DO WHILE RETCODE = 0 */
37-
IF SYSVAR(SYSENV) = BACK THEN ,
38-
DO
39-
ADDRESS ISREDIT " SAVE "
40-
ADDRESS ISREDIT " CANCEL "
41-
END
42-
ADDRESS ISREDIT " EXCLUDE ALL ";
43-
ADDRESS ISREDIT " FIND './ ADD NAME=' 1 ALL" ;
44-
EXIT 0
45-

1+
/* REXX */
2+
/* */
3+
"ISREDIT MACRO"
4+
/* WRITTEN BY DAN WALTHER */
5+
/* TRACE R ; */
6+
/* ADDRESS ISREXEC " CONTROL RETURN ERRORS " ; */
7+
ADDRESS ISREDIT " CURSOR = 1 1 " ;
8+
RETCODE = 0 ;
9+
ADDRESS ISREDIT " (LPOS1,CPOS1) = CURSOR " ;
10+
DO WHILE RETCODE = 0
11+
ADDRESS ISREDIT " (DLINE) = LINE "LPOS1
12+
MYMBR = STRIP(SUBSTR(DLINE,15,22),T) ;
13+
ADDRESS ISREDIT " FIND './ ADD NAME=' 1 "
14+
RETCODE = RC
15+
IF RETCODE > 0 THEN ,
16+
DO
17+
ADDRESS ISREDIT " CURSOR = .ZLAST " ;
18+
ADDRESS ISREDIT " (LPOS2,CPOS2) = CURSOR " ;
19+
IF LPOS2 > LPOS1 THEN,
20+
ADDRESS ISREDIT " REPLACE "MYMBR LPOS1+1 LPOS2
21+
REPRC = RC ;
22+
END ; /* IF RETCODE > 0 THEN */
23+
ELSE,
24+
DO
25+
ADDRESS ISREDIT " (LPOS2,CPOS2) = CURSOR " ;
26+
LPOS2 = LPOS2 - 1 ;
27+
IF LPOS1 < LPOS2 THEN,
28+
ADDRESS ISREDIT " REPLACE "MYMBR LPOS1+1 LPOS2
29+
REPRC = RC
30+
LPOS1 = 1
31+
IF SYSVAR(SYSENV) = 'BACK' THEN SAY MYMBR
32+
END; /* ELSE (RETCODE ...) */
33+
IF REPRC = 0 THEN ,
34+
ADDRESS ISREDIT " DELETE "LPOS1 LPOS2 ;
35+
END; /* DO WHILE RETCODE = 0 */
36+
ADDRESS ISREDIT " EXCLUDE ALL ";
37+
ADDRESS ISREDIT " FIND './ ADD NAME=' 1 ALL" ;
38+
IF SYSVAR(SYSENV) = 'BACK' THEN ,
39+
ADDRESS ISREDIT " CANCEL "
40+
EXIT 0
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
//IBMUSERS JOB (0000),
2+
// CLASS=A,MSGCLASS=X,REGION=4M,
3+
// NOTIFY=&SYSUID
4+
//*==================================================================*
5+
// SET C1CCID=PRB0000014
6+
// SET C1CCID=CHG0040007
7+
//*==================================================================*
8+
//* STEP 1 -- Execute REXX -> Python -> ServiceNow
9+
//*-------------------------------------------------------------------
10+
//STEP1 EXEC PGM=IRXJCL,PARM='SNOWQERY &C1CCID'
11+
//SYSEXEC DD DISP=SHR,DSN=YOURSITE.NDVR.TEAM.REXX
12+
//SYSTSIN DD DUMMY
13+
//SYSTSPRT DD SYSOUT=*
14+
//STDERR DD SYSOUT=*
15+
//*--------------------------------------------------------------------
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
/* REXX */
2+
Trace ?R
3+
Arg REQ_CCID .
4+
If Substr(REQ_CCID,1,3) = 'PRB' |,
5+
Substr(REQ_CCID,1,3) = 'CHG' then Call Validate_CCID;
6+
Exit
7+
8+
Validate_CCID:
9+
10+
/* build STDENV input */
11+
CALL BPXWDYN ,
12+
"ALLOC DD(STDENV) LRECL(080) BLKSIZE(24000) SPACE(1,1) ",
13+
" RECFM(F,B) TRACKS ",
14+
" NEW UNCATALOG REUSE ";
15+
Queue "EXPORT PATH=$PATH:" ||,
16+
"'/usr/lpp/IBM/cyp/v3r11/pyz/lib/python3.11/'"
17+
Queue "EXPORT VIRTUAL_ENV=" ||,
18+
"'/u/users/NDVRTeam/venv/lib/python3.11/site-packages/'"
19+
"EXECIO 2 DISKW STDENV (finis"
20+
21+
/* build BPXBATCH inputs and outputs */
22+
/* build STDPARM input */
23+
CALL BPXWDYN ,
24+
"ALLOC DD(STDPARM) LRECL(080) BLKSIZE(24000) SPACE(1,1) ",
25+
" RECFM(F,B) TRACKS ",
26+
" NEW UNCATALOG REUSE ";
27+
Queue "sh cd " ||,
28+
"/u/users/NDVRTeam/venv/lib/python3.11/site-packages;"
29+
Queue "python ServiceNow.py" REQ_CCID
30+
"EXECIO 2 DISKW STDPARM (finis"
31+
32+
CALL BPXWDYN ,
33+
"ALLOC DD(STDOUT) LRECL(200) BLKSIZE(20000) SPACE(5,5) ",
34+
" RECFM(F,B) TRACKS ",
35+
" NEW UNCATALOG REUSE ";
36+
Notnow =,
37+
"ALLOC DD(STDOUT) DA('IBMUSER.STDOUT') OLD REUSE "
38+
39+
CALL BPXWDYN "ALLOC DD(STDIN) DUMMY SHR REUSE"
40+
CALL BPXWDYN "ALLOC DD(STDERR) DA(*) SHR REUSE"
41+
42+
ADDRESS LINK 'BPXBATCH'
43+
44+
"EXECIO * DISKR STDOUT (Stem stdout. finis"
45+
lastrec# = stdout.0
46+
lastrecord = Substr(stdout.lastrec#,1,40)
47+
48+
If Pos("Exists",lastrecord) = 0 then,
49+
Do
50+
Message = 'C1UEXTR2 - CCID ' REQ_CCID ||,
51+
' is not defined to Service-Now'
52+
MessageCode = 'U012'
53+
MyRc = 8
54+
End
55+
56+
CALL BPXWDYN "FREE DD(STDENV) "
57+
CALL BPXWDYN "FREE DD(STDPARM)"
58+
CALL BPXWDYN "FREE DD(STDOUT) "
59+
CALL BPXWDYN "FREE DD(STDIN) "
60+
CALL BPXWDYN "FREE DD(STDERR) "
61+
62+
Return;
63+

0 commit comments

Comments
 (0)