すべてのレイアウトの定義ファイルを作成しておきます。
今回の例では、以下2種類のレイアウトがあるとします。
レコード区分01のヘッダーレコードと02の明細レコードです。
ヘッダーレコード
明細レコード
データセットのデータをホストからバイナリ受信します。
可変長マルチレイアウトの場合は受信方法が異なるので注意が必要です。
JISCII(コード変換)は行わないのは同じですが、CRLF(レコード改行)は有効にします。
可変長でもシングルレイアウト(名ばかり可変長)の場合は、シングルレイアウトの手順になります。
可変長の場合、基本的にレコードレングスでレイアウト振分を行います。
例えば100バイトと200バイトのレコードレングスのレコードがある場合、
100バイトのレコードは100バイトのレイアウトに、200バイトのレコードは200バイトのレイアウトに振分します。
そのため、同じレコードレングスで複数種類のレイアウトがある場合は正しく振分できませんでした。
そこで、そのような場合は固定長マルチレイアウトの場合と同様にキー振分も使用します。
キー振分はレコードレングスが重複した場合にのみ使用されます。(基本はレコードレングスで振分)
可変長マルチを選択してDS変換ボタンを押します。
まず次のダイアログが出ます。
今回はレコードレングス重複はないので、「はい」を選択します。
続いて定義ファイルを順に指定します。(キャンセルで指定終了)
続いてバイナリファイルを指定します。
以下のようにデータファイルが2つ作成されます。
それぞれの最終項目列の後に1列空けてレコードNoが設定されます。
最初のダイアログで「いいえ」を選択すると、固定長マルチレイアウトの場合と同様に、
振分キー情報を入力後、定義ファイル指定ごとに振分キーの値を入力する流れになります。