Está en la página 1de 35

CHARLA 2

PARTE I

SOBRE JOBS – JOBS MODELOS


(SIN USO DE PROC Y UN SOLO STEP)
En el siguiente Job stream, se visualizan los dos componentes del Job:

• Información de identificación (JOB CARD)


• Información de execución (JOB STEPS)
 Call al programa a ejecutarse
 Información sobre DD Statements

//JDAME01B JOB (0390,00,LIS),'CREA DEUDORES ICC',CLASS=S,MSGCLASS=P 00000001


//STEP000 EXEC PGM=IDCAMS 00000092
//SYSPRINT DD SYSOUT=P 00000097
//OUTPUT DD DSN=BCICE.AX5.GTIAS.PREFE.RIDAS,DISP=OLD 00000098
//SYSIN DD *
repro infile(input) outfile(output)
//INPUT DD DUMMY 00000102
El mismo Job, adicionando Comment statements:

//JDAME01B JOB (0390,00,LIS),'CREA DEUDORES ICC',CLASS=S,MSGCLASS=P 00000001


//**********************************************************************00000002
//* Job model. Inicializa un file con 0 regs *00000003
//**********************************************************************00000004
//*--------------------------------------------------------------------*00000005
//* STEP000 LIMPIA FILE GARANTIAS PREFERIDAS MES ANTERIOR *00000006
//*--------------------------------------------------------------------*00000007
//STEP000 EXEC PGM=IDCAMS 00000090
//SYSPRINT DD SYSOUT=P 00000091
//OUTPUT DD DSN=BCICE.AX5.GTIAS.PREFE.RIDAS,DISP=OLD 00000100
//SYSIN DD * 00000101
repro infile(input) outfile(output) 00000102
//INPUT DD DUMMY 00000103
El mismo Job, cambio de orden en DD Statements:

//JDAME01B JOB (0390,00,LIS),'CREA DEUDORES ICC',CLASS=S,MSGCLASS=P 00000001


//STEP000 EXEC PGM=IDCAMS 00000092
//SYSPRINT DD SYSOUT=P 00000097
//INPUT DD DUMMY 00000102
//OUTPUT DD DSN=BCICE.AX5.GTIAS.PREFE.RIDAS,DISP=OLD 00000098
//SYSIN DD *
repro infile(input) outfile(output)
//
El mismo Job, cambio de orden en DD Statements:

//JDAME01B JOB (0390,00,LIS),'CREA DEUDORES ICC',CLASS=S,MSGCLASS=P 00000001


//STEP000 EXEC PGM=IDCAMS 00000092
//SYSPRINT DD SYSOUT=P 00000097
//INPUT DD DUMMY 00000102
//SYSIN DD *
repro infile(input) outfile(output)
//OUTPUT DD DSN=BCICE.AX5.GTIAS.PREFE.RIDAS,DISP=OLD 00000098
//
El mismo Job, cambio de orden en DD Statements:

//JDAME01B JOB (0390,00,LIS),'CREA DEUDORES ICC',CLASS=S,MSGCLASS=P 00000001


//STEP000 EXEC PGM=IDCAMS 00000092
//OUTPUT DD DSN=BCICE.AX5.GTIAS.PREFE.RIDAS,DISP=OLD 00000098
//INPUT DD DUMMY 00000102
//SYSIN DD *
repro infile(input) outfile(output)
//SYSPRINT DD SYSOUT=P 00000097
//
Aplicación de Estándares Telefónica – ATIS a Jobname y DSN:

JOBNAME: Pos 01: Perú Pos 02: TdP


Pos 03: ATIS Pos 04: Facturación
Pos 05:Implementación Pos 06-8 : Nro de secuencia

//PPAFI005 JOB (0390,00,LIS),'GMD-rechazos BMP A S/390-FASE 1',CLASS=S,


// MSGCLASS=P 00000001
//STEP000 EXEC PGM=IDCAMS 00000092
//SYSPRINT DD SYSOUT=P 00000097
//OUTPUT DD DSN=PPAFT.VF001.DAME.RECHA02,DISP=OLD 00000098
//INPUT DD DUMMY 00000102
//SYSIN DD *
repro infile(input) outfile(output)
//

