2.13 キー位置のチェック緩和機能(SORT EEの機能)
ソート機能,マージ機能,集約機能,またはファイル分割機能を使用する場合,可変長順編成ファイル,およびテキストファイルのキー,分割キー,または非分割データの指定範囲が実レコード長を超えていてもエラーにしません。コマンドオプションの指定方法については,「5.5.11 キー位置のチェックオプション(POSNOCHKオプション)」を参照してください。
実レコード長を超えたキー部分には,NULL値を仮定してキーを比較します。
キー位置のチェック緩和機能 |
キーの扱い |
|
---|---|---|
指定なし |
キーの範囲が実レコード長を超えている場合,exsortコマンドが異常終了する。 |
|
指定あり※ |
1. キー位置+キー長が実レコード長以下の場合 |
実レコード内のキーが,ソートキー,マージキー,または集約キーとなる。 |
2. キー位置が実レコード長より小さく,キー位置+キー長が実レコード長より大きく最大レコード長以下の場合 3. キー位置が実レコード長より小さく,キー位置+キー長が最大レコード長より大きい場合 |
実レコード内のキーと,実レコードを超えている部分にNULL値を仮定したキーがソートキー,マージキー,または集約キーとなる。 |
|
4. キー位置が実レコード長より大きく,キー位置+キー長が最大レコード長以下の場合 5. キー位置が最大レコード長より小さく,キー位置+キー長が最大レコード長より大きい場合 6. キー位置が最大レコード長より大きい場合 |
NULL値を仮定したキーが,ソートキー,マージキー,または集約キーとなる。 |
(凡例)
レコード長の種類 |
可変長順編成ファイル |
テキストファイル |
---|---|---|
最小レコード長 |
COBOLでファイル作成時にユーザが指定した最小レコード長 |
1 |
実レコード長 |
実際の入力レコード長 |
実際の入力レコード長(改行文字を除く) |
最大レコード長 |
COBOLでファイル作成時にユーザが指定した最大レコード長 |
-inpfile,-splitinp,-catinp,または-joininpパラメタのreclenオペランドで指定したレコード長(改行文字を除く) |
- 注※
-
1.〜6.は,次の図の1.〜6.に対応しています。