ルール ファイルは複数のルールを格納できるテキスト ファイルです。特定のフィールド名に条件を設定したり、1 つのルールの中に複数の条件を定義したりできます。
ルールは次の形式で定義します。
RULE: - CONDITION: condition VALUE: value SUBDIRECTORY: location ---
詳細は次のとおりです。
1 つのルールに複数の条件を含めることができます。
ルールに含めることのできるSUBDIRECTORY: エントリは 1 つのみです。
次の例は、RECORDTYPE プロパティ値が「S」という条件を設定しているルールの例です。すべての SPOOL ファイルを $MFSYSCATDIR\SPOOL\ フォルダー ($MFSYCATDIR はシステム カタログの格納先フォルダーを示す環境変数) に割り当てています。
RULE: - CONDITION: RECORDTYPE VALUE: S SUBDIRECTORY: $MFSYSCATDIR\SPOOL\ ---
次の名前をルールで使用して、カタログ レコード フィールドを示すことができます。
1 つのルール内で複数の条件を定義できます。
次の例は、文字セットが ASCII のデータセットのルールを示しています。このデータセットの名前の最初の要素は「PROD」で、4 番目の要素は「I」です (たとえば、PROD.BBBB.CCCC.I.EEEE)。UNIT の設定は「SYSDA」で、RECFM の設定は「VB」です。作成元は JCL ジョブ「OVERCHK」です。データセットは「$MFSYSCATDIR\RECFM\」フォルダー内に作成されます。
RULE: - CONDITION: CHARSET VALUE: A - CONDITION: DSNAME1 VALUE: PROD - CONDITION: DSNAME4 VALUE: I - CONDITION: UNIT-DEVICE VALUE: SYSDA - CONDITION: RECFM VALUE: VB - CONDITION: JOB-CREATED VALUE: OVERCHK SUBDIRECTORY: $MFSYSCATDIR\RECFM\ ---
ルールに 16 進数を使用できます。
次の例は、データセット LRECL フィールド用に定義したルールを示しています。H'0063' (10 進数 99) の値がある場合、データセットは LRECL99 フォルダーに割り当てられます。
RULE: - CONDITION: LRECL VALUE: HEXVALUE 0063 SUBDIRECTORY: $MFSYSCATDIR\LRECL99\ ---
ルール ファイルでは簡単なワイルドカードを使用できます。1 つ以上のワイルドカード (*) を値フィールドで使用して、任意の数の文字を表すことができます (たとえば、L00*500 または*TE*.**S*など)。
次の例は、最初の名前要素が「PROD」で、管理クラスが「L00」で始まり「500」で終わるデータセットを、L00D500 フォルダーに割り当てることを指定しています。
RULE: - CONDITION: DSNAME1 VALUE: PROD - CONDITION: MGMTCLASS VALUE: L00*500 SUBDIRECTORY: $MFSYSCATDIR\L00D500\ ---
ルール ファイルの形式を使用して、同一の条件に基づいてデータセットにプロパティを割り当てることができます。これをメインフレームの自動クラス選択プロセスにリンクできます。
次の属性をデータセットに割り当てることができます。
次の例は、最初の名前要素が「MFI01」で 4 番目の名前要素が「F2」であるデータセットを $MFSYSCATDIR\MFI01\ENDINF2 フォルダーに割り当てるルールを示しています。MANGEMENGTCLASS プロパティを「MGMTYYYY」に設定し、EXPIRY データを 4 日に設定します (特定の値も使用できます)。
RULE: - CONDITION: DSNAME1 VALUE: MFI01 - CONDITION: DSNAME4 VALUE: F2 SUBDIRECTORY: $MFSYSCATDIR\MFI01\ENDINF2 - ATTRIBUTE: MGMTCLASS VALUE: MGMTYYYY - ATTRIBUTE: EXPIRE VALUE: +4 ---
その他の割り当てルールの例については、この製品付属のメインフレーム サンプルを参照してください。[スタート] > [すべてのプログラム] > [Micro Focus Enterprise Developer] > [Samples] > [Mainframe Samples] を選択し、[JCL – Allocation Override] サンプルを選択して表示できます。