**Nota: Un Job puede tener un máximo: de 255 job steps.


PARTE II

USO DE LIBRERÍA PARA STATEMENT DE


CONTROL (CTLs)
Para el caso del Proyecto DAME, tenemos el sgte. Juego de librerías:

PPAFT.SJOB.DAME Librería para los Jobs


· PPAFT.SPROC.DAME Librería para los Procedimientos (procs)
· PPAFT.SCTL.DAME Librería para los Statement de Control
· PPAFT.SSOURCE.DAME Librería para los fuentes (source) de los programas
· PPAFT.SLOAD.DAME Para módulos BATCH (programas executables)
· PPAFT.SDDL.DAME Librería de tablas DDL
· PPAFT.SCOPY.DAME Librería de Copy’s
PPAFT.SLOADTP.DAME Librería de módulos TP (programas
executables)
Para nuestro Job modelo:

1.Este lo copiaremos en la Librería de Jobs (PPAFT.SJOB.DAME) con el member


name PPAFI005 (accesar file Normas TdP-ATIS para Jobs, librerías y files).

2.También crearemos en la librería de CTls (PPAFT.SCTL.DAME) un member


conteniendo nuestro comando VSAM. Lo llamaremos REPINPUT
Y contendrá el statement de control:
REPRO INFILE(INPUT) OUTFILE(OUTPUT)

3.Nuestro Job quedará en la siguiente forma:

//PPAFI005 JOB (0390,00,LIS),'GMD-RECH.FASE 1',CLASS=S,MSGCLASS=P


//* GMD-DAME INICIALIZO FILE
//STEP000 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=P
//OUTPUT DD DSN=PPAFT.VF001.DAME.RECHA01,DISP=OLD
//INPUT DD DUMMY
//SYSIN DD DSN=PPAFT.SCTL.DAME(REPINPUT),DISP=SHR
//
PARTE III

SOBRE JOBS – JOBS MODELOS


(SIN PROCs, VARIOS STEPS)
Jobs de 02 steps:

//PPAFI013 JOB (0390,00,LIS),'GMD-RECH.FASE 1',CLASS=S,MSGCLASS=P


//* GMD-DAME INICIALIZO FILE
//STEP000 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=P
//OUTPUT DD DSN=PPAFT.VF001.DAME.RECHA01,DISP=OLD
//INPUT DD DUMMY
//SYSIN DD DSN=PPAFT.SCTL.DAME(REPINPUT),DISP=SHR
//STEP001 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=P
//OUTPUT DD DSN=PPAFT.VF001.RECHA02,DISP=OLD
//INPUT DD DUMMY
//SYSIN DD DSN=PPAFT.SCTL.DAME(REPINPUT),DISP=SHR
//
El mismo Job con Comentarios:

//PPAFI013 JOB (0390,00,LIS),'GMD-RECH.FASE 1',CLASS=S,MSGCLASS=P


// * GMD-DAME INICIALIZO FILE
//* INIT FILE RECHA01
//STEP030 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=P
//OUTPUT DD DSN=PPAFT.VF001.DAME.RECHA01,DISP=OLD
//INPUT DD DUMMY
//SYSIN DD DSN=PPAFT.SCTL.DAME(REPINPUT),DISP=SHR
//* INIT FILE RECHA02
//STEP025 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=P
//OUTPUT DD DSN=PPAFT.VF001.RECHA02,DISP=OLD
//INPUT DD DUMMY
//SYSIN DD DSN=PPAFT.SCTL.DAME(REPINPUT),DISP=SHR
//
Otro Job: de “N” steps (1/3):

//PPAFI150 JOB (0390,00,LIS),'GMD-RECH.FASE 1',CLASS=S,MSGCLASS=P


