Está en la página 1de 7

=M.

5
ST
PREFIX USER03* PARA VER LO PSROCESOS SI NO LO COLOCAMOS NO SALEN
S PARA VER EL JOB PERO NOS COLOCAMOS EN EL JOB NO EL EL USUARIO

3.2 PARA CHECAR SI EXISTE EL ARCHIVO

NOTA DEL PROFE


4 5

15

1 8

0001COBOL2208201128102011JAVIER
J00200640
0002COBOL2208201128102011JESUS
J00200380
0003COBOL2208201128102011ANA LAURA A00212245
0004COBOL2208201128102011ROSARIO
R04280375
0005COBOL2208201128102011CHRISTIAN C00612022
0006COBOL2208201128102011YONI
Y00200114
0007COBOL2208201128102011YURIDIA
Y20910045
0008COBOL2208201128102011RAUL
R20040064
0009COBOL2208201128102011EDER
E00200543
0010COBOL2208201128102011JONNATHAN J20023423
0011COBOL2208201128102011ARI
A09913066

________
le damos la opcuion 6 del menu
le damos en el iocno de transfer
y bucamos el archivo plano
EN HOST NAME LE PONEMOS_- 'USER03.GEISI.ENTRADA'
EN EL HOST OPSYS

ESTA ES LA FORMA EN LA K KEDA Y LE DAMOS EN LA FLECHA DE ABAJO Y HACIA LA IZQUIERDA


PARA MADARLO.
LE=3.4
Y LE DAMOS EN ENTRADA

Ejercicio
HACER UN JCL JCXXX21
BORRAR U NARCHIVO
CLASISIFICAR POR NOMBRE
BORRAR EL ARCHIVO

26

CLASIFICAR POR NUMERO DE ALUMNO


BORRAR ALUMNO

41

CLASISIFICAR POR LA INICIAL


BORRAR EL ARCHIVO

42

Y CUANDO LE DAMOS EL
USERXX.GEISI.ENTRADA
SALIDA1
SALIDA2
SALIDA3
=M.5 PARA VER EL ESTADO DE TU JOB
=3.4 PARA VER CUALES ARCHIVOS TIENES

CUANDO NO NOS DEJA GRABAR


NOS VAMOS AL MENU PRINCIPAL Y LE DMOS LA OPCION 3,
DESPUES EL 1 DE LIBRARY Y DEPSUES C DE COMPRESS Y YA NOS
DEJA GUARDAR Y TODO

SEGUNDO PROGRAMA GENERADOR DE UN REPORTE


000100**********************************************************
000200 IDENTIFICATION DIVISION.
000300**********************************************************
000400 PROGRAM-ID GESFOR02.
000500 AUTHOR GRUPO GESFOR MEXICO.
000600 ENVIRONMENT DIVISION.
000700 CONFIGURATION SECTION.
000800 SOURCE-COMPUTER. IBM-9000.
000900 OBJECT-COMPUTER. IBM-9000.
001000 INPUT-OUTPUT SECTION.
001100 FILE-CONTROL.
001200 SELECT ARCH-ENT ASSIGN ENTRADA
001300 ORGANIZATION IS SEQUENTIAL
001400 ACCESS MODE IS
001500 FILE STATUS ST-ENTRADA.
001600 SELECT ARCH-SAL ASSIGN SALIDA.
001700**********************************************************
001800 DATA DIVISION.
001900**********************************************************
002000 FILE SECTION.
002100 FD ARCH-ENT
002200 LABEL RECORD STANDARD
002300 BLOCK CONTAINS 0 RECORDS
002400 RECORD CONTAINS CHARACTERS
002500 DATA RECORD IS REG-ENT.
002600 01 REG-ENT.
002700 05 CLAVE PIC 9(10).
002800 05 NOMBRE PIC X(31).
002900 05 PROVEEDOR PIC X(41).
003000 05 TELPROVE PIC 9(16).
003100 05 DICPROVE PIC X(51).
003200 05 PRECIO PIC ZZZZZZZ9.99.
003300 05 ALMACEN PIC 9(01).
003400 05 FILLER PIC X(09)
003600 FD ARCH-SAL
003700 LABEL RECORD STANDARD
003800 DATA RECORD IS REG-SALIDA.
003900 01 REG-SALIDA PIC X( ).
004000************************************************
004100 WORKING-STORAGE SECTION.

