0

JCLファイルでSUBを実行してCOBOLアプリケーションをプリコンパイルしようとすると、次のエラーが発生します。

19.30.05 JOB08639 $HASP165 ZUSER13A ENDED AT SVSCJES2 - JCL ERROR CN(INTERNAL)

オンラインで調べてみましたが、うまくいきませんでした。これが何を指しているのか誰か知っていますか?

これが私のJCLファイルです

000001 //ZUSER13A JOB NOTIFY=&SYSUID
000002 //*--------------------------------------------------------------------*
000003 //*    PRECOMP - PRECOMPILE THE COBOL PROGRAM                          *
000004 //*  YOU SHOULD CHANGE ZUSER26 TO YOUR OWN TSO USERID                  *
000005 //*  YOU SHOULD CUSTOMIZE THE FOLLOWING LIBRARIES WITH HELP OF TEACHER *
000006 //*--------------------------------------------------------------------*
000007 //*--------------------------------------------------------------------*
000008 //*    THE FOLLOWING 8 SYMBOLIC PARAMETERS SHOULD BE SET BY YOURSELF   *
000009 //*  ? (1) DB2LOAD - THE DB2 LOAD LIBRARY                              *
000010 //*  ? (2) WSPC    - THE SIZE FOR TEMPARARY DATA SET                   *
000011 //*  ? (3) DASD    - THE UNIT VALUE FOR DASD                           *
000012 //*  ? (4) SRC     - THE COBOL SOURCE PROGRAM LIBRARY                  *
000013 //*  ? (5) CPY     - THE COBOL COPYBOOK LIBRARY                        *

000014 //*  ? (6) DBRM    - THE DBRM LIBRARY FOR DB2 BIND PROCESS             *
000015 //*  ? (7) MID     - THE MODIFIED COBOL SOURCE CODE LIBRARY            *
000016 //*  ? (8) TRAN    - THE TRANSACTION/FUNCTION MODULE NAME              *
000017 //*--------------------------------------------------------------------*
000018 // SET    DB2LOAD=ZUSER13.DB2.LOAD
000019 // SET    WSPC=500
000020 // SET    DASD=SYSDA
000021 // SET    SRC=ZUSER13.DB2.SRC
000022 // SET    CPY=ZUSER13.DB2.CPY
000023 // SET    DBRM=ZUSER13.DB2.DBRM
000024 // SET    MID=ZUSER13.DB2.MID
000025 // SET    TRAN=OPACCT
000026 //*------------------------------------------------------------------*
000027 //*            PRECOMPILE THE COBOL PROGRAM                          *
000028 //*            RETURN CODE SHOULD BE 4 OR LESS                       *
000029 //*------------------------------------------------------------------*
000030 //PC      EXEC PGM=DSNHPC,REGION=4096K,
000031 //        PARM=('HOST(IBMCOB)',APOST,APOSTSQL,SOURCE,XREF,'STDSQL(NO)')

000032 //STEPLIB  DD  DISP=SHR,DSN=&DB2LOAD
000033 //SYSCIN   DD  DISP=SHR,DSN=&MID(&TRAN)
000034 //SYSPRINT DD  SYSOUT=*
000035 //SYSTERM  DD  SYSOUT=*
000036 //SYSUDUMP DD  SYSOUT=*
000037 //SYSUT1   DD  SPACE=(800,(&WSPC,&WSPC),,,ROUND),UNIT=&DASD
000038 //SYSUT2   DD  SPACE=(800,(&WSPC,&WSPC),,,ROUND),UNIT=&DASD
000039 //SYSIN    DD  DISP=SHR,DSN=&SRC(&TRAN)
000040 //SYSLIB   DD  DISP=SHR,DSN=&CPY
000041 //DBRMLIB  DD  DISP=SHR,DSN=&DBRM(&TRAN)
000042 //
4

1 に答える 1

2

あなたのJOBカードが有効かどうか疑問に思っています。あなたが持っている:

//ZUSER13A JOB NOTIFY=&SYSUID    

JCL ジョブ カードの形式は次のとおりです。

//jobname JOB (accounting-info),name,keyword-parameters   

ジョブ名が必要です。ZUSER13Aがあります

キーワードJOBは、あるべき場所にあります。ここまでは順調ですね...

アカウンティング情報がありません。インストールによっては、これが必要な場合と必要でない場合があります (多くの場合必要です)。accounting-infoの形式はインストール時に定義されるため、誰かに尋ねる必要があります。括弧は、 accounting-infoに埋め込まれたコンマやその他の特殊文字が含まれていない場合にのみオプションであることに注意してください。

次に、ジョブ カードに何か指定されている場合は、コンマが必要です。これはオプションではなく、問題の原因である可能性があります。

コンマの後には、引用符で囲まれたソート名が続く必要があります。たとえば、「プリコンプ」。これにもインストール固有のルールがある場合があります。

次に、ジョブ カードにキーワード パラメータを含める場合は、別のカンマが必要です。

最後に、 NOTIFY=などのキーワード パラメータを指定できます。ジョブが開始済みタスクの下でサブミットされない限り、 &USERIDなどの置換パラメーターがここで有効かどうかはわかりません。SUBを使用して(TSO の下で?) ジョブをサブミットしているため、&USERIDも機能しない場合があります。ユーザー ID をハードコーディングしてみてください。

多くの場合、ジョブ カードに何を含める必要があるかを判断する最も簡単な方法は、TSO でサブミットされたときに実際に機能した JCL の一部を調べてから、ジョブ カードをコピーすることです。

于 2011-03-07T15:54:53.250 に答える