9.2.2 オペランドの意味
オペランドには,必ず指定するオペランドと任意に指定できるオペランドの2種類があります。
- 〈この項の構成〉
(1) 選択オプション
選択処理で使用する機能上のオプションを指定します。選択オプションのパラメタを次の表に示します。
複数のオプションを指定する場合は,次に示すどちらかの方法で指定します。
-
「-e△-i」のように分けて指定する(「△」は,スペース(空白)を示します)。
-
「-ei」のようにつなげて指定する。
この指定は,省略できます。省略した場合は,次のようになります。
-
「-e」の指定を省略した場合,入力ファイルが共用モードでオープンされます。
-
「-i」の指定を省略した場合,出力ファイル名と同じ名前のファイルがすでにあると,そのファイルの内容が書き換えられます。
-
「-v」の指定を省略した場合,JIS8単位コードの体系に従って項目が比較されます。
なお,選択オプションを指定する場合は,次の点に注意してください。
-
入力ファイルの書き込みが許可されていない場合,および入力ファイルがすでにほかの処理でオープンされている場合は,「-e」は指定できません。
-
比較項目の属性に「-j」を指定していない場合は,「-v」を指定しても無効になります。
-
「-v比較レベル」の比較レベルには,指定値以外の値を指定できません。指定値以外の値を指定すると,メッセージID「KBLS062-E」のメッセージが出力され,エラーになります。
(a) -vパラメタについて
-vパラメタに指定した値による比較処理については,次のとおりです。
-
「-v1」および「-v2」指定なし
入力レコードと選択条件式の比較項目の値は,JIS8単位コードとして扱い,JIS8単位コードの体系に従って比較します。
-
「-v1」指定あり
入力レコードと選択条件式の比較項目の値を,JIS8単位コードからEBCDIKコードの並びに変換して,EBCDIKコードの体系に従って比較します。
-
「-v2」指定あり
入力レコードと選択条件式の比較項目の値は,EBCDIKコードとして扱い,EBCDIKコードの体系に従って比較します。
JIS8単位コード体系とEBCDIKコード体系の変換表は,「付録A JIS8単位コード体系とEBCDIKコード体系の変換表」を参照してください。
(b) 「-v1」と「-v2」の違い
「-v1」の場合は,入力レコードの比較項目と選択条件式の文字条件値どちらもJIS8単位コードと見なし,EBCDIKコード体系に従って比較します。「-v2」の場合は,入力レコードの比較項目と選択条件式の文字条件値どちらもEBCDIKコードと見なし,EBCDIKコード体系に従って比較します。
- 実行例
-
-
「-v1」,および「-v2」指定なし
-
「-v1」指定あり
-
「-v2」指定あり
-
コマンドの実行結果を次に示します。
(2) 入力ファイルのファイル編成
入力ファイルのファイル編成を指定します。
複数の入力ファイルを指定する場合は,指定するファイルをすべて同じファイル編成にしてください。
この指定は,省略できません。必ず指定してください。入力ファイルのファイル編成のパラメタを次の表に示します。
パラメタ |
意味 |
---|---|
-S |
固定長順ファイルを指定する。 |
-V |
可変長順ファイルを指定する。 |
-R |
固定長相対ファイルを指定する。 |
-W |
可変長相対ファイルを指定する。 |
-I |
固定長索引ファイルを指定する。 |
-X |
可変長索引ファイルを指定する。 |
-A |
テキストファイルを指定する。 |
(3) 出力ファイルのファイル編成
出力ファイルのファイル編成を指定します。出力ファイルのレコードの形式(固定長,可変長またはテキスト)は,入力ファイルと同じにしなければなりません。
入力ファイルが順ファイル,相対ファイルまたはテキストファイルの場合,この指定は省略できます。指定を省略した場合は,入力ファイルと同じファイル編成が設定されます。入力ファイルが索引ファイルの場合は,順ファイルまたは相対ファイルのどちらかを必ず指定してください。
出力ファイルのファイル編成のパラメタを次の表に示します。
パラメタ |
意味 |
---|---|
:S |
固定長順ファイルを指定する。 |
:V |
可変長順ファイルを指定する。 |
:R |
固定長相対ファイルを指定する。 |
:W |
可変長相対ファイルを指定する。 |
:A |
テキストファイルを指定する。 |
(4) -Lレコード長
入力ファイル編成ごとのレコード長の指定方法を次の表に示します。
入力ファイル編成 |
レコード長の指定方法 |
---|---|
固定長順ファイル |
ファイルのレコード長を「1〜65,535」バイトの範囲で指定します。 |
可変長順ファイル |
指定は不要です。指定しても無視されます。 ただし,入力できるレコード長の範囲は,1〜65,535バイトです。 |
固定長相対ファイル |
|
可変長相対ファイル |
|
固定長索引ファイル |
指定は不要です。指定しても無視されます。 ただし,入力できるレコード長の範囲は,1〜65,503バイトです。 |
可変長索引ファイル |
|
テキストファイル |
ファイルの最大レコード長を「1〜65,535」バイトの範囲で指定します。レコード長には,改行文字「X'0A'」は含みません。 この指定は省略できます。指定を省略した場合は,「65535」バイトが設定されます。 なお,レコード長を指定した方が,ソート時間が短くなります。 |
(6) -sl"選択条件式"
レコードを選択するための選択条件式を指定します。指定できる条件式の個数は1から32個です。
選択条件式の形式を次の図に示します。
(a) 比較項目の属性
比較項目に関する属性を指定します。比較項目の属性のパラメタを次の表に示します。
(b) +項目位置-項目長
比較項目の開始バイト位置を5桁以内の数字で指定します。開始バイト位置はレコードの先頭からのバイト位置(先頭を0とする)とします。開始バイト位置に指定できる値の範囲を次に示します。
-
順ファイル,相対ファイルおよびテキストファイルの場合「0〜65,534」
-
索引ファイルの場合「0〜65,502」
また,比較項目のバイト長を4桁以内の数字「1〜4,096」で指定します。この指定は,省略できません。必ず指定してください。
(c) 比較演算子
比較項目で指定した値と入力レコードの値を比較,選択する方法を指定します。
この指定は,省略できません。必ず指定してください。
比較演算子のパラメタを次の表に示します。
(d) 条件値
比較の条件となる値を「C'文字条件値'」,「N'数値条件値'」または「D'日付条件値'」の形で指定します。
「C'文字条件値'」は比較項目が文字項目の場合,「N'数値条件値'」は比較項目が数値項目の場合に指定できます。また,「D'日付条件値'」は比較項目が日付項目の場合に指定できます。
指定できる条件値の長さを次の表に示します。
項目 |
最小値 |
最大値 |
備考 |
---|---|---|---|
文字条件値 |
1 |
4,096 |
− |
数値条件値 |
1 |
19 |
符号なし数値は18 |
日付条件値※ |
2 |
8 |
− |
- 条件値の扱い
-
条件値の長さが,指定した比較項目より短い場合,文字条件値のときは,下位にスペースが設定されます。数値条件値のときは,上位に0が設定されます。例を次に示します。
- (例)
-
-
文字条件値のとき
-c +0-4 : C'ab'→ ab△△
-
数値条件値のとき
-z +0-4 : N'12'→ 0012
-
日付条件値のとき
-g +0-4 : D'12'→ 12△△
(凡例) :比較対象となる部分
△:スペース(空白)を示す。
また,条件値の長さが指定した比較項目より長い場合,文字条件値のときは,下位の桁あふれ部分が対象外になります。数値条件値のときは,上位の桁あふれ部分が対象外になります。例を次に示します。
-
- (例)
-
-
文字条件値のとき
-c +0-4 : C'abcdef'→ abcd ef
-
数値条件値のとき
-z +0-4 : N'123456'→ 12 3456
-
日付条件値のとき
-g +0 -4: D'10/03'→ 10/03
(凡例) :比較対象となる部分
△:スペース(空白)を示す。
-