download from as400 to PC file 乱码
想把SPOOL FILE DOWNLOAD到PC的文本中,做了下面步骤:
先用cpysplf COPY到一个PF文件,再用.dft文件下载到PC的文本,结果是纯粹的数字。
不知步骤对不对,或需注意哪些问题??多谢各位高手指教。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
1: qtemp一般情况下世不能跨用户使用的。
2:对于.dtf需要根据用户名的不同来变更库名和文件名比较困惑,不同用户使用不同的dtf可以使用不同
的as400文件,为什么一定要自动变更?能不能说明一下这种必要性的使用环境?
QTEMP 好象是同会话有关的,每个会话的 QTEMP 都是独立的,每个会话的 JOB 都不能访问别的会话的 QTEMP,这是 OS/400 牛的一个地方。
你用别的机器(DOS/WINDOWS/OS400)FTP或CA/400去访问你某个JOB产生在QTEMP下的文件是不可能的。
我觉得有两种方案:
1、不要用别的机器去FTP get或CA/400下载,而是从 AS/400 ftp 连接别的机器put,AS/400的JOB是可以访问QTEMP下的文件的。
2、不要把结果产生在QTEMP中,每个用户有自己的PROFILE,可以设置自己的库,或者使用集成文件系统(象UNIX那样的/xxx/yyy/zzz),或者大家用共同的LIB/FILE,但使用不同的member
.dtf /.TTO 文件是可以临时产生的,例如我写个 DOS 批处理,用 ECHO 命令动态生成 .DTF / .TTO 文件。在 WINDOWS 的 CMD 的 DOS 窗口,你用 SET 命令就可以看到很多环境变量,里面就有当前用户名的变量。
今天仔细看了一下,发现打印文件(报表)COPY到PF文件时,PF文件每行开头都有一些数字。顶格的是实际行数,在每页的第一行;每行的四、五列则是相对行数。有时在打印文件中是同一行,到PF文件变成两行,这时第二行的相对行数是0. 后来把这些行数去掉,并且把相对行数为0的那行阶段上一行后面,做完这些处理后再下载就没乱码了。
还有个问题请教,在用.dtf文件下载时能不能下载当前JOB的QTEMP的PF文件?我试了一下不行,不知是不是操作有误,如果真的不行,有下面问题,是在多用户情况下,我描述一下,请高手给个指点。
现在产生了一个报表文件想下载到PC的文本文件中,我先COPY到一个自己library的PF文件,再用.dtf下载到PC上。在.dtf中指定了自己的library。但这样设定是固定的,在一台电脑上,可能多个用户使用各自用户名登录,这样就出现问题了。
应该怎么设定.dtf文件,能够根据登录用户名自动改变里面的library和文件名。
Select convert CCSID 65535 in data transfer properties
先查看你copy后的pf文件的ccsid的值是不是935,如果不是需要改为935,在下载时你还需要修改转换的类型,一般是转换为AScii码。