![]() |
A.C.M.U : Automate de Conversion MVS UNIX/Linux | |
Exemple de JOB type à convertirCi-dessous, un JOB MVS comportant quelques tournures de JCL que l'Automate peut convertir.Dans la réalité, sous MVS, ce job ne fonctionnerait pas. Mais le script Shell obtenu par l'Automate fonctionne parfaitement sous UNIX ! Vous pouvez "copier/coller" ce Job, le modifier à votre gré et le soumettre à notre automate. Vous noterez que l'appel au program SORT sous UNIX utilise exactement les commandes de tri du DFSORT IBM. En fait, nous utilisons notre utilitaire XSM pour ce faire.
//JOBTST10 JOB (HHNTST),'HHNS1',CLASS=J,MSGCLASS=B,MSGLEVEL=(1,1), // REGION=6M,NOTIFY=OPERATOR //******************************************************************** //* THIS JOB CREATES AND SORTS A FILE FROM SCRATCH. //* AT ENTRY : NOTHING INTERESTING //* AT EXIT : FILE 'REAL.TEST10HH.FILE.SAVED'IS CATALOGUED. //* <ANY OTHER COMMENT ...> //******************************************************************** // JCLLIB ORDER=(OPERATE.PROD9.PROCLIB,OPERATE.PROD8.PROCLIB) // INCLUDE MEMBER=MARCEL //* //JOBLIB DD DSN=OPERATE.PROD1.LOADLIB,DISP=SHR // DD DSN=OPERATE.PROD2.LOADLIB,DISP=SHR // DD DSN=OPERATE.PROD3.LOADLIB,DISP=SHR //******************************************************************** //* STEP T10S05 : PROGRAM IEFBR14 //* REMOVES SOME OLD FILES, IF ANY //******************************************************************** //STPS05 EXEC PGM=IEFBR14 //F1 DD DSN=F1,DISP=(OLD,DELETE) //F2 DD DSN=F2,DISP=(OLD,DELETE) //F3 DD DSN=F3,DISP=(OLD,DELETE) //F4 INCLUDE MEMBER=DDF4 //******************************************************************** //* STEP T10S10 : PROGRAM IDCAMS //* REMOVES OLD VERSION OF FILE 'REAL.TEST10.FILE.SORTED', IF ANY //******************************************************************** //STPS10 EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * DELETE REAL.TEST10HH.FILE.SAVED IF MAXCC = 8 THEN SET MAXCC = 0 END /* //******************************************************************** //* STEP T10S20 : PROGRAM TEST10HH //* ACCEPTS 3 PARAMETERS //* READS A LINE FROM SYSIN //* CREATES FILE 'REAL.TEST10HH.FILE', NEXT GDG //* USES A WORKFILE '&&WRK' //* USES SOME FILE WITH '$' EMBEDDED //******************************************************************** //STPS20 EXEC PGM=TEST10HH,COND=(4,LE), // PARM=(1515,'L''ELEVE BAT DE L''AILE DANS L''ILE D''OLEROX // N',1000) //SYSTSPRT DD SYSOUT=* //SYSOUT DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSUDUMP DD SYSOUT=D //WRKFILE1 DD DSN=&&WRK,DISP=(NEW,PASS) //SAMPLE$ DD DSN=$TEST.SAMPLE$.DOLLAR,DISP=SHR //TST10F DD DSN=REAL.TEST10HH.FILE(+1),DISP=(NEW,KEEP) //SYSIN DD * THESE ARE THE PARAMETERS FOR TEST10HH THAT ARE MORE THAN SEVENTY-ONE CH ARACTERS LONG. /* //STEPLIB DD DSN=TEST10H.PROD1.LOADLIB,DISP=SHR // DD DSN=TEST10H.PROD2.LOADLIB,DISP=SHR //* //******************************************************************** //* STEP T10S30 : PROGRAM SORT <USES : HHNS EXTENDED SORT/MERGE> //* SORTS THE PREVOUS FILE IN REVERSE ORDER, COLS 1-3 //* IN ASCEND. ORDER, COLS 4-9 //* RESULT IS 'REAL.TEST10HH.FILE.SORTED' //******************************************************************** //STPS30 EXEC PGM=SORT,COND=(4,LE) //SYSOUT DD SYSOUT=* //SORTIN DD DSN=REAL.TEST10HH.FILE(+0),DISP=(OLD) //SORTOUT DD DSN=REAL.TEST10HH.FILE.SORTED,DISP=(NEW,KEEP) //SYSIN DD * SORT FIELDS=(1,3,D,4,6,A),FORMAT=BI /* //DEMO40 IF (STS20.RC EQ 0) THEN //******************************************************************** //* STEP T10S40 : PROGRAM IEBGENER //* COPIES 'REAL.TEST10HH.FILE.SORTED' TO 'REAL.TEST10.FILE.SAVED' //******************************************************************** //STPS40 EXEC PGM=IEBGENER //SYSUT1 DD DSN=*.STPS30.SORTOUT,DISP=OLD //SYSUT2 DD DSN=REAL.TEST10HH.FILE.SAVED(+1),DISP=(NEW,CATALG) //SYSPRINT DD SYSOUT=* //DEMO40 ENDIF // //******************************************************************** //* ALL THAT STUFF SHOUD BE IGNORED //* DUE TO empty '//' ABOVE ... //******************************************************************** //STPS40 EXEC PGM=ANY,(4,LE,STPS40) //SYSUT1 DD DSN=*.STPS30.SORTOUT,DISP=OLD //SYSPRINT DD SYSOUT=* Voir le Script Shell obtenu aprés conversion par l'Automate. Voir le Programme COBOL qui crée le fichier à trier. Revenir à la Soumission d'un Job. |
| Contact | Company Info | Site map | Trademarks | Design Stéphane HENAULT © HH&S 1994-2010 | ![]() |