KEY
=
(
start
,
length
)
FROMKEY および
TOKEY プログラム制御文によって使用されるキー フィールドを定義します。この文は 1 つだけ書くことができます。パラメーターは次のとおりです。
- start
- キーが始まるレコード内の位置
- length
- キーの長さ
VSAM キー付きファイルの場合、KEY はデフォルトで実際のキーに設定されます。ただし、ファイルは順編成処理されるため、レコード照合の範囲を指定する目的で任意のフィールドをキーとして定義することができます。
INCLUDE
FROMKEYTOKEY または FROMRECCOUNT によって定義された範囲でのみレコードを比較します。
SKIP と INCLUDE は相互に排他的です。
IGNORE
FROMKEYTOKEY または FROMRECCOUNT によって定義された範囲内にあるレコードを無視します。
SKIP と INCLUDE は相互に排他的です。
FROMKEY
=
'
value1
'
TOKEY
=
'
value2
'
レコードの範囲を定義します。value1 では範囲内の最初のレコードを指定し、value2 では範囲内の最後のレコードを指定します。16 進値は、
x
'
hhhhhh
'
として指定できます (hhhhhh は 16進数)。
FROMREC
=
recnum
COUNT
=
count
レコード番号の範囲を定義します (レコード番号 x から y 個のレコード)。
FD
=
start
,
length
レコードの比較時に無視されるフィールドを定義します(INCLUDE との併用のみ)。
プログラム制御文の例
次の例では、以下のようになります。
- キー フィールドは、レコードの最初の 10 バイトとして定義されます。
- AAAAAAAAAA から BBBBBBBBBB および WWWWWWWWW から ZZZZZZZZZZ の範囲内にあるレコードが比較されます。
- 2 番目の範囲では、11 から 15 および 21 から 25 の位置が無視されます。
//SYSIN DD *
KEY=(1,10)
INCLUDE FROMKEY='AAAAAAAAAA' TOKEY='BBBBBBBBBB'
INCLUDE FROMKEY='WWWWWWWWWW' TOKEY='YYYYYYYYYY'
FD=(11,5)
FD=(21,5)