人力资源RPG AS400程序员培训手册.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

2.8.4.4O--R

ON-ERROR(On-Error)

没用过

OPEN{(E)}(OpenFileforProcessing)打开文件

Factory1OperationFactory2ResultHILOEQ

OPEN文件名

OPEN背面的目标,必须是在当前程序中已声明的文件名(不是文件的记录格式名),

而且在OPEN操作之后,在程序结束之前之前,必须有相应的CLOSE操作。

使用OPEN操作,文件在声明时,必须使用USROPN关键字(详见D行阐明)。

ORxx(Or)逻辑判断—或

Factory1OperationFactory2ResultHILOEQ

FLD01IFGTFLD03

FLD01OREQFLD02

等价于

IFFLD01>FLD03ORFLD01=FLD02

与IF、IFxx,AND、ANDxx类似,RPGLE的写法OR,比RPG的写法ORxx要灵活,

而且可以用来体现某些复杂的逻辑关系。有鉴于此,所以通常IF语句中,我会以OR为主,

基本不用ORxx。假如在编程序方面,公司/项目组无硬性规定,那我觉得还是少用ORxx吧,

总觉得这种写法的逻辑关系看起来不直接,特别是有很复杂的AND,OR时。

OTHER(OtherwiseSelect)分支语句的判断

与分支语句SELECT一起使用,表达不符合上述全部条件时的操作,如下:

Factory1OperationFactory2ResultHILOEQ

SELECT

WHEN条件判断1

解决语句1

WHEN条件判断2

解决语句2

OTHER

解决语句3

ENDSL

在这个例子中,当满足条件判断1时,运营解决语句1,运营结束后跳至ENDSL处;

假如不满足条件判断1,则程序继续向下执行,判断是否满足条件判断2。

当满足条件判断2时,运营解决语句2,跳至ENDSL;当不满足

当不满足条件判断2时,程序继续向下执下,当读到OTHER操作码时,无条件运

行解决语句3(即当程序当前不满足以上所以条件判断时,则执行OTHER之后的语句。

解决语句允许有诸多句;

条件判断可以写得很复杂,也允许对不一样的字段进行判断;例如说C语言也有分支语

句switch,但是这个语句只能对一个字段进行分支判断,ILE语言与它不一样,允许对不一样的

字段进行判断

就我现在掌握的测试情况,上述的SELECT—WHEN--OTHER—ENDSL,其实也可以

写做:

IF条件判断1

解决语句1

ELSEIF条件判断2

解决语句2

ELSE

解决语句3

ENDIF

即WHEN与ELSEIF是类似的,这么说,应该可以明白了吧。

总之,SELECT—ENDSL是一个很好用的语法,特别是在表达诸多不一样的分支解决时。

OUT{(E)}(WriteaDataArea)

没用过,讲数据域的。

PARM(IdentifyParameters)定义入口参数

Factory1OperationFactory2ResultHILOEQR

*ENTRYPLIST

PARMFLD01

关于具体内容讲解,详见前面所说“入口参数”一章。

允许做为入口参数的有:普通变量、结构变量、数组变量

关于PARM、PLIST,还有一个在Factory1,Factory2也填写变量或指示器的用

法,但是我不知道它具体表达什么意思,也不知道该怎么用。请用过的来补充。

PLIST(IdentifyaParameterList)同上

POST{(E)}(Post)

没用过

READ{(N|E)}(ReadaRecord)读取记录

1.基本语法:

Factory1OperationFactory2ResultHILOEQ

READ文件记录格式名4546

READ背面跟的,必须是声明的文件记录格式名;

LO指示器表达锁表指示器,当在指定的时间(CHGPF,WAITRCD项可看到),

需要读取的记录仍被锁,将会打开LO指示器,即*IN45=’1’;

EQ指示器为是否读到指示器。当未读到任何记录时,打开EQ指示器,即*IN46=’1’

2.当文件在程序中,是用只读的方式声明时,READ操作并不会导致锁表;

假如文件在程序中是用修改的方式声明,READ操作成功后,该记录被锁;直到执

行解锁操作(UNLOCK,或UPDATE),或READ该文件的其它

文档评论(0)

159****9606 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档