ソートマージ


5.10.5 recsepaオペランド

意味

テキストファイルおよびCSVファイルの出力レコードの改行文字を指定します。

このオペランドは,出力ファイルのファイル編成にテキストファイルまたはCSVファイルを指定した場合だけ有効です。固定長順編成ファイル,または可変長順編成ファイルを指定した場合は,KBLS2200-Eエラーとなります。

オペランド省略時のデフォルト値を,環境ファイル「EXS_OUTRECSEPA」で指定できます。

形式
recsepa=record-separator-type
指定値

record-separator-typeに指定する値を次の表に示します。

指定値

意味

CRLF

CRLFを改行とします。

LF

LFを改行とします。

注意事項
入力ファイルが固定長順または可変長順編成ファイルの場合

固定長順または可変長順の入力ファイルを,テキストファイルに変更して出力(ファイル編成変更)する場合の注意事項を次に示します。

  • 環境ファイル「EXS_OUTRECSEPA」およびこのオペランドを省略した場合,LFを付加します。

    出力ファイルのrecsepa指定

    (環境ファイルEXS_OUTRECSEPA)

    出力レコードの改行文字

    指定なし

    LF

    LF

    LF

    CRLF

    CRLF

入力ファイルがテキストまたはCSVファイルの場合
  • 「recsepa=CRLF」または「recsepa=LF」を指定した場合,入力レコードの改行文字の種類に関係なく,このオペランドに指定した改行文字で出力します。改行文字を変更したい場合に指定してください。

  • 最終レコードに改行文字がなく,eofで終わっている入力ファイルを指定した場合,改行文字がない入力レコードには改行文字が付加されて出力されます。

  • 環境ファイル「EXS_OUTRECSEPA」およびこのオペランドを省略した場合,入力ファイルに指定した改行文字※1で出力します。入力レコードの改行文字は変更されません。

    出力ファイルのrecsepa指定

    (環境ファイルEXS_OUTRECSEPA)

    入力ファイルのrecsepa指定

    (環境ファイルEXS_RECSEPA)

    出力レコードの改行文字

    指定なし

    指定なし(LFを仮定)

    LF

    LF

    LF

    CRLF

    CRLF

    LFCRLF

    入力レコードの改行文字※2

    LF

    LF

    CRLF

    CRLF

    注※1

    入力ファイルパラメタ(-inpfile,-catinp,-spllitinp,または-joininpパラメタ)のrecsepaオペランド,または環境ファイル「EXS_RECSEPA」に指定した入力ファイルの改行文字。

    注※2

    入力レコードごとの改行文字を変更しないで出力します。CRLFとLFが混在している入力ファイルの場合,出力レコードもCRLFとLFが混在するので注意してください。また,最終レコードに改行がなく,eofで終わっている入力ファイルを指定した場合,改行がない入力レコードには,「LF」が付加されて出力されます。

    実際の入力レコードの改行文字が「CRLF」の場合,recsepaオペランドに指定する改行文字の種別や出力レコード長によって,「CR」がデータとして残ってしまう場合があります。ただし,入力レコードの改行文字を自動判定する「recsepa=LFCRLF」を指定している場合は「CR」がデータとして残ることはありません。出力レコード長の変更と改行文字の関係を次の図に示します。

    [図データ]

注※1

入力ファイルの改行文字を「recsepa=LF」と指定した場合,「CR」は入力データとして扱います。

注※2

出力レコード長(reclen)の指定がない場合,レコード末尾に「LF」を付加します。「CR」はデータとしてレコードの末尾に残るので注意してください。

注※3

出力レコード長(reclen)の指定がない場合,レコード末尾の「CR」を改行文字として扱い,「LF」を付加します。

注※4

入力ファイルの改行文字を「recsepa=CRLF」と指定した場合,「CR」は改行文字として扱います。

注※5

出力レコード長(reclen)の指定がない場合,レコード末尾に「LF」を付加します。

注※6

出力レコード長(reclen)の指定がない場合,レコード末尾に「CRLF」を付加します。

[図データ]

注※1

入力ファイルの改行文字を「recsepa=LF」と指定した場合,「CR」は入力データとして扱います。

注※2

実レコード長がminlenよりも小さい場合,「CR」以降をパディングし,改行文字を付加します。「CR」はデータとしてレコードの途中に残るため注意してください。

注※3

入力ファイルの改行文字を「recsepa=CRLF」と指定した場合,「CR」は改行文字として扱います。

注※4

実レコード長がminlenよりも小さい場合,入力データ以降をパディングし,改行文字を付加します。

[図データ]

注※1

入力ファイルの改行文字を「recsepa=LF」と指定した場合,「CR」は入力データとして扱います。

注※2

minlen≦実レコード長≦reclenである場合,レコード末尾に「LF」を付加します。「CR」はデータとしてレコードの末尾に残るため注意してください。

注※3

入力ファイルの改行文字を「recsepa=CRLF」と指定した場合,「CR」は改行文字として扱います。

注※4

minlen≦実レコード長≦reclenである場合,レコード末尾に改行文字を付加します。

[図データ]

注※1

入力ファイルの改行文字を「recsepa=LF」と指定した場合,「CR」は入力データとして扱います。

注※2

実レコード長がreclenより大きい場合,出力レコード長以降を切り捨て,レコード末尾に改行文字を付加します。

注※3

入力ファイルの改行文字を「recsepa=CRLF」と指定した場合,「CR」は改行文字として扱います。