免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 2310 | 回复: 13
打印 上一主题 下一主题

chain 找不到文件的紀錄? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-04-14 11:24 |只看该作者 |倒序浏览
我在一段RPG程序中想用chain取一個PF中的某條紀錄,但該PF中沒有KEY,我就
用該PF中的某個字段作為檢索自變量 ,     INVONO  CHAIN   INVOICE         90 , 但編譯時通不過,  Message . . . . :   The operation is using keys specified on a file
   that has no keys.     請問該怎樣處理?


另外, 程序中定義如下有甚麼用?
   C           *ENTRY    PLIST                     
   C                     PARM           FRDATE   8   
   C                     PARM           TODATE   8

论坛徽章:
0
2 [报告]
发表于 2004-04-14 11:36 |只看该作者

chain 找不到文件的紀錄?

好象没有关键字的PF是不允许CHAIN的吧 ?

论坛徽章:
0
3 [报告]
发表于 2004-04-14 11:57 |只看该作者

chain 找不到文件的紀錄?

那該怎樣去找某條紀錄呢?

论坛徽章:
0
4 [报告]
发表于 2004-04-14 12:21 |只看该作者

chain 找不到文件的紀錄?

建一个以这个字段为KEY 的LF,CHAIN这个LF,这样不就可以了吗?

论坛徽章:
0
5 [报告]
发表于 2004-04-14 12:39 |只看该作者

chain 找不到文件的紀錄?

1。没有KEY的话,是不能CHAIN的。最好是给PF加KEY,或建立一个合适的LF,否则只能是用 READ 从文件头一条一条开始读,然后逐条比较是否是你需要的数据。

2。*ENTRY PLIST 定义了调用这个程序时的参数。比如你这个程序,调用的时候就要这样子:CALL  PGM(PGMNAM) PARM(FRDATE TODATE),其中FRDATE 和 TODATE 需要用字符串代替。

论坛徽章:
0
6 [报告]
发表于 2004-04-14 13:41 |只看该作者

chain 找不到文件的紀錄?

謝謝!  *ENTRY PLIST可傳參數給被call的程序, 被call的程序接受參數的時候是不是用FRDATE , TODATE的變量名? 如果從dspf中傳變量到某段程序,直接用在
dspF中定義的變量就可以嗎?

论坛徽章:
0
7 [报告]
发表于 2004-04-14 14:29 |只看该作者

chain 找不到文件的紀錄?

可以

论坛徽章:
0
8 [报告]
发表于 2004-04-14 17:55 |只看该作者

chain 找不到文件的紀錄?

還想問問大家,在RPG3中, MOVE  AAA    BBB,  假如AAA某個文件的字段, BBB
可不可以認為定義了一個變量? 還是需要在E表或I表中先定義?能否給個例子?
先謝謝了.

论坛徽章:
0
9 [报告]
发表于 2004-04-15 08:25 |只看该作者

chain 找不到文件的紀錄?

BBB 在那儿定义都可以
例:MOVE AAA BBB  3

论坛徽章:
0
10 [报告]
发表于 2004-04-15 13:01 |只看该作者

chain 找不到文件的紀錄?

MOVE  AAA BBB 中,AAA可以是变量、常量,但是BBB一定是变量。
在任何语言的程序中,如果使用变量,一定是要预先定义的。

在400中,变量在很多地方可以的定义。
比如在F表中定义的外部文件(数据文件、显示文件、打印文件等)定义的字段,就可以直接在程序中作为变量使用;在DS中引用外部结构定义时,由外部DDS定义的字段;在头文件(/COPY 的方式引用)中定义;在程序的D表中定义的变量等等,这些基本上和其他语言的差不多。
不过RPG还可以在程序中随时用到随时定义,就像 tianyi 说的一样,在用到BBB的时候,直接在后面的Len位置定义长度,在DecimalPosiions位置定义小数位,其中没有定义小数位就是字符型的,定义了的就是数字型的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP