I'm trying to write a very small program that just copying a file into an another... The copy works very well but...(yes there's a "but") i always get an s0c1 error:
Here is my source:
P1 START
BALR 12,0
USING *,12
*--------------------------------------------
OPEN (INFILE,(INPUT))
OPEN (OUTFILE,(OUTPUT))
LOOP EQU *
GET INFILE,INAREA
MVC OUTREC,INAREA
PUT OUTFILE,OUTAREA
B LOOP
ENDDATA EQU *
CLOSE INFILE
CLOSE OUTFILE
L 15,A
BR 14
*--------------------------------------------
INAREA DS CL80
OUTAREA DS 0CL80
OUTREC DS CL80
A DC F'0'
OUTFIN DS CL80'==========FIN======='
INFILE DCB DDNAME=INER,RECFM=FB,LRECL=80,DSORG=PS,MACRF=GM, X
EODAD=ENDDATA
OUTFILE DCB DDNAME=OUTER,RECFM=FBA,LRECL=80, X
DSORG=PS,MACRF=PM
END P1
here is my job compile (for the link i've tried amode=31 too but i got the same issue):
//RDCPLKB JOB (PL,A4RDMODT),'UNLO-TABLE',MSGCLASS=H,
// NOTIFY=&SYSUID,REGION=0M,CLASS=R,
// RESTART=*
//JOBLIB DD DSN=PA4.CPG4RC2.LOAD,DISP=SHR
/*ROUTE PRINT PR6GESPE
//*=====================================================================
//STEP2 EXEC PGM=ASMA90,PARM='DECK,XREF(SHORT)'
//*--------------------------------------------------------------------
//*
//*--------------------------------------------------------------------
//SYSUT1 DD DSN=,UNIT=SYSDA,SPACE=(CYL,13)
//SYSUT2 DD DSN=,UNIT=SYSDA,SPACE=(CYL,13)
//SYSUT3 DD DSN=,UNIT=SYSDA,SPACE=(CYL,13)
//SYSPRINT DD SYSOUT=*,DCB=BLKSIZE=1331
//SYSPUNCH DD DSN=PAS.CGXPSER.MBDECK(MBTS01),DISP=OLD
//SYSIN DD DISP=SHR,DSN=PAS.CGXPSER.MBCOBL(MBTS03)
//SYSLIN DD DUMMY
//SYSLIB DD DISP=SHR,DSN=SYS1.MACLIB
// DD DISP=SHR,DSN=SYS1.MODGEN
//*---------------------------------------------------------------------
//* LINK
//*---------------------------------------------------------------------
//LINK1 EXEC PGM=IEWL,REGION=512K,
// PARM='XREF,CALL,LIST,LET,SIZE=(512K,64K),AMODE=24'
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,05)
//SYSLMOD DD DSN=PA4.CRDMODT.TLOADBA.V001R001,DISP=SHR
//SYSLIB DD DSN=SYS1.CEE.SCEELKED,DISP=SHR
// DD DSN=PA4.CRDMODT.TLOADBAT,DISP=SHR
// DD DSN=PA4.CRDMODT.TLOADBA.V001R001,DISP=SHR
//DECKLIB DD DSN=PAS.CGXPSER.MBDECK,DISP=SHR
//SYSLIN DD *
INCLUDE DECKLIB(MBTS01)
NAME MBTS01(R)
/*
// NOTIFY=&SYSUID,REGION=0M,CLASS=R,
// RESTART=*
//JOBLIB DD DSN=PA4.CPG4RC2.LOAD,DISP=SHR
/*ROUTE PRINT PR6GESPE
//*=====================================================================
//STEP2 EXEC PGM=ASMA90,PARM='DECK,XREF(SHORT)'
//*--------------------------------------------------------------------
//*
//*--------------------------------------------------------------------
//SYSUT1 DD DSN=,UNIT=SYSDA,SPACE=(CYL,13)
//SYSUT2 DD DSN=,UNIT=SYSDA,SPACE=(CYL,13)
//SYSUT3 DD DSN=,UNIT=SYSDA,SPACE=(CYL,13)
//SYSPRINT DD SYSOUT=*,DCB=BLKSIZE=1331
//SYSPUNCH DD DSN=PAS.CGXPSER.MBDECK(MBTS01),DISP=OLD
//SYSIN DD DISP=SHR,DSN=PAS.CGXPSER.MBCOBL(MBTS03)
//SYSLIN DD DUMMY
//SYSLIB DD DISP=SHR,DSN=SYS1.MACLIB
// DD DISP=SHR,DSN=SYS1.MODGEN
//*---------------------------------------------------------------------
//* LINK
//*---------------------------------------------------------------------
//LINK1 EXEC PGM=IEWL,REGION=512K,
// PARM='XREF,CALL,LIST,LET,SIZE=(512K,64K),AMODE=24'
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,05)
//SYSLMOD DD DSN=PA4.CRDMODT.TLOADBA.V001R001,DISP=SHR
//SYSLIB DD DSN=SYS1.CEE.SCEELKED,DISP=SHR
// DD DSN=PA4.CRDMODT.TLOADBAT,DISP=SHR
// DD DSN=PA4.CRDMODT.TLOADBA.V001R001,DISP=SHR
//DECKLIB DD DSN=PAS.CGXPSER.MBDECK,DISP=SHR
//SYSLIN DD *
INCLUDE DECKLIB(MBTS01)
NAME MBTS01(R)
/*
here is my job execution:
//EXAS01 JOB (PL,ASMGALOT),'UNLO-TABLE',MSGCLASS=H,
// NOTIFY=&SYSUID,REGION=0M,CLASS=R,
// RESTART=*
/*ROUTE PRINT PR6GESPE
//JOBLIB DD DISP=SHR,DSN=PA4.CRDMODT.TLOADBAT
// DD DISP=SHR,DSN=PA4.CRDMODT.TLOADBA.V001R001
//*---------------------------------------------------------------------
//SCRATC01 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD *
DELETE SA4.NRDMODT.TEST.MBE2
SET MAXCC=0
/*
//BULFACT EXEC PGM=MBTS01
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//INER DD DSN=SA4.NRDMODT.TEST.MBE,DISP=SHR
//OUTER DD DSN=SA4.NRDMODT.TEST.MBE2,
// DISP=(,CATLG),
// SPACE=(TRK,(1,1),RLSE),
// RECFM=FBA,LRECL=80
//*
// NOTIFY=&SYSUID,REGION=0M,CLASS=R,
// RESTART=*
/*ROUTE PRINT PR6GESPE
//JOBLIB DD DISP=SHR,DSN=PA4.CRDMODT.TLOADBAT
// DD DISP=SHR,DSN=PA4.CRDMODT.TLOADBA.V001R001
//*---------------------------------------------------------------------
//SCRATC01 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD *
DELETE SA4.NRDMODT.TEST.MBE2
SET MAXCC=0
/*
//BULFACT EXEC PGM=MBTS01
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//INER DD DSN=SA4.NRDMODT.TEST.MBE,DISP=SHR
//OUTER DD DSN=SA4.NRDMODT.TEST.MBE2,
// DISP=(,CATLG),
// SPACE=(TRK,(1,1),RLSE),
// RECFM=FBA,LRECL=80
//*
As you can see every thing seems simple but i don't understand why i still have an s0c1....
i also tried to just open and put one record in the outfile output (without reading the input file with loop) an i got an s322 abend like it's looping or waiting something.
If someone can help me to understand and resolve this mystery it'll be great.
Thanks in advance.
Nikki Lauda.