//*************************************************************
//* GMD-DAME RUTINA FASE 01 ***************
//*************************************************************
//*------------------------------------------------------------*
//* STEP0010 - INIT FILE RECHA01
//*-----------------------------------------------------------*
//STEP010 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=P
//OUTPUT DD DSN=PPAFT.VF001.DAME.RECHA01,DISP=OLD
//INPUT DD DUMMY
//SYSIN DD DSN=PPAFT.SCTL.DAME(REPINPUT),DISP=SHR
//*-----------------------------------------------------------*
//* STEP0020 - INIT FILE DATA OK
//*-----------------------------------------------------------*
//STEP020 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=P
//OUTPUT DD DSN=PPAFT.VF001.DATAOK,DISP=OLD
//INPUT DD DUMMY
//SYSIN DD DSN=PPAFT.SCTL.DAME(REPINPUT),DISP=SHR
Otro Job: de “N” steps (2/3):
//*-----------------------------------------------------------*
//* STEP0030 – TOMA FILE CONNECT Y OMITE REGS LL*LL, AÑO 2,002
//*-----------------------------------------------------------*
//STEP030 EXEC PGM=ICEMAN,COND=(0,NE)
//SYSOUT DD SYSOUT=P
//SORTIN DD DSN=PPAFT.SCONN01.DAME.A2003,DISP=SHR
//SORTOUT DD DSN=&&SCONSORT,UNIT=SYSDA,
// SPACE=(CYL,(2,1),RLSE),DISP=(NEW,PASS),
// LIKE=MODEL.FB400
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(2,2),RLSE)
//SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(2,2),RLSE)
//SYSIN DD DSN=PPAFT.SCTL.DAME(SOMILLLL),DISP=SHR
//*-----------------------------------------------------------*
//* STEP0040 – CONCATENA FILES RECIBIDOS (CONNECT)
//*-----------------------------------------------------------*
/STEP040 EXEC PGM=IEBGENER,COND=(0,NE)
//SYSPRINT DD SYSOUT=P
//SYSUT1 DD DSN=PPAFT.SCON01.DAME.F020403,DISP=SHR
// DD DSN=PPAFT.SCON02.DAME.F020403,DISP=SHR
// DD DSN=PPAFT.SCON03.DAME.F020403,DISP=SHR
// DD DSN=&&SCONSORT,DISP=(OLD,PASS)
// DD DSN=PPAFT.SCON02.DAME.F020403.CONTROL,DISP=SHR
//SYSUT2 DD DSN=&&SCONTOTA,UNIT=SYSDA,
// SPACE=(CYL,(20,20),RLSE),DISP=(NEW,PASS),
// LIKE=MODEL.FB400
//SYSIN DD DUMMY
Otro Job: de “N” steps (3/3):
//*---------------------------------------------------------------*
//* STEP050 PROGAMA GMD-ATIS FACTURACION – SELECT OKS Y REPORTE
//*---------------------------------------------------------------*
//STEP050 EXEC PGM=ADF10001,COND=(0,NE)
//STEPLIB DD DSN=PPAFT.SLOAD.DAME,DISP=SHR
//SYSOUD DD SYSOUT=P
//SYSPRINT DD SYSOUT=P
//SYSOUT DD SYSOUT=P
//IFECHA DD DSN=PPAFT.SCTL.DAME(FECHA),DISP=SHR
//I1CFYP05 DD DSN=&&CONTOTA,DISP=(OLD,PASS)
//T2CFYP05 DD DSN=PPAFT.SCTL.DAME(BCAXYT06),DISP=SHR
//T5CFYP05 DD DSN=PPAFT.SSALDO.CBUY.MARZO(0),DISP=SHR
//T6CFYP05 DD DSN=PPAFT.SCTL.DAME(BCGEYT03),DISP=SHR
// DD DSN=SYS1.CTL(BCCGYT03),DISP=SHR
//O1CFYP05 DD DSN= DSN=PPAFT.VF001.DATAOK,DISP=SHR
//O2CFYP05 DD SYSOUT=(P,,STD1),DCB=(RECFM=FBA,LRECL=132,BLKSIZE=6384)
//O3CFYP05 DD DSN= DSN=PPAFT.VF001.DAME.RECHA01,DISP=SHR
//OERRORES DD SYSOUT=(P,,STD1),DCB=(RECFM=FBA,LRECL=132,BLKSIZE=6384)
//O5CFYP05 DD SYSOUT=(1,,STD1),DCB=(RECFM=FBA,LRECL=132,BLKSIZE=6384)
//O6CFYP05 DD SYSOUT=(I,,STD1),DCB=(LRECL=133,BLKSIZE=133,RECFM=FB),
// FCB=STD6,FREE=CLOSE
//
El mismo proceso, separado en 02 jobs:

