($title_img_alt)

こちらからの投稿は、先頭に表示されているコメントへの返信になります。
ストリーファイルが取り込めません IFS初心者 さん [ 5月20日(金) 22時26分 ]
「CPYFRMSTMF」を使ってIFS領域に置かれたストリームファイルを取込もうと思っているのですが、
普通のPFをコピー先にセットすると1REC目最大長まででその後は欠落してしまいます。
どのコマンドを使ってもいいのですが、長大な延べ単レコードを持つストリームファイルを
取りこむ方法はないものでしょうか?
コピー先のファイルの作成が普通のPFではないのでしょうか?
ちゃんとつづいていてくれれば、タグで改行などもしなくていいです。
よろしくお願いします。
RE:ストリーファイルが取り込めません IKD さん [ 5月21日(土) 8時39分 ]
症状から理論的に考えればIFSストリーム・ファイルの改行が
認識されていないことになりますから
CPYFRMSTMF + [F4} の後に [F9]を押してレコード区切り文字(RCDDLM)を
正しく指定することが必要になります。

実際の IFSストリーム・ファイルの改行コードがどのように
なっているかは WRKLNK で「F10=16 進表示」で調べれば判断できます。

ただし IFSストリーム・ファイルが ASCIIファイルであるのなら
ほとんどの改行コードは CRLF(= 0x0d0a) ですから
CPYFRMSTMF RCDDLM(*CRLF) で希望のとおりになるのではないかと
思います。

その他の特殊なファイルであれば最初に書いたような調査が必要となります。
RE:ストリーファイルが取り込めません IFS初心者 さん [ 5月22日(日) 13時16分 ]
IKD様

お世話になります。ご回答ありがとうございます。

今回取り込もうと思っているファイルは、xmlファイルをFTPで受信したもので、改行コードがありません。
そもそもがそういうものを、取り込むことが不可能なのでしょうか。
IFS領域に送信してもらう時点で改行コードが入っていないと取り込めないということでしょうか?
RE:ストリーファイルが取り込めません IKD さん [ 5月22日(日) 18時0分 ]
XMLは構造化データ・ベースであるので
XMLにもレコード単位を示すタグが必ず存在します。
(ブラウザでXMLを表示させてみれはよくわかります。)

そのXMLのタグ構造を調べてみれば、どのタグが
レコードを示しているのかがわかるはずです。
XMLの解析でよく DOM に変換するとか言いますが
DOM とは DB2/400で言うところの構造化データ・ベース、
つまりただの物理ファイルのことです。
改行コードの検査は不要です。

XMLのタグの意味を理解できれば CPYFRMIMPF での
指定のヒントが出てきます。

Spoolライターや EnterpriseServer等の製品では CPYFRMXML というコマンドを
作りました。下記の例は CPYTOXML ですが CPYFRMXML も用意されています。
IBM i にも XMLパーサーの機能は提供されていますが
ボリュームがかなり莫大なものになってしまいます。

■他のファイル形式への変換
  ( http://www.officequattro.com/jpn/technet/contents/tnet_12.html )
RE:ストリーファイルが取り込めません IFS初心者 さん [ 5月23日(月) 14時54分 ]
IKD様

再びご回答頂きまして、誠にありがとうございます。
そもそも使うコマンドが"CPYFRMSTMF" ではなくて"CPYFRMIMPF"なんですね。

その、"CPYFRMIMPF"のマニュアルを見てみたのですが、
xmlの場合はフィールド定義ファイルというのが必要とありました。

まずそれの作り方もわからないので、今から悪戦苦闘してみます。

お名前

パスワード

メールアドレス

タイトル

ホームページ

アドレス

項目