呼び出し可能ソート モジュールで使用されるファイル記述制御 (FCD) には、ファイル ハンドラーが使用する FCD に加えて、またはそれらを上書きする次のフィールドがあります。
フィールド名 |
サイズ |
フィールドの説明 |
fcd-use-files |
1 |
ソート操作用に USING 句で指定するファイルの数 (ゼロも可) |
fcd-give-files |
1 |
ソート操作用に GIVING 句で指定するファイルの数 (ゼロも可) |
fcd-col-seq-address |
4 |
照合順序へのポインター (使用しない場合は null) |
fcd-fildef-address |
4 |
USING 句および GIVING 句で指定されるファイルを定義するファイル定義ブロックへのポインター |
|
キー定義ブロックは、ソート操作で使用するキーの構造を記述するために使用します。ソート FCD の fcd-key-def-address には、このブロックへのポインターがあります。
ソート キーは複数のコンポーネントを持つことが可能ですが、ソート操作の場合に、使用できるのは 1 つのキーのみです。これらの各コンポーネントは昇順または降順で、各種数値形式のいずれかを持つことができます。コンポーネント定義領域の最初の 2 バイトは次のように使用します。
- バイト 0
- サイズ:1
ビット 7 (x"80") : |
重複が順次戻されることを示します。 |
ビット 6 (x"40") : |
DESCENDING キーを示します。 |
ビット 1 (x"02") : |
SIGN が EBCDIC 形式であることを示します。 |
ビット 0 (x"01") : |
データが EBCDIC 形式であることを示します。 |
- バイト 1
- サイズ:1
-
- ビット 7 (x"80") :
- フィールドが NUMERIC であることを示します。ビット 7 が設定されている場合:
- ビット 6 (x"40") :
- フィールドが SIGNED NUMERIC であることを示します。
- ビット 5 (x"20") :
- フィールドが非表示フィールドであることを示します。ビット 5 が設定されている場合:
- ビット 0 および 1
-
0 |
フィールドが BINARY であることを示します。 |
1 |
フィールドが PACKED-DECIMAL であることを示します。 |
2 |
フィールドが COMP-X 形式であることを示します。 |
3 |
フィールドが COMP-5 形式であることを示します。 |
- ビット 5 が設定されておらず (DISPLAY フィールド)、ビット 6 が設定されている (SIGNED) 場合:
- ビット 0 および 1
-
0 |
SIGN TRAILING INCLUDED を示します。 |
1 |
SIGN TRAILING SEPARATE を示します。 |
2 |
SIGN LEADING INCLUDED を示します。 |
3 |
SIGN LEADING SEPARATE を示します。 |
- ビット 2 (x"04") :
- 浮動小数点形式を示します。
- ビット 7 が設定されていない場合:
- ビット 1
- このフィールドに FCD で指定された照合順序が適用される場合、1 に設定されます。
説明:
ファイル定義ブロックは、ソート操作に関連する各 USING および GIVING ファイルの FCD を指すポインターのテーブルです。ソート FCD の fcd-fildef-address フィールドは、この領域へのポインターになります。ファイル定義ブロックの長さは、オフセット 52 および 53 のフィールドの内容を合計した長さの 4 倍になります。
固定ブロック ファイルに対して MFJSORT を実行する場合、USING ファイルおよび GIVING ファイル用の FCD の内容に標準操作コード OPEN で記述された必須フィールドが含まれている必要があります。