IFS

41. CPYxxxSTMF と CPYxxxIMPFのどちらを使うべきか

良く似た紛らわしいコマンドとして
ファイル(データ・ベース)とIFSストリーム・ファイルとの
変換するコマンドとして CPYxxxSTMF と CPYxxxIMPFがある。
_

これらはどちらを優先して使用するべきであろうか?

コマンド 機能
CPYTOSTMF ファイルからIFSへのコピー
CPYTOIMPF ファイルからIFSへのコピー
CPYFRMSTMF IFSからファイルへのコピー
CPYFRMIMOF IFSからファイルへのコピー

初めに存在していたのは CPYxxxSTMFであって
後からそれを一般化した CPYXXXIMPF が登場した。
機能はどちらもほとんど同じである。
_

結論から言うと CPYXXXSTMF を優先して使用するべきである。

[理由]

CPYxxxIMPF は使用する前にSQLのエラーが発生すると
SIGNIFFしない限りは CPYxxxIMPFも誤動作を起こしてしまって
正常に動作することができない。
これはIBMのバグであって Ver7.2以降ではPTFが公開されている。
Ver7.1のPTFは将来に公開されるかもしれないという公示しかない。
_

従ってPTFを適用するまでもなく

CPYxxxSTMFを優先して使用するべきである。

[参考リンク]

IBM SUPPORT情報
 CPYTOIMPFまたは CPYFROMOMPFで SQLエラーの後で障害となる件

…. 製品を開発する上ではIBM ユーティリティやコマンドの障害も
良く把握して製品で何を使用すべきか検討する必要がある。
ユーザー環境でどのような問題が発生するかもしれないので
できるだけ品質に優れた製品を開発するために
IBM のバグ情報も調べる必要がある。
_