1) EL PRIMER JOB, INCIALIZA FILES

//PPAFI15A JOB (0390,00,LIS),'GMD-RECH.FASE 1',CLASS=S,MSGCLASS=P


//*************************************************************
//* GMD-DAME RUTINA FASE 01 ***************
//*************************************************************
//*------------------------------------------------------------*
//* STEP0010 - INIT FILE RECHA01
//*-----------------------------------------------------------*
//STEP010 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=P
//OUTPUT DD DSN=PPAFT.VF001.DAME.RECHA01,DISP=OLD
//INPUT DD DUMMY
//SYSIN DD DSN=PPAFT.SCTL.DAME(REPINPUT),DISP=SHR
//*-----------------------------------------------------------*
//* STEP0020 - INIT FILE DATA OK
//*-----------------------------------------------------------*
//STEP020 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=P
//OUTPUT DD DSN=PPAFT.VF001.DATAOK,DISP=OLD
//INPUT DD DUMMY
//SYSIN DD DSN=PPAFT.SCTL.DAME(REPINPUT),DISP=SHR
//
2) EL SEGUNDO JOB, EFECTUA SELECCION DE DATA, CONSISTENCIA Y REPORTES (1/3)

//PPAFI15B JOB (0390,00,LIS),'GMD-RECH.FASE 1',CLASS=S,MSGCLASS=P


//*************************************************************
//* GMD-DAME RUTINA FASE 01 ***************
//*************************************************************
//*-----------------------------------------------------------*
//* STEP0030 – TOMA FILE CONNECT Y OMITE REGS LL*LL, AÑO 2,002
//*-----------------------------------------------------------*
//STEP030 EXEC PGM=ICEMAN,COND=(0,NE)
//SYSOUT DD SYSOUT=P
//SORTIN DD DSN=PPAFT.SCONN01.DAME.A2003,DISP=SHR
//SORTOUT DD DSN=&&SCONSORT,UNIT=SYSDA,
// SPACE=(CYL,(2,1),RLSE),DISP=(NEW,PASS),
// LIKE=MODEL.FB400
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(2,2),RLSE)
//SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(2,2),RLSE)
//SYSIN DD DSN=PPAFT.SCTL.DAME(SOMILLLL),DISP=SHR
//*-----------------------------------------------------------*
//* STEP0040 – CONCATENA FILES RECIBIDOS (CONNECT)
//*-----------------------------------------------------------*
2) EL SEGUNDO JOB, EFECTUA SELECCION DE DATA, CONSISTENCIA Y REPORTES (2/3)

/STEP040 EXEC PGM=IEBGENER,COND=(0,NE)


