我正在使用数据传输工具将文件从AS400导出为CSV。有 500+ 个文件要导出,我希望有一种方法可以同时为多个文件执行此操作。
我尝试将传输选项另存为 .TTO,但我仍然一次只能为一个文件工作。我可以使用.bat来执行多个.TTO 文件,但仍需要 .为每个文件生成的 TTO。
任何想法将不胜感激。
有任何命令可以做到这一点,或者任何第三方工具,但是如果您愿意编写一个.bat程序来执行此操作,为什么不使用带有CPYTOIMPF的CL程序来循环访问文件名并将CSV写入IFS。如果正确设置 QNTC,甚至可以将其定向到网络共享。
下面是一些示例代码:
pgm
dclprcopt log(*no) +
dftactgrp(*no) actgrp(*new)
dclf explstf
dcl &ifspath *char 64 value('/ifspath/')
dcl &ifsname *char 64
dowhile cond('1')
rcvf
monmsg msgid(CPF0864) exec(leave)
chgvar &ifsname (&ifspath |< &filename |< '.csv')
cpytoimpf fromfile(&filelib/&filename) +
tostmf(&ifsname) mbropt(*replace) +
stmfccsid(*pcascii) +
rcddlm(*crlf) dtafmt(*dlm) +
strescchr(*strdlm) rmvblank(*trailing)
enddo
out:
endpgm
&filename
和&filelib
将是文件explstf
中的字段。
注意:CPYTOIMPF
不需要任何特殊的定义文件,因此您可以将其用于500 +文件,而无需太多工作。
可能是跑题了 SO...
但是,请查看 5250 会话中的复制以导入文件 (CPYTOIMPF) 命令。