enter 键是怎样响应代码的
各位大虾, 在下弱弱的问下.在DSPF subfile 中当用户输入ENTER 时要求数据自动从另一个PHYSICAL FILE 中read 到相应的数据.如输入ITEM NUMBER 价格FIELD 处自动填写.怎么实现呢? 关键是ENTER 是怎么对应相应到某个 function 来自动获取. 万分感谢!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
谢谢两位回复.感觉RPG就象汇编.代码大.功能实现不如现在所有的VISUAL 程序语言.这是事实....但速度快.稳定...
相同的功能实现,用其他快速开发语言我相信是RPG/RPGLE的N倍...
passthru 请告知你的BLOG address, Thxs
您老又忍不住要开炮啦?您老认为让新手开发订单输入程序很合适?还不会走,就教别人跳?
送上孔夫子《中庸》中的名言给你:
子曰:"愚而好自用,贱而好自专,生乎今之世,反古之道。如此者,灾及其身者也。"
[ 本帖最后由 franliu 于 2009-11-26 16:57 编辑 ]
楼主的问题都没有搞清楚,就吓唬楼主。这就是你回答问题逻辑。半桶水到处乱荡。
validate是指核对用户输入的item number在item master里面有没有。没有就该报错拉。
在控制返回后,你用readc在循环里读遍用户输入的行,核对每个item number.
原来你是自己想玩玩啊?我以为你的老板让逼你完成 Mission Impossible 呢!
这种 order entry程序,用什么语言来编都是很复杂,很困难的。
除非你做的是电子打字机程序,不做任何核对,只是电子排版。
正常的订单程序至少能都做下面那些。
1)核对客户,项目,计算价格,金额,税额。
2)检查客户信用余额
3)库存检查,分配
4)连接应收账系统,开票。
5)可以处理退货,报价,back order.
好一点的还支持:
折扣,买一送一的促销等
光考虑编辑性能的允许拷贝订单,移动行,删除行几经足够麻烦了。
[ 本帖最后由 franliu 于 2009-11-26 16:46 编辑 ]
可以写一个subfile光标定位程序,我的blog中有文说明。如果subfile的光标停在Item number栏上,当空格enter,或F1/F4寻求帮助,就调用另外一个用于item no和price的subfile程序,在需要的item no选择栏处mark,在enter,返回到上一级的subfile,并自动填入item no和price栏的内容。
这就是你程序处理的逻辑。
[ 本帖最后由 passthru 于 2009-11-26 16:40 编辑 ]
能否简单给个错略的例子.列出关键代码?... 谢谢
谢谢楼主答复,我不是要开发定单程序.总是觉的简单的东西用RPG来做特别费劲. 在下想知道VALIDATE是写在哪个位置呢? 是否在 WRITE SUBFILE 之前呢? 还是之后?
订单输入是属于很难的程序。
你的程序应该先填写若干行的空白行。允许用户输入ITEM NUMBER. 如果不允许用户输入价格,价格可以定义为输出类,不然可以定义成可输入的。
用户打入ITEM NUMBER按ENTER键,你应该VALIDATE输入的ITEM NUMBER,如果输入有错,反白显示ITEM NUMBER, 然后在下面的MESSAGE SUBFILE中报错。如果无误,用户又没有输入价钱,则找出价钱,添写在SUBFILE内。
用户按ENTER或者F1-F24键均可返回控制到你的程序。你可以检查*INKA, *INKB... 来看用户有没有案F1-F24键盘。如果没有,就是按了ENTER键了。根据你的DSPF的定义,有时候按PAGE-UP/PAGE-DOWN键也会返回控制。
你可以用READC来读哪些用户输入过数据的行。
你的老板有没有开发的经验啊?总之这些东西让初学者来做真是太为难你了。祝你好运哦!
说得难听点你可能会死得很难看。世界上怎么会有这种老板啊!
通常我只让新手做些查询之类的东西,风险很小。
正常软件包里面的订单输入程序源程序行数通常在10000行以上。
[ 本帖最后由 franliu 于 2009-11-26 16:22 编辑 ]