Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1294070
  • 博文数量: 287
  • 博客积分: 11000
  • 博客等级: 上将
  • 技术积分: 3833
  • 用 户 组: 普通用户
  • 注册时间: 2007-08-16 08:43
文章分类
文章存档

2013年(15)

2012年(17)

2011年(17)

2010年(135)

2009年(85)

2008年(18)

分类: 系统运维

2012-02-05 16:53:24

RPGLE高级练习(四)- 项目快速实施

 

说在前面的话:

前面练习我已经提到过RPGLE编程采用的程序架构,在实际项目实施过程中,如果对procedure不熟悉,勉强按procedure思路进行项目实施,会有很多麻烦,会造成拖延项目实施进度。

我总结出一套可操作的项目编程架构。

1) 按照练习(三)的思路,调整单元模块入口点;

*entry代替prototype原型,Pr原型入口描述,即在copybook中直接定义入口:

C     *entry    plist

C              parm       Ptr1

C              parm       Ptr2

C              parm       Ptr3

2) 在定义Prcopybook中对每一个Pr的定义先采用关键字extpgm进行定义,以方便单元编程程序员可以用CRTRPGPGM,即选项14,直接产生可执行目标代码,减少其它中间环节,就可以直接进行测试,debug

3) 如果采用module项目实施,在每一个程序单元都做完测试后,可开始集成服务程序,*SRVPGM,这时把Pr定义的extpgm改为extproc键字,用CRTRPGMOD,即15,进行生成*module,然后再集成服务程序,*SRVPGM

4) MSGFILE定义项目所有的msg信息;

5) QAPI写成例程,放人copybook中;用这个例程在单元程序处理过程中获取相应msgid代码的明文,用于写入物理文件pf进行保存,用于项目维护;或用另外一个copybook中的例程把msg明文返回给显示终端上。

6) 尽可能地把所有通用程序变量定义,或通用程序代码,都放人copybook中。

注:

1) 上面做法不能用于多线程应用环境,因为入口的问题。

2) 采用extpgmextprocH表中会有不同的键字定义,在项目实施过程中要对不同阶段的程序采用相应copybook中对H表的定义。

阅读(1850) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~