直接的にはできません。このプログラムはSystem i サーバー側で実行され、ABCD.TTO は PCクライアント側にあるわけですからこのプログラム(CLP)で ABCD.TTO を変更することはできません。やるとすれば、ABCD.TTO 自体を System i 側でユーザーー名を含んだ形のものを自動生成してから ABCD.TTO をダウンロードしてから ABCD.TTO を指定したダウンロードを行うことになります。しかし、この方法はかなり面倒なのでSystem i 側でメンバー別のファイルを別の QTEMP上のファイルにコピーしてからダウンロードするようにすればABCD.TTO には依存する必要がなりなりますのでご希望の機能を簡単に実現することができます。例えば このCLP内で、 CPYF MYLIB/MYFILE TOFILE(QTEMP/MYFILE) FROMMBR(USER) MBROPT(*REPLACE) CRTFILE(*YES)とすれば、QTEMP 上にメンバーが異なっても同じファイル QTEMP/MYFILE が生成されます。この QTEMP/MYFILE をダウンロードする .TTO を指定するようにすればよいでしょう。
> 直接的にはできません。> > このプログラムはSystem i サーバー側で実行され、> ABCD.TTO は PCクライアント側にあるわけですから> このプログラム(CLP)で ABCD.TTO を変更することはできません。> やるとすれば、ABCD.TTO 自体を System i 側でユーザーー名を> 含んだ形のものを自動生成してから ABCD.TTO をダウンロードして> から ABCD.TTO を指定したダウンロードを行うことになります。> > しかし、この方法はかなり面倒なので> System i 側でメンバー別のファイルを別の QTEMP上のファイルに> コピーしてからダウンロードするようにすれば> ABCD.TTO には依存する必要がなりなりますので> ご希望の機能を簡単に実現することができます。> 例えば このCLP内で、> > CPYF MYLIB/MYFILE TOFILE(QTEMP/MYFILE) FROMMBR(USER) MBROPT(*REPLACE) CRTFILE(*YES)> > とすれば、QTEMP 上にメンバーが異なっても同じファイル QTEMP/MYFILE が> 生成されます。> この QTEMP/MYFILE をダウンロードする .TTO を指定するようにすればよいでしょう。> ご返答ありがとうございます。QTEMPのファイルがデータ転送出来ない事と、転送先のファイル(.xls)を変更後にAS/400へ取り込む時もメンバー指定出来れば排他制御を考えなくていい事が理由で、前述の通りの処理を試みています。ABCD.TTOの中身を別のアプリケーションで変更するしかないでしょうかね。
QGPL や QGPLTEMP を使って、ただし複数のほかのユーザーとバッティングしないように ALCOBJ *EXCLUDE で他のユーザーからの使用を一時的に排他制御してはどうでしょうか ?。