//SYSPRINT DD SYSOUT=P
//SYSUT1 DD DSN=PPAFT.SCON01.DAME.F020403,DISP=SHR
// DD DSN=PPAFT.SCON02.DAME.F020403,DISP=SHR
// DD DSN=PPAFT.SCON03.DAME.F020403,DISP=SHR
// DD DSN=&&SCONSORT,DISP=(OLD,PASS)
// DD DSN=PPAFT.SCON02.DAME.F020403.CONTROL,DISP=SHR
//SYSUT2 DD DSN=&&SCONTOTA,UNIT=SYSDA,
// SPACE=(CYL,(20,20),RLSE),DISP=(NEW,PASS),
// LIKE=MODEL.FB400
//SYSIN DD DUMMY
2) EL SEGUNDO JOB, EFECTUA SELECCION DE DATA, CONSISTENCIA Y REPORTES (3/3)
//*---------------------------------------------------------------*
//* STEP050 PROGAMA GMD-ATIS FACTURACION – SELECT OKS Y REPORTE
//*---------------------------------------------------------------*
//STEP050 EXEC PGM=ADF10001,COND=(0,NE)
//STEPLIB DD DSN=PPAFT.SLOAD.DAME,DISP=SHR
//SYSOUD DD SYSOUT=P
//SYSPRINT DD SYSOUT=P
//SYSOUT DD SYSOUT=P
//IFECHA DD DSN=PPAFT.SCTL.DAME(FECHA),DISP=SHR
//I1CFYP05 DD DSN=&&CONTOTA,DISP=(OLD,PASS)
//T2CFYP05 DD DSN=PPAFT.SCTL.DAME(BCAXYT06),DISP=SHR
//T5CFYP05 DD DSN=PPAFT.SSALDO.CBUY.MARZO(0),DISP=SHR
//T6CFYP05 DD DSN=PPAFT.SCTL.DAME(BCGEYT03),DISP=SHR
// DD DSN=SYS1.CTL(BCCGYT03),DISP=SHR
//O1CFYP05 DD DSN=PPAFT.VF001.DATAOK,DISP=SHR
//O2CFYP05 DD SYSOUT=(P,,STD1),DCB=(RECFM=FBA,LRECL=132,BLKSIZE=6384)
//O3CFYP05 DD DSN=PPAFT.VF001.DAME.RECHA01,DISP=SHR
//OERRORES DD SYSOUT=(P,,STD1),DCB=(RECFM=FBA,LRECL=132,BLKSIZE=6384)
//O5CFYP05 DD SYSOUT=(1,,STD1),DCB=(RECFM=FBA,LRECL=132,BLKSIZE=6384)
//O6CFYP05 DD SYSOUT=(I,,STD1),DCB=(LRECL=133,BLKSIZE=133,RECFM=FB),
// FCB=STD6,FREE=CLOSE
//
Equivalencia de Jobs:

PPAFI15A

PPAFI150

PPAFI15B
PARTE IV

SOBRE PROCEDIMIENTOS (PROCS) Y


SU USO EN JOBS
LIBRERIA DE PROCEDIMIENTOS:

PPAFT.SPROC.DAME Librería para los Procedimientos (procs)

Recordemos:
En el siguiente Job stream, se visualizan los dos componentes del Job:
 Información de identificación (JOB CARD)
 Información de execución (JOB STEPS)

//PPAFI005 JOB (0390,00,LIS),'GMD-RECH.FASE 1',CLASS=S,MSGCLASS=P


//STEP000 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=P
//OUTPUT DD DSN=PPAFT.VF001.DAME.RECHA01,DISP=OLD
//INPUT DD DUMMY
//SYSIN DD DSN=PPAFT.SCTL.DAME(REPINPUT),DISP=SHR
//

Definición de Proc: Conjunto de Instrucciones Job Steps:


• Información de execución (JOB STEPS).
• Exclusivamente información de formato //.......
1. Creación de Procs

Si creamos -en la librería de Procs-, el Procedimiento llamado PDINITF conteniendo


la siguiente información:

//STEP000 EXEC PGM=IDCAMS


//SYSPRINT DD SYSOUT=P
//OUTPUT DD DSN=PPAFT.VF001.DAME.RECHA01,DISP=OLD
//INPUT DD DUMMY
//SYSIN DD DSN=PPAFT.SCTL.DAME(REPINPUT),DISP=SHR

nuestro anterior Job se podría escribir en la forma:

//PPAFI005 JOB (0390,00,LIS),'GMD-RECH.FASE1',CLASS=S,MSGCLASS=P


