ルール ファイルは複数のルールを格納できるテキスト ファイルです。特定のフィールド名に条件を設定したり、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 ---
その他の割り当てルールの例については、この製品付属のメインフレーム サンプルを参照してください。[Start > All Programs > Micro Focus Enterprise Developer > Samples > Mainframe Samples] を選択し、[JCL – Allocation Override] サンプルを選択して表示できます。