For what it's worth, here is the MXG logic to determine the
Type of Task and JESNR for both JES2 and JES3:
/* COPYRIGHT (C) 2002,2013 MERRILL CONSULTANTS, DALLAS, TEXAS, USA */
/* LAST UPDATED: JUN 4, 2013. CHANGE 31.106. */
/* THIS ROUTINE EXPECTS JCTJOBID AND JOB AS 8-BYTE CHARACTERS, */
/* AND SUBSYS AS A 4-BYTE CHARACTER AS INPUT. */
/* IT CREATES THE 4-BYTE CHARACTER TYPETASK AND NUMERIC JESNR */
TYPETASK=' ';
JESNR=.;
IF SUBSYS=' ' THEN SUBSYS=' '; /*EARLY ASIDS,TMNT */
IF JCTJOBID=JOB OR (JCTJOBID LE ' ' AND SUBSYS='STC') THEN DO;
JESNR=.;
TYPETASK='STC';
END;
ELSE DO;
IF INPUT(SUBSTR(JCTJOBID,2,7),?? 7.) GT . THEN DO;
JESNR=INPUT(SUBSTR(JCTJOBID,2,7),?? 7.);
TYPETASK=SUBSTR(JCTJOBID,1,1);
END;
ELSE IF INPUT(SUBSTR(JCTJOBID,3,6),?? 6.) GT . THEN DO;
JESNR=INPUT(SUBSTR(JCTJOBID,3,6),?? 6.);
TYPETASK=SUBSTR(JCTJOBID,1,2);
END;
ELSE IF INPUT(SUBSTR(JCTJOBID,4,5),?? 5.) GT . THEN DO;
JESNR=INPUT(SUBSTR(JCTJOBID,4,5),?? 5.);
TYPETASK=SUBSTR(JCTJOBID,1,3);
END;
ELSE IF INPUT(SUBSTR(JCTJOBID,5,4),?? 4.) GT . THEN DO;
JESNR=INPUT(SUBSTR(JCTJOBID,5,4),?? 4.);
TYPETASK=SUBSTR(JCTJOBID,1,4);
END;
IF SUBSYS='TCP ' THEN TYPETASK='TCP ';
ELSE IF SUBSYS='PSF ' THEN TYPETASK='PSF ';
ELSE IF SUBSYS='VPS ' THEN TYPETASK='VPS ';
ELSE IF TYPETASK=:'J' THEN DO;
IF SUBSYS='TSO ' THEN TYPETASK='TSU ';
ELSE IF SUBSYS='JES2' THEN TYPETASK='JOB ';
ELSE IF SUBSYS='JES3' THEN TYPETASK='JOB ';
ELSE IF SUBSYS='STC ' THEN TYPETASK='STC ';
ELSE IF SUBSYS='OMVS' THEN TYPETASK='OMVS';
ELSE TYPETASK='JOB ';
END;
ELSE IF TYPETASK=:'O' OR SUBSYS='OMVS' THEN TYPETASK='OMVS';
ELSE IF TYPETASK=:'S' THEN TYPETASK='STC ';
ELSE IF TYPETASK=:'A' THEN TYPETASK=SUBSYS;
ELSE IF TYPETASK=:'T' THEN TYPETASK='TSU ';
ELSE IF TYPETASK=:'I' AND SUBSYS='STC' THEN TYPETASK='STC ';
ELSE DO;
IF SUBSYS='STC ' THEN TYPETASK='STC ';
ELSE IF SUBSYS='TSO ' THEN TYPETASK='TSU ';
ELSE IF SUBSYS='JES2' THEN TYPETASK='JOB ';
ELSE IF SUBSYS='JES3' THEN TYPETASK='JOB ';
ELSE IF SUBSYS='STC ' THEN TYPETASK='STC ';
ELSE IF SUBSYS='OMVS' THEN TYPETASK='OMVS';
ELSE DO;
IF PRODUCT=' ' THEN PRODUCT=' ';;
IF SUBTYPE=. THEN SUBTYPE=.;
IF PRODUCT='PERFMON ' AND SUBTYPE=3 THEN DO;
TYPETASK='STC';
SUBSYS='PERFMON';
END;
END;
END;
IF TYPETASK=' ' THEN DO;
BADVJESN+1;
IF BADVJESN LE 2 THEN
PUT '*** WARNING - TYPETASK NOT DECODED: ' / +10
_N_= SYSTEM= ID= SUBTYPE= JOB=
JCTJOBID= SUBSYS= TYPETASK= JESNR= ;
END;
END;
/* END OF MEMBER VGETJESN - GET JESNR AND TYPETASK FROM JCTJOBID */
Herbert W. “Barry” Merrill, PhD
President-Programmer
MXG Software
Merrill Consultants
10717 Cromwell Drive
Dallas, TX 75229
ba...@mxg.com
http://www.mxg.com - FAQ has Most Answers
ad...@mxg.com – invoices/PO/Payment
sup...@mxg.com – technical
tel:
214 351 1966 - expect slow reply, use email
fax:
214 350 3694 – prefer email, still works