View previous topic :: View next topic
Author
Message
tuxama New User Joined: 25 Jan 2007Posts: 42 Location: france
Hello,
I have an input file containing 80 JCL of several steps.
I have to propagate on all lines jobnames in column 80 and stepname in column 90. To obtain the following result:
Code:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+--
./ ADD NAME=F2LAG8021 SOURCE=0035 PDS=ADCX.OPC.BTQ.JOBLIB.REF.SYSQ F2LAG802
//F2LAG802 JOB (00000000,00000000000BAZ,AE07A30L00AQ00,'R=00 '), $OPC$V F2LAG802
// RD=R,CLASS=I,MSGCLASS=9,SCHENV='SE_DB2DS' F2LAG802
//*%OPC SCAN F2LAG802
//*%OPC SETVAR TAOCP00O=(OYMD1 + 00WD),PHASE=SETUP F2LAG802
//JCLLIB JCLLIB ORDER=(ADCX.JOB.&SYSNAME..JCLLIB, F2LAG802
// EXPL.JOB.$$$.JCLLIB) F2LAG802
//* F2LAG802
//*------------------------------------------------------------------- F2LAG802
//S01 EXEC CHPNN,PROG=IKJEFT1B, F2LAG802 S01
// DATOPC=&OYMD1. F2LAG802 S01
/* F2LAG802 S01
... F2LAG802 S01
//S02 EXEC CHPNN,PROG=IKJEFT1B, F2LAG802 S02
// DATOPC=&OYMD1. F2LAG802 S02
/* F2LAG802 S02
... F2LAG802 S02
./ ADD NAME=FAAAAAAA SOURCE=0036 PDS=ADCX.OPC.BTQ.JOBLIB.REF.SYSQ FAAAAAAA
//FAAAAAAA JOB (00000000,00000000000BAZ,AE07A30L00AQ00,'R=00 '), $OPC$V FAAAAAAA
// RD=R,CLASS=I,MSGCLASS=9,SCHENV='SE_DB2DS' FAAAAAAA
//*%OPC SCAN FAAAAAAA
//*%OPC SETVAR TAOCP00O=(OYMD1 + 00WD),PHASE=SETUP FAAAAAAA
//JCLLIB JCLLIB ORDER=(ADCX.JOB.&SYSNAME..JCLLIB, FAAAAAAA
// EXPL.JOB.$$$.JCLLIB) FAAAAAAA
//* FAAAAAAA
//*------------------------------------------------------------------- FAAAAAAA
//S11 EXEC CHPNN,PROG=IKJEFT1B, FAAAAAAA S11
// DATOPC=&OYMD1. FAAAAAAA S11
/* FAAAAAAA S11
//... FAAAAAAA S11
//S22 EXEC CHPNN,PROG=IKJEFT1B, FAAAAAAA S12
// DATOPC=&OYMD1. FAAAAAAA S12
/* FAAAAAAA S12
...
The following :
Code:
INREC IFTHEN=(WHEN=GROUP,
BEGIN=(1,15,CH,EQ,C'./ ADD NAME='),
PUSH=(80:16,8)),
IFTHEN=(WHEN=GROUP,
BEGIN=(12,4,CH,EQ,C'EXEC'),
PUSH=(90:3,8))
Produce :
Code:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+--
./ ADD NAME=F2LAG8021 SOURCE=0035 PDS=ADCX.OPC.BTQ.JOBLIB.REF.SYSQ F2LAG802
//F2LAG802 JOB (00000000,00000000000BAZ,AE07A30L00AQ00,'R=00 '), $OPC$V F2LAG802
// RD=R,CLASS=I,MSGCLASS=9,SCHENV='SE_DB2DS' F2LAG802
//*%OPC SCAN F2LAG802
//*%OPC SETVAR TAOCP00O=(OYMD1 + 00WD),PHASE=SETUP F2LAG802
//JCLLIB JCLLIB ORDER=(ADCX.JOB.&SYSNAME..JCLLIB, F2LAG802
// EXPL.JOB.$$$.JCLLIB) F2LAG802
//* F2LAG802
//*------------------------------------------------------------------- F2LAG802
//S01 EXEC CHPNN,PROG=IKJEFT1B, F2LAG802 S01
// DATOPC=&OYMD1. F2LAG802 S01
/* F2LAG802 S01
... F2LAG802 S01
//S02 EXEC CHPNN,PROG=IKJEFT1B, F2LAG802 S02
// DATOPC=&OYMD1. F2LAG802 S02
/* F2LAG802 S02
... F2LAG802 S02
./ ADD NAME=FAAAAAAA SOURCE=0036 PDS=ADCX.OPC.BTQ.JOBLIB.REF.SYSQ FAAAAAAA S02
//FAAAAAAA JOB (00000000,00000000000BAZ,AE07A30L00AQ00,'R=00 '), $OPC$V FAAAAAAA S02
// RD=R,CLASS=I,MSGCLASS=9,SCHENV='SE_DB2DS' FAAAAAAA S02
//*%OPC SCAN FAAAAAAA S02
//*%OPC SETVAR TAOCP00O=(OYMD1 + 00WD),PHASE=SETUP FAAAAAAA S02
//JCLLIB JCLLIB ORDER=(ADCX.JOB.&SYSNAME..JCLLIB, FAAAAAAA S02
// EXPL.JOB.$$$.JCLLIB) FAAAAAAA S02
//* FAAAAAAA S02
//*------------------------------------------------------------------- FAAAAAAA S02
//S11 EXEC CHPNN,PROG=IKJEFT1B, FAAAAAAA S11
// DATOPC=&OYMD1. FAAAAAAA S11
/* FAAAAAAA S11
//... FAAAAAAA S11
//S22 EXEC CHPNN,PROG=IKJEFT1B, FAAAAAAA S12
// DATOPC=&OYMD1. FAAAAAAA S12
/* FAAAAAAA S12
...
So the problem is how to propagate correctly the stepname.
Does anyone have any ideas ?
Back to top
tuxama New User Joined: 25 Jan 2007Posts: 42 Location: france
The errors on the following lines :
Code:
./ ADD NAME=FAAAAAAA SOURCE=0036 PDS=ADCX.OPC.BTQ.JOBLIB.REF.SYSQ FAAAAAAA S02
//FAAAAAAA JOB (00000000,00000000000BAZ,AE07A30L00AQ00,'R=00 '), $OPC$V FAAAAAAA S02
// RD=R,CLASS=I,MSGCLASS=9,SCHENV='SE_DB2DS' FAAAAAAA S02
//*%OPC SCAN FAAAAAAA S02
//*%OPC SETVAR TAOCP00O=(OYMD1 + 00WD),PHASE=SETUP FAAAAAAA S02
//JCLLIB JCLLIB ORDER=(ADCX.JOB.&SYSNAME..JCLLIB, FAAAAAAA S02
// EXPL.JOB.$$$.JCLLIB) FAAAAAAA S02
//* FAAAAAAA S02
//*------------------------------------------------------------------- FAAAAAAA S02
Because they do not belong to any step.
Back to top
Pandora-Box Global Moderator Joined: 07 Sep 2006Posts: 1592 Location: Andromeda Galaxy
This code should have an end
Code:
IFTHEN=(WHEN=GROUP,
BEGIN=(12,4,CH,EQ,C'EXEC'),
PUSH=(90:3,8))
Atleast if you have comment to mark the end it should be regarded as END
Or I could think of is end at './ ADD NAME=' and dont consider the step name
Back to top
tuxama New User Joined: 25 Jan 2007Posts: 42 Location: france
The question is sometimes stupid ...
Thank you for your answer that solves my problem.
The code is :
Code:
INREC IFTHEN=(WHEN=GROUP,
BEGIN=(1,15,CH,EQ,C'./ ADD NAME='),
PUSH=(80:16,8)),
IFTHEN=(WHEN=GROUP,
BEGIN=(12,4,CH,EQ,C'EXEC'),
END=(1,15,CH,EQ,C'./ ADD NAME='),
PUSH=(90:3,8)),
IFTHEN=(WHEN=(1,15,CH,EQ,C'./ ADD NAME='),
OVERLAY=(90:7X))
Back to top
Pandora-Box Global Moderator Joined: 07 Sep 2006Posts: 1592 Location: Andromeda Galaxy
Glad it solves your problem and would recommend you to read the manual as there are many options that would be explained with sample codes and which would help you learning yourself and saves time
Back to top
Please enable JavaScript!