1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
|
//MONUSERI JOB (ICETOOL,01RB),CLASS=C,NOTIFY=&SYSUID,
// REGION=0M,MSGCLASS=T
//*--- FLMNH
//DLT001 EXEC PGM=IEFBR14
//SYSPRINT DD SYSOUT=*
//DELETE DD DSN=HLQ.MONUSER.ICETOOL.OUT001,
// SPACE=(TRK,(1,1),RLSE),DISP=(MOD,DELETE,DELETE)
//DELETE DD DSN=HLQ.MONUSER.ICETOOL.OUT002,
// SPACE=(TRK,(1,1),RLSE),DISP=(MOD,DELETE,DELETE)
//DELETE DD DSN=HLQ.MONUSER.ICETOOL.WRKFIL,
// SPACE=(TRK,(1,1),RLSE),DISP=(MOD,DELETE,DELETE)
//*--- ICETOOL
//ICETOO1 EXEC PGM=ICETOOL
//TOOLMSG DD SYSOUT=* MESSAGES ICETOOL
//DFSMSG DD SYSOUT=* MESSAGES DFSORT
//*--- Ne pas préciser la longueur des fichiers résultants
//OUT01 DD DSN=HLQ.MONUSER.ICETOOL.OUT001,
// DISP=(NEW,CATLG,CATLG),
// UNIT=(SYSDA,5),
// SPACE=(CYL,(80,80),RLSE)
//*--- Le fichier temporaire doit être de type &&
//TEMP1 DD DSN=&&TEMP1,
// DISP=(MOD,PASS),
// UNIT=(SYSDA,5),
// SPACE=(TRK,(002,005),RLSE)
//*-+----1----+----2----+----3----+----4----+
//INP01 DD *
600 65000 TARBES
021 66000 PERPIGNAN
445 64000 PAU
126 63000 CLERMONT
448 64000 PAU (de zébu)
704 62000 ARRAS
/*
//INP02 DD *
64000 AAA le texte 1 c'est ici pour Pau
65000 BBB tiens voila du boudin à Tarbes
67000 CCC c'est à Strasbourg
66000 DDD el pericoloso sporgersi de Perpignan
65000 EEE pic X le gaulois
/*
//TOOLIN DD *
* Reformatage fichier 1
COPY FROM(INP01) TO(TEMP1) USING(CTL1)
* Reformatage fichier 2
COPY FROM(INP02) TO(TEMP1) USING(CTL2)
* Supperpose dans Fic1 les champs WITH de Fic2 avec critère(s) de jointure ON
SPLICE FROM(TEMP1) TO(OUT01) ON(5,5,ZD) -
WITH(21,60)
/*
//CTL1CNTL DD *
OUTREC FIELDS=(1,20, Place tout l'enregistrement de INP01 dans TEMP1
80:X) et complete a blanc pour une lg totale de 80
/*
//CTL2CNTL DD *
OUTREC FIELDS=(05:001,005, Place en Pos 05 de TEMP1, [001,005] de INP02
21:011,050, Place en Pos 21 de TEMP1, [011,060] de INP02
80:X) Complete à blanc
/*
//*--- exemples de résultats
//*SPLICE FROM(TEMP1) TO(OUT01) ON(5,5,ZD) WITH(01,80)
//* 64000 le texte 1 c'est ici pour Pau
//* 65000 pic X le gaulois
//* 66000 el pericoloso sporgersi de Perpignan
//*SPLICE FROM(TEMP1) TO(OUT01) ON(5,5,ZD) WITH(05,05)
//*445 64000 PAU
//*600 65000 TARBES
//*021 66000 PERPIGNAN
//*SPLICE FROM(TEMP1) TO(OUT01) ON(5,5,ZD) WITH(21,60)
//*445 64000 PAU le texte 1 c'est ici pour Pau
//*600 65000 TARBES pic X le gaulois
//*021 66000 PERPIGNAN el pericoloso sporgersi de Perpignan
//*SPLICE FROM(TEMP1) TO(OUT01) ON(5,5,ZD) WITH(21,60) -
//* KEEPNODUPS <== keepnodups pour garder les orphelins
//*704 62000 ARRAS
//*126 63000 CLERMONT
//*445 64000 PAU le texte 1 c'est ici pour Pau
//*600 65000 TARBES pic X le gaulois
//*021 66000 PERPIGNAN el pericoloso sporgersi de Perpignan
//* 67000 c'est à Strasbourg
// |
Partager