004200************************************************
004300 01 FECHA PIC 9(06) VALUE ZEROS.
004400 01 FILLER REDEFINES FECHA.
004500 05 AA PIC 9(02).
004600 05 MM PIC 9(02).
004700 05 DD PIC 9(02).
004800 01 WS-FIN-ARCHIVO PIC 9(01) VALUE ZEROS.
004900 88 FIN-ARCHIVO VALUE 1.
005000 01 WS-CUENTA-LINEAS PIC 9(02) VALUE ZEROS.
005100 01 WS-CUENTA-HOJAS PIC 9(02) VALUE ZEROS.
005110 01 WS-TOT-PROV PIC 9(02) VALUE ZEROS.
005120 01 WS-PROVEEDOR PIC X(41) VALUE ZEROS.
005200 01 ST-ENTRADA PIC XX.
005300 01 TABLA-MESES.
005400 05 FILLER PIC X(36) VALUE
005500 'ENEFEBMARABRMAYJUNJULAGOSEPOCTNOVDIC'.
005600 01 FILLER REDEFINES TABLA-MESES.
005700 05 T-MES OCCURS 12 TIMES PIC X(03).
005800 01 LINEA-01.
005900 05 FILLER PIC X(17) VALUE
006000 'PROGRAMA REPORTE2'.
006100 05 FILLER PIC X(74) VALUE SPACES.
006200 05 FILLER PIC X(07) VALUE
006300 'FECHA'.
006400 05 L1-DD PIC 9(02).
006500 05 FILLER PIC X(01) VALUE '-'.
006600 05 L1-MES PIC X(03).
006700 05 FILLER PIC X(01) VALUE '-'.
006800 05 L1-SS PIC X(02) VALUE '20'.
006900 05 L1-ANIO PIC 9(02).
007000 01 LINEA-02.
007100 05 FILLER PIC X(46) VALUE SPACES.
007200 05 FILLER PIC X(23) VALUE
007300 'CURSO DE MAINFRAME'.
007301 05 FILLER PIC X(30) VALUE SPACES.
007310 05 FILLER PIC X(04) VALUE 007320 'HOJA'.
007400 05 FILLER PIC X(02) VALUE SPACES.
007500 05 L1-HOJA PIC X(02).
007600 01 LINEA-03.
007700 05 FILLER PIC X(46) VALUE SPACES.
007800 05 FILLER PIC X(20) VALUE
007900 'REPORTE DE PRODUCTOS'.
008000 01 LINEA-05.
008100 05 FILLER PIC X(112) VALUE ALL '*'.
008200 01 LINEA-06.
008300 05 FILLER PIC X(05) VALUE SPACES.
008400 05 FILLER PIC X(6) VALUE 'CLAVE'.
008500 05 FILLER PIC X(10) VALUE SPACES.

008600 05 FILLER PIC X(7) VALUE 'NOMBRE'.


008700 05 FILLER PIC X(30) VALUE SPACES.
008800 05 FILLER PIC X(9) VALUE 'PROVEEDOR'.
008900 05 FILLER PIC X(29) VALUE SPACES.
008910 05 FILLER PIC X(6) VALUE 'PRECIO'.
008920 05 FILLER PIC X(02) VALUE SPACES.
009000 05 FILLER PIC X(7) VALUE 'ALMACEN'.
009100 01 DETALLES-01.
009200 05 FILLER PIC X(01) VALUE SPACES.
009300 05 T1-CLAVE PIC X(10).
009400 05 FILLER PIC X(05) VALUE SPACES.
009500 05 T1-NOMBRE PIC X(31).
009600 05 FILLER PIC X(05) VALUE SPACES.
009700 05 T1-PROVEEDOR PIC X(41).
009710* 05 FILLER PIC X(01) VALUE SPACES.
009720 05 T1-PRECIO PIC ZZZZZZZ9.99.
009730 05 T1-ENTEROS REDEFINES T1-PRECIO PIC ZZZZZZZZZZ9.
009800 05 FILLER PIC X(05) VALUE SPACES.
009900 05 T1-ALMACEN PIC 9(01).
010000****************************************************
010100 PROCEDURE DIVISION.
010200****************************************************
010300 00000-CONTROL.
010400 PERFORM 1000-INICIO.
010500 PERFORM 2000-PROCESO UNTIL FIN.
010600 PERFORM 3000-FIN.
010700 STOP RUN.
010800 1000-INICIO.
010900 OPEN INPUT ARCH-ENT
011000 OUTPUT ARCH-SAL.
011100 ACCEPT FECHA FROM DATE.
011200 MOVE T-MES(MM) TO L1-MES.
011300 MOVE AA TO L1-ANIO.
011400 MOVE DD TO L1-DD.
011500 PERFORM 1100-READ-ARCHIVO.
011510 MOVE PROVEEDOR TO WS-PROVEEDOR.
011600 MOVE 55 TO WS-CUENTA-LINEAS.
011700 1100-READ-ARCHIVO.
011800 READ ARCH-ENT
011900 AT END
012000 MOVE 1 TO WS-FIN-ARCHIVO.
012100 2000-PROCESO.
012110 IF WS-PROVEEDOR NOT = PROVEEDOR
012120 PERFORM 2200-CORTE-PROVEEDOR
012121 MOVE PROVEEDOR TO WS-PROVEEDOR
012122 MOVE ZEROS TO WS-TOT-PROV
012130 END-IF. 012140*
012200 MOVE CLAVE TO T1-CLAVE.

