I表转成D表
在看资料时,发现好多程序中都是用
I表来定义数据结构的,在下面的I表定义中,
ISAVDS E DS STATES 2
请问怎么转成D表,我转成
D SAVDS E DS EXTNAME(STATES),
编译时,2 OCCUR SAVDS 编译不行.各位帮帮忙,谢谢.
PF(STATES)
A UNIQUE
A R RSTATES
A STATCD 2
A STATDS 15
A K STATCD
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
简单的说就是一个含有2个元素的一维数组,只是操作和定义方式不一样
该数据结构将分配两次存储空间!!Thanks,本来我的理解是2条一样的记录,这样我更清晰了.
在rpg中:
IDsname....NODsExt-file++.............OccrLen+.............................
ISAVDS E DS STATES 2
这里就明确的说2表示你定义了一个成员来自外部文件states中的数据结构,该数据结构将分配两次存储空间;
所以转成rpgle时就在D表中出现occur两次。
I表是RPG的,D表是RPGLE的,,
IBM提供了一个方法转换RPG到ROPGLE,但是没有用过
楼主自己去红皮书那里翻翻
我改成了
D SAVDS E DS EXTNAME(STATES)
OCCURS(2)
就OK了,不知道为什么?
READ SUBFILE RECORD(update value statcd and statds)2 occur savds
CHAIN TO STATES FILE(update value statcd and statds)1 occur savds
这个是为什么啊?