// EXEC PDINITF
//
2. Reemplazo de Jobs sin Procs por Jobs usando Procs – Caso I
Tomando como base nuestro anterior Job PPAFI150, y tomando todos sus Job steps
statements, para crear un procedimiento:
2.1 CREACIÓN DE PROCEDIMIENTO (1/4)
Creamos un Procedimiento –colocándole como nombre PDEXEC01- en la
Librería de Procs, conteniendo lo siguiente:
//*------------------------------------------------------------*
//* STEP0010 - INIT FILE RECHA01
//*-----------------------------------------------------------*
//STEP010 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=P
//OUTPUT DD DSN=PPAFT.VF001.DAME.RECHA01,DISP=OLD
//INPUT DD DUMMY
//SYSIN DD DSN=PPAFT.SCTL.DAME(REPINPUT),DISP=SHR
//*-----------------------------------------------------------*
//* STEP0020 - INIT FILE DATA OK
//*-----------------------------------------------------------*
//STEP020 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=P
//OUTPUT DD DSN=PPAFT.VF001.DATAOK,DISP=OLD
//INPUT DD DUMMY
//SYSIN DD DSN=PPAFT.SCTL.DAME(REPINPUT),DISP=SHR
2.1 CREACIÓN DE PROCEDIMIENTO (2/4)

//*-----------------------------------------------------------*
//* STEP0030 – TOMA FILE CONNECT Y OMITE REGS LL*LL, AÑO 2,002
//*-----------------------------------------------------------*
//STEP030 EXEC PGM=ICEMAN,COND=(0,NE)
//SYSOUT DD SYSOUT=P
//SORTIN DD DSN=PPAFT.SCONN01.DAME.A2003,DISP=SHR
//SORTOUT DD DSN=&&SCONSORT,UNIT=SYSDA,
// SPACE=(CYL,(2,1),RLSE),DISP=(NEW,PASS),
// LIKE=MODEL.FB400
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(2,2),RLSE)
//SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(2,2),RLSE)
//SYSIN DD DSN=PPAFT.SCTL.DAME(SOMILLLL),DISP=SHR
//*-----------------------------------------------------------*
//* STEP0040 – CONCATENA FILES RECIBIDOS (CONNECT)
//*-----------------------------------------------------------*
2.1 CREACIÓN DE PROCEDIMIENTO (3/4)

/STEP040 EXEC PGM=IEBGENER,COND=(0,NE)


//SYSPRINT DD SYSOUT=P
//SYSUT1 DD DSN=PPAFT.SCON01.DAME.F020403,DISP=SHR
// DD DSN=PPAFT.SCON02.DAME.F020403,DISP=SHR
// DD DSN=PPAFT.SCON03.DAME.F020403,DISP=SHR
// DD DSN=&&SCONSORT,DISP=(OLD,PASS)
// DD DSN=PPAFT.SCON02.DAME.F020403.CONTROL,DISP=SHR
//SYSUT2 DD DSN=&&SCONTOTA,UNIT=SYSDA,
// SPACE=(CYL,(20,20),RLSE),DISP=(NEW,PASS),
// LIKE=MODEL.FB400
//SYSIN DD DUMMY
2.1 CREACIÓN DE PROCEDIMIENTO (4/4)

//*---------------------------------------------------------------*
//* STEP050 PROGAMA GMD-ATIS FACTURACION – SELECT OKS Y REPORTE
//*---------------------------------------------------------------*
//STEP050 EXEC PGM=ADF10001,COND=(0,NE)
//STEPLIB DD DSN=PPAFT.SLOAD.DAME,DISP=SHR
//SYSOUD DD SYSOUT=P
//SYSPRINT DD SYSOUT=P
//SYSOUT DD SYSOUT=P
//IFECHA DD DSN=PPAFT.SCTL.DAME(FECHA),DISP=SHR
//I1CFYP05 DD DSN=&&CONTOTA,DISP=(OLD,PASS)
//T2CFYP05 DD DSN=PPAFT.SCTL.DAME(BCAXYT06),DISP=SHR
//T5CFYP05 DD DSN=PPAFT.SSALDO.CBUY.MARZO(0),DISP=SHR
//T6CFYP05 DD DSN=PPAFT.SCTL.DAME(BCGEYT03),DISP=SHR
// DD DSN=SYS1.CTL(BCCGYT03),DISP=SHR
//O1CFYP05 DD DSN=PPAFT.VF001.DATAOK,DISP=SHR
//O2CFYP05 DD SYSOUT=(P,,STD1),DCB=(RECFM=FBA,LRECL=132,BLKSIZE=6384)
//O3CFYP05 DD DSN= DSN=PPAFT.VF001.DAME.RECHA01,DISP=SHR
//OERRORES DD SYSOUT=(P,,STD1),DCB=(RECFM=FBA,LRECL=132,BLKSIZE=6384)
//O5CFYP05 DD SYSOUT=(1,,STD1),DCB=(RECFM=FBA,LRECL=132,BLKSIZE=6384)
//O6CFYP05 DD SYSOUT=(I,,STD1),DCB=(LRECL=133,BLKSIZE=133,RECFM=FB),
// FCB=STD6,FREE=CLOSE
2.2 CREACIÓN DEL JOB EQUIVALENTE