012300 MOVE NOMBRE TO T1-NOMBRE.


012400 MOVE PROVEEDOR TO T1-PROVEEDOR.
012410 MOVE PRECIO TO T1-PRECIO.
012500 MOVE ALMACEN TO T1-ALMACEN.
012510 ADD 1 TO WS-TOT-PROV.
012600 IF WS-CUENTA-LINEAS > 47
012700 PERFORM 2100-ENCABEZADOS
012800 END-IF.
012900 WRITE REG-SALIDA FROM DETALLES-01 AFTER 1 LINES.
013000 PERFORM 1100-READ-ARCHIVO.
013100 ADD 1 TO WS-CUENTA-LINEAS.
013200 2100-ENCABEZADOS.
013300 ADD 1 TO WS-CUENTA-HOJAS.
013400 MOVE WS-CUENTA-HOJAS TO L1-HOJA.
013500 WRITE REG-SALIDA FROM LINEA-01
013600 AFTER PAGE.
013700 WRITE REG-SALIDA FROM LINEA-02
013800 AFTER 1 LINES.
013900 WRITE REG-SALIDA FROM LINEA-03
014000 AFTER 1 LINES.
014100 WRITE REG-SALIDA FROM LINEA-05
014200 AFTER 2 LINES.
014300 WRITE REG-SALIDA FROM LINEA-06
014400 AFTER 1 LINES.
014500 WRITE REG-SALIDA FROM LINEA-05
014600 AFTER 1 LINES.
014601 MOVE 5 TO WS-CUENTA-LINEAS.
014610 2200-CORTE-PROVEEDOR.
014620 MOVE SPACES TO DETALLES-01
014630 MOVE '*********' TO T1-CLAVE
014640 MOVE WS-PROVEEDOR TO T1-PROVEEDOR
014650 MOVE WS-TOT-PROV TO T1-ENTEROS
014660 WRITE REG-SALIDA FROM DETALLES-01 AFTER 2 LINES
014670 MOVE SPACES TO DETALLES-01
014680 WRITE REG-SALIDA FROM DETALLES-01 AFTER 1 LINES
014690 ADD 3 TO WS-CUENTA-LINEAS.
014700 MOVE 7 TO WS-CUENTA-LINEAS.
014800 3000-FIN
014900 CLOSE ARCH-ENT
015000 ARCH-SAL.

CREACION DE UN JCL
//UGFOR00F JOB CLASS=S,
// MSGCLASS=X,
// MSGLEVEL=(1,1),
// NOTIFY=UGFOR05,
// REGION=0M
//JOBLIB DD DSN=CURSOS.LOADLIB,
// DISP=SHR
//PASO01 EXEC PGM=REPORTE2
//SYSPRINT DD SYSOUT=*
//ENTRADA DD DSN=UGFOR05.IPNMEX.FIX.ARTI,
// DISP=SHR
//SALIDA DD DSN=UGFOR05.IPNMEX.FIX.ARTIX,
// DISP=(NEW,CATLG,DELETE),
// UNIT=3390,
// SPACE=(TRK,(1,1)),
// DCB=(DSORG=PS,LRECL=113,BLKSIZE=0,RECFM=FB)
//SYSOUT DD SYSOUT=*