カラム73以降のデータ検証について
search cancel

カラム73以降のデータ検証について

book

Article ID: 264094

calendar_today

Updated On:

Products

JCLCheck Workload Automation UNICENTER JCLCHECK COMMON COMPONENT

Issue/Introduction

カラム73以降のJCLデータに、ヌルやブランク、数値等がある場合はエラーといった検証は可能ですか?

Environment

Release : 12.0

Component : JCLCheck Workload Automation (JCLCheck Workload Automation)

Resolution

はい。検証可能です。

カラム73以降の文字列は、ユーザーEXITやREXXインターフェースにて、80バイトJCLデータを取得参照することで検証できます。

[ DDEXIT(CAZ1XDD)の場合 ]

JCLCheckのDDEXITは、JCLCheckによるそれぞれのDD検証完了後に制御がわたります。

DDEXITでは、80バイトJCLステートメントは以下のフィールドを参照することで取得できます。

・DDEXITに制御がわたった際の対象ステートメントの先頭アドレスが、JCL検証時のポインター情報を保持する$JCLSPB制御ブロック内「SPBRJB」に設定されます。

      SPBRJB   DS    A                   ADDR OF 1ST RAW JCL BLOCK 

・80バイトJCLデータは$JCLRJB制御ブロック内「RJBDATA」に展開されます。

      RJBDATA  DS    CL80                STORAGE FOR A SINGLE CARD   


・CAZ1XDDでDDステートメントの80バイトJCLデータ「RJBDATA」にアクセスするには、$JCLXJB制御ブロック内「SPBRJB」のアドレスを、$JCLRJB制御ブロックの「RJBDSECT DSECT」へ関連付けることで可能となります。

 R4で関連付けする例

     USING RJBDSECT,R4           
   L     R4,SPBRJB            

・$JCLXJB制御ブロック内「SPBRJB」はDDステートメントで最初の行です。
    同一DD内の次ステートメントのアドレスは、$JCLRJB制御ブロックの「RJBRJB」が保持しており、同一DD内の最終ステートメント以降のアドレスは「0」が設定されます。

     RJBRJB   DS    A                   PTR TO NEXT RJB       

    「RJBRJB」のアドレスが「0」ではないかぎり、同一DDステートメントのJCLステートメントは継続しています。

 

[ REXXインターフェースの場合 ]

JCLCheckでは、お客様環境で独自の検証を可能とするために、アセンブラでコードする各種EXITの他、REXXによるインターフェースについても提供しております。

REXXインターフェースについては以下マニュアル文書をご参照ください。
REXX for JCLCheck and JCLNeat


またREXXインターフェース概要について以下日本語文書についてもご参照ください。
REXXによるユーザー独自の検証について


カラム73以降の文字列検証では以下のREXX変数が使用可能です。
Prefix. CAZ2OPTN(CAZ1REX2)をお客様のREXXライブラリにコピーし、カラム73以降の文字列検証に使用可能であるREXX変数を参照し、お客様の要件に沿った処理をコードしてください。

RAW_DATA_PROCESSING: 内  

$CA.RSTYPE    -> データタイプ 「$CA.RSTYPE='DD'」の場合、DDステートメントとなります。
$CA.RCOUNT    -> 毎ステートメントの行数
$CA.RECORD.n  -> 80バイトJCLデータ (nはバイト)

例:$CA.RECORD.74で74バイト目のデータ

 

[ EDCHEK実行時の80バイトJCLデータを取得可能とするオプション ]

「!JCK」EDCHEK実行で、ユーザーEXITやREXXインターフェースにてカラム73以降の文字列を検証するのに80バイトJCLデータを取得参照するには、「KEEP7380」オプションの指定が必要です。
「KEEP7380」オプション指定によるメッセージ表示差異については以下文書をご参照ください。

KEEP7380オプション指定時のメッセージ表示差異について

Additional Information

Old Japanese Knowledge document ID: JTEC003195

JCLCheckのその他のFAQについては、以下のリンクからご確認ください。