サーバシステムへデータを送信する際のデータの形式について説明します。
転送元のUNIX/IAサーバ側のファイルを、グローバルサーバ上に格納する際に、レコード変換は以下のとおり行います。
転送先の順データセットで扱っているレコード形式は、固定長(F、FB)と可変長(V、VB)だけです。
転送コマンドで指定した値(ボリューム通し番号、レコード形式、レコード長・・・etc.)を基にして、転送先の順データセットに格納します。
バイナリ転送時
転送先順データセットのレコード形式がF/FBの場合
UNIX/IAサーバ側のファイルサイズがレコード長の倍数でないとエラーになります。
レコード長の倍数になるように設定するか、V/VB形式を使用してください。
転送先順データセットのレコード形式がV/VBの場合
最大レコード長でレコードを作成していき、最後だけ残りのデータ長がレコード長となります。
区切り文字削除機能を使用した転送時
転送コマンドで区切り文字削除機能を使用する場合
転送コマンド実行時に 「クライアントシステム側の区切り文字コード」 に、転送元ファイルの1行の区切り文字のコードを指定します。
転送コマンドで区切り文字削除機能を使用するときの指定方法等については、転送コマンドのmftfsendコマンドを参照してください。
出力先順データセットのレコード形式がF/FBの場合
クライアントシステム側の転送元ファイルの、レコードの区切り文字から区切り文字までのバイト数が、グローバルサーバ側のレコード長と同じになるようにしてください。 同じでない場合はエラーになります。
出力先順データセットのレコード形式がV/VBの場合
クライアントシステム側の転送元ファイルの、レコードの区切り文字から区切り文字までの長さが、グローバルサーバ側のレコード長を超えないようにしてください。 レコード長を超えた場合エラーになります。
転送元のUNIX/IAサーバ側のファイルを、転送先のUNIX/IAサーバ上に格納する際に、レコード変換は以下のとおり行います。
バイナリ転送時
転送元と同じデータが格納されます。
区切り文字変換機能を使用した転送時
転送コマンドで区切り文字変換機能を使用する場合、転送コマンド実行時に 「クライアントシステム側の区切り文字コード」 と 「サーバシステム側の区切り文字コード」 を共に指定します。
「クライアントシステム側の区切り文字コード」には、転送元ファイルの1レコードの区切り文字のコードを、「サーバシステム側の区切り文字コード」には、転送先ファイルの1レコードの区切り文字のコードを指定します。
その指定を元に、転送元ファイル内の「クライアントシステム側の区切り文字コード」を「サーバシステム側の区切り文字コード」に変換しながら転送します。
よって、UNIXサーバからIAサーバにデータ送信する場合、UNIXサーバの改行コード(0x0a)をIAサーバ側の改行コード(0x0d0a)に変換しながら転送することができます。
転送コマンドで区切り文字変換機能を使用するときの指定方法等については、転送コマンドのmftfsendコマンドを参照してください。