Nuestro anterior Job Job PPAFI150 , usando el Proc creado, tendría la forma:

//PPAFI150 JOB (0390,00,LIS),’GMD-RECH.FASE 1’,CLASS=S,MSGCLASS=P


//*************************************************************
//* GMD-DAME RUTINA FASE 01 ***************
//*************************************************************
// EXEC PDEXEC01
//
3. Reemplazo de Jobs sin Procs por Jobs usando Procs – Caso II

Podemos tomar el caso de los Jobs PPAFI15A y PPAFI15B

3.1 Crear Los Procs:

3.1.1 Creamos el Procedimiento PDINIT02 conteniendo los Steps:


•STEP0010
•STEP0020

3.1.2 Creamos el Proc PDEXEC24 conteniendo los Steps:


•STEP0030
•STEP0040
•STEP0050
3.2 Crear los nuevos Jobs:

3.2.1 El Job equivalente al PPAIF15A será en la forma:

//PPAFI15A JOB (0390,00,LIS),'GMD-RECH.FASE 1',CLASS=S,MSGCLASS=P


// EXEC PDINIT02
//

3.2.2 El Job equivalente al PPAIF15B será en la forma:

//PPAFI15B JOB (0390,00,LIS),'GMD-RECH.FASE 1',CLASS=S,MSGCLASS=P


// EXEC PDEXEC24
//

NOTA: ESTOS JOBS -en general cualquier job listo para su ejecución- DEBEN
GRABARSE en la respectiva librería:

PPAFT.SJOB.DAME Librería para los Jobs


3.3 Crear un JOB con más de un PROC:

Un JOB que usa dos PROCs y es equivalente a los dos JOBs anteriores puede ser el
siguiente:
//PPAFI15M JOB (0390,00,LIS),'GMD-RECH.FASE 1',CLASS=S,MSGCLASS=P
// EXEC PDINIT02
// EXEC PDEXEC24
//

PPAFI15A

PPAFI15M

PPAFI15B
PARTE V

SOBRE LAS LIBRERÍAS ASIGNADAS


AL PROYECTO
Del uso de las Librerías asignadas al Proyecto :
Las resaltadas han sido usadas en la explicación de estas secciones:

• PPAFT.SJOB.DAME Librería para los Jobs


• PPAFT.SPROC.DAME Librería para los Procedimientos (procs)
• PPAFT.SCTL.DAME Librería para los Statement de Control
• PPAFT.SSOURCE.DAME Librería para los fuentes (source) de los programas
• PPAFT.SLOAD.DAME Librería de módulos BATCH (programas executables)
• PPAFT.SDDL.DAME Librería de tablas DDL

• PPAFT.SCOPY.DAME Librería de Copy’s


Las librerías SJOB, SPROC, SCTL son usadas para guardar los Jobs,
Procedimientos(Procs) y Statement CTL.

• La librería SDDL se usará al momento de definir y guardar statement para


tablas SQL.
• La librería SLOAD es usada para guardar el módulo ejecutable (programas
cobol compilado por nosotros) para proceso batch.
• La librería SSOURCE guardará nuestro programa fuente, tanto para Batch como
para TP. Esta será una actividad previa a la “compilación” de nuestro
programa.
• Para el caso de los programas CICS, se debe usar otra librería DE MÓDULOS, la
cual sería de la forma
PPAFT.SLOADTP.DAME
•La librería SCOPY se usará para guardar copia de estructuras cobol. Tanto del
programa como de mapas CICS.

También podría gustarte