メニューボタン
製品・技術情報2019.04.25

IFSエリアに空ファイルを作成したい

Question

当社では、IBM i (AS/400)とWindowsサーバーとの連携に、IFSエリアを使用しようと考えています。調べてみたところ、「CRTDIR」でディレクトリの作成はできるようですが、空ファイルの作成方法までは見つけられませんでした。

また、CPYTOIMPFというコマンドでも同様の結果が得られると考えましたが、コピー元のファイルを用意する必要があり余計な処理が増えるので、出来れば上記コマンド以外の方法で対応したいのですが、何か方法はありませんでしょうか。

Answer

CPYTOIMPF以外の方法としては、シェルコマンドを使用する方法が考えられます。

IBM i (AS/400)でも、ライセンス「5770SS1 オプション30」がインストールされていれば、シェルコマンドを実行することが可能です。

「STRQSH(またはQSH)」を実行しますと、シェル・セッションが開きます。

例えば、すでにディレクトリ「/RENKEI」が存在する環境で「TOUCH /RENKEI/FLG.FLG」を実行いただきますと、IFS上では「/RENKEI」の配下に「FLG.FLG」というファイルが作成されます。

hint05 hint05

このコマンドは、プログラムにも組み込むことが可能です。

例:

・STRQSH CMD('TOUCH /RENKEI/FLG.FLG')
・QSH CMD('TOUCH /RENKEI/FLG.FLG')

上記のどちらかをプログラムに組み込むことで、空ファイルを作成することができるでしょう。

なお、ファイル作成には「ECHO」も使用可能なようですので、要件に合わせてご利用いただければと思います。

なお、シェル・セッションを使用する場合、コード化文字セットID(CCSID)を「5035」または「1399」である必要がございます。

もし貴社環境のシステム値「QCCSID」が「65535(または5026)」の場合には、シェルコマンド実行前にCCSIDを変更してください。

また後続処理がある場合には、CCSIDを元の設定に戻すことを忘れないよう、注意してください。

サイト内全文検索

PAGE TOP