ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:28.21KB ,
资源ID:8461195      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-8461195.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(CL控制语言初步Word文档格式.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

CL控制语言初步Word文档格式.docx

1、SNDMSG MSG (HOLLEO) TOUSR (LENG)关键字 参数值大多数 CL 都是 针对目标而言,目标是一个占据了一定存储 空间的实体,它包括自身属性及其数据特征的描述,系统可以对它 进行操作。目标的属性包括名字、类型、长度、建立日期及其它属 性。不同目标具有不同的属性描述,大部分属性是可以修改的,而 不需要重新建立。目标的数据值是储存于目标中的信息集合,例如: 程序的值是组成程序的执行码,文件的值是组成文件的记录。目标的类型很多,常用的几种包括:LIBFILEMSGFPGMCMD库文件信息文件程序命令2JOBQDTAQMSGQOUTQDTAARAJRNJRNRCVUSRPRFS

2、BSDJOBDLINDCTLDDEVD作业队列数据队列信息队列输出队列数据域日志 日志接受器 用户简要表 子系统描述 作业描述线路描述 控制器描述 设备描述一个具体目标是由目标名和目标类型来唯一标识的,不同的 目标类型可以使用同一个目标名。目标名由用户指定,目标类型由 生成它的命令决定。不同类型的目标具有不同的操作。 CALL 命令只针对 *PGM 目标进行操作。关于目标的操作,系统也进行了统一的规范,常用的几种包括:WRKCRTADDCCCDDDEEECPYMOVRRRSSSRSTRTVGRT工作建立增加改变删除显示编辑拷贝移动变名备份恢复获取授权3DMP转储4第 二 章CL 编程CL 程序

3、的作用 CL 程序的结构 CL 程序中的命令2.1 CL 程序的作用CL 程序是由 CL 命令组成,这些命令被编译成可供随时调用 的程序。使用 CL 程序的优点包括:CL 程序比单独输入和运行命令快,因为命令被编译成能够立 即运行的形式。有些功能需要多条 CL 命令一起完成。参数可以传递给 CL 程序,CL 程序内部也接收变量的定义, 以适应特殊需要的程序操作。CL 程序能够像其它高级语言程序一样被测试和监控。CL 程序可以应用到许多方面,包括:通过 CL 程序完成单独输入 CL 命令所不能完成的功能,例如, 人工或者定时提交批作用完成一项工作,如启动子系统,进行 文件备份,整顿系统资源。给交

4、互式或批处理的应用程序提供一个接口,使得在应用程序 中直接进行系统操作或者获取系统参数。在网络通信方面,CL 程序往往承担应用主控程序的角色。2.2 CL 程序的结构5CL 程序是借助于 ADT 工具中的 SEU 输入的,在输入过 程中,键入一条命令并按 F4 键,就会显示出这条命令的提示画面, 方便用户输入相应的参数值。CL 源程序主要分为以下几个部分:程序的开始和结束:PGM PARM(&A &B) 开始 CL 程序 END PGM 结束程序变量定义:DCL 定义变量DCLF 定义文件CL 处理命令:CHGVAR 变量赋值MONMSG 监控错误信息 SNDPGMMSG 传送程序信息 RTV

5、JOBA 获取作业属性值逻辑控制命令:IF THEN ELSEDO ENDDOGOTO内部函数:% SST 取子串* CAT 连接字符程序控制命令:CALL 调用子程序RETURN 返回调用程序2.3 CL 程序的命令CL 程序中仅可包含 CL 命令,由系统提供的大多数 CL 命 令可用于 CL 程序,而有些 CL 命令是专门用在 CL 程序中的。 下面是一张用在 CL 程序中的部分命令清单,其中带有星号的表 示该命令仅能用于 CL 程序内部。2.3.1 变量的使用6变量说明,使用 DCL 命令来定义变量及其属性、长度和初值。 标准格式如下:* CHARDCL VAR (变量名) TYPE *

6、 DEC LEN (长度) VALUE(初值)* LGL使用 DCL 命令时,必须遵循的规则如下: CL 变量名必须以 & 开始,后跟字符不多于 10 个,& 后 的第一个字符必须是字母,其余的可以是字母或数字。 CL 变量值必须是:字符型最长为 9999 个字符;数值型为 压缩十进制数,最长为 15 位,其中小数位最长为 9 位; 逻辑型为“0”或“1”,表示假或真。 CL 变量的缺省初值为:字符型为空,数值型为 0,逻辑型 为“0”。 对于字符型和数值型,如果指定了初值而未指定长度,则缺 省长度为初值长度。变量值中小写字符的限制用作变量的保留值必须用大写字母表示,特别是当它们用引号括起来的

7、时候。DCL VAR(&LIB) TYPE(*CHAR) LEN(10) VALUE(*LIBL) DLTPGM &LIB/MY PROG注意:如果 VALUE 参数不使用引号,则小写是正确的。因 为使用 SEU 编辑会自动转换成大写。变量赋值,使用 CHGVAR 命令给变量赋值,其值可改变成: 常量: CHGVAR VAR(&A) VALUE(0) 变量:A) VALUE(&B) 计算量:CHGVAR VAR(&A+1)7 函数量:A) VALUE(%SST(&B 1 5) CHGVAR VAR(%SST(&A 1 5) VALUE(&赋值时应注意以下几点: 对逻辑变量,被改变的值必须是一个

8、逻辑值。 对数值变量,只能赋予十进制数,或者数字字符变量(包括 小数点和正负号)。 对字符变量,既可接受字符,也可接受十进制数。赋十进制 数时,该字符变量的值是右对齐,前导补零,负号放在最左 边。CL 程序中注解的书写,在命令的头尾使用一对符号:/* */。如果一行写不下一条命令,使用 +。和2.3.2 CL 程序内部的逻辑控制条件转移命令:IF COND(条件) THEN(一条命令) ELSE CMD(一条命令)或者 IF COND(条件) THEN(DO) .ENDDOELSE CMD (DO).无条件转移命令:GOTO LABEL操作符:逻辑的算术的字符的关系的*AND *OR *NOT

9、+ - * /*CAT *TCAT*EQ *GT *LT *GE *LE *NE8监视信息命令:MONMSGMONMSG MSGID(信息标识 1 信息标识 50)+EXEC(CL 命令)系统对于 CL 命令执行错误所送出的信息都具有唯一的标识符,如果不进行监视,则系统会终断程序,自动显示错误信息。2.3.3 系统资源的获取日期格式转换命令:CVTDATCVTDAT DATE(被转换日期) TOVAR(转换后日期)+ FROMFMT(原格式) TOFMT(新格式) TOSEP(新分隔符)其中:转换后日期的长度至少是: 对儒略日期(如 YMD,DMY 或 JUL 格式),不使用分隔 符为 5 个

10、字符,使用分隔符为 6 个字符。 对非儒略日期,不使用分隔符为 6 个字符,使用分隔符为 8 个字符。日期格式和分隔符可以通过按 F4 键选择。检索系统值命令:RTVSYSVALRTVSYSVAL SYSVAL(系统值名)RTNVAR(CL 变量名)系统值名可以通过按 F4 键选择,如:系统当前日期的系统值是 QDATE。变量名必须和系统值的类型匹配,对字符型和 逻辑型系统值而言,变量名的长度必须相符,对数字型,则长度 不小于系统值长度。检索配置源命令:RTVCFGSRC用于将现有配置的描述存放到源文件成员中9配置状态检索命令:RTVCFGSTS用于获取各类配置描述的现行状态,放入 CL 变量

11、。检索网络属性的命令:RTVNETA用于获取系统的网络属性,放入相应的 CL SYSNAME,本地网络标识 LCLNETID。变量。如:系统名检索作业属性命令:RTVJOBA用于获取当前运行作业的属性,放入相应的 CL 变量。作业 名 JOB,用户名 USER。检索目标描述命令:RTVOBJD用于获取指定目标的描述属性,放入相应的 CL 变量。检索用户档案命令:RTVUSRPRF用于获取指定用户的档案资料,放入相应的 CL 变量。10第三章 程序间的通讯程序间的通讯是指不同程序之间数据或参数的传递和交流。这 种通讯可以出现在不同种类的程序中。RPG 与 C 语言,也 可以出现在不同机器上,如:

12、PC 与 AS/400。针对 OS/400 而言, 通常程序间的通讯具有三种方式:CALL、RETURN 命令 数据队列通讯 数据域通讯3.1 CALL 命令的使用调用程序: CALL PGM(PGMA) PARM(&B) 被调用程序:C &D)有关 CALL 命令使用的几点说明:参数值可以是字符常量、数值常量、逻辑常量或 CL 常量,最 多可达 40 个。参数值以 CALL 命令中出现的顺序传送,这必须与被调用程序 的参数顺序相匹配,变量名不一定相同。被调程序中的接收参数必须说明,但接收值不受变量说明中初 值的影响。接收参数值的改变会反映到调用程序中,但常量传送不会改变。字符常量通常以 32

13、 个字节传送,数字常量以 15.5 长度压缩 格式传送。3.2 数据队列的程序通讯11数据队列(*DTAQ)是系统目标中的一种类型,当建立了这 种目标后,一个程序可以发送数据给它,另一个程序再从中接收数 据,从而达到程序之间的数据通讯。3.2.1 数据队列的优点数据队列是两个作业之间进行异步通讯的最快方法。相对数据 库文件、消息队列或数据域而言,它需要较少的额外开销。多个作业可以向相同的数据队列送数据和取数据,而数据队列 的先进先出、后进先出或关键字顺序排列属性,能够保证数据 送取的正确性。在任何高级语言程序中,通过调用系统提供的程序,就可以对 数据队列进行操作,而且操作方法灵活方便。数据队列

14、的操作 和使用包括两类:第一类使用 CL 命令;第二类调用系统程序。CL 命令:CCCCCCCDDDDDDDWRKDTAQ建立数据队列 删除数据队列 工作数据队列系统程序:QSNDDTAQ 发送数据队列QRCVDTAQ 接收数据队列QCLRDTAQ 清除数据队列 QMHQRDQD 检索数据队列3.2.2 数据队列的发送需要将数据发送给数据队列,只要在程序中调用 QSNDDTAQ 。在 CL 程序中,调用的格式如下:CALL PGM(QSNDDTAQ) PARM(&QNAME &LIB +&FLDLEN &FIELD &KEYLEN &KEY)12QNAME:是长度为 10 的字符型,它命名了数

15、据队列,如: IN_Q。LIB: 是长度为 10 的字符型,它命名了数据队列所在的库,如:*LIBL。FLDLEN: 是长度为 5 的数字型,它规定了发送给数据队列 的字符数,如:100。FIELD: 是长度为&FLDLEN 的字符型,它包含了具体发送给数据队列的数据。KEYLEN: 是长度为 3 的数字型,它说明了传送给数据队列的 关键字长度,如:6。KEY:KEYLEN 的字符型,它包含了传送给 数据队列的关键字数据。注:后两个参数可以自选,如果说明了一个,则必须说明另一 个。3.2.3 数据队列的接收需要从数据队列中接收数据,只要在程序中调用 QRCVDTAQ 。CALL PGM(QRC

16、VDTAQ) PARM(&LIB &FLDLEN +WAIT &ORDER KEYLEN &KEY &SNDRLEN &SNDR)是长度为 10 的字符型,它命名了数据队列。 OUT_Q。是长度为 10 的字符型,它命名了数据队列所在的库。 是长度为 5 的数字型,它规定了发送给数据队列 的字符数。是长度为&FLDLEN 的字符型,它包含了从数据13队列中接收到的具体数据。WAIT: 是长度为 5 的数字型,它说明了等待接收数据的 时间。负数表示无限制的等待;零表示不等待; 正数示要等待的秒数,最大值是 9999。这个参数 只有在数据队列中无满足条件的数据时, 才起作 用。ORDER: 是长度

17、为 2 的字符型,它说明了按关键字接收数 据的条件。可用的字符值是:GT、LT、EQ、 GE、LE。 是长度为 3 的数字型,它说明了接收数据队列的关 键字长度。KEYLEN 的字符型,它标识了用于从 数据队列中接收数据的关键字变量。SNDRLEN:是长度为 3 的数字型,它规定了发送者标识的长 度。SNDR:SNDRLEN 的字符型,它包含了发送 者标识的数据。后三个参数可以任选,但是&ORDER、&KEYLEN 和 &KEY 必须同时说明。3.2.4 数据队列的清除需要从数据队列中清除数据,只要在程序中调用 QCLRDTAQ 在 CL 程序中,调用的格式如下:CALL PGM(QCLRDT

18、AQ) PARMM(&LIB) 3.2.5 数据队列的检索需要检索一个数据队列的描述项,只要在程序中调用 QMHQRDQD。CALL PGM(QMHQRDQD) PARM(&RCVR &RCVRLEN +FORMAT &DQNAME)14RCVR:RCVRLEN 的字符型,它标识了含有数据队列性的变量。RCVRLEN: 是长度为 4 的数字型,它说明了&RCVR 长度。 &FORMAT: 是长度为 8 的字符型,它定义了接收模板的格式。DQNAME: 是长度为 20 的字符型,它标识了数据队列和所 在库,前十个字符是队列名字,后十个字符是 库名。3.3 数据域的程序通讯数据域(*DTAARA)

19、是系统目标中的一种类型。当建立了这 种目标后,可以用来存入数据,以便任何程序进行读取和修改。数 据域的典型用途如下:提供用于几个程序中的常数字段,易于共享和修改。标题、 说明等。在一个作业中提供一个传递信息的区域。在一个作业中提供一个字段作为控制参数,以便容易地得到修 改。数据域的 CL 命令包括:CRTDTAARACCCCCCCCCDDDDDDDDDRTVDTAARADLTDTAARAWRKDTAARA建立数据域,长度不超过 2000 改变数据域,改变时数据域被锁定 显示数据域,可以以十六进制方式显示 检索数据域,检索值需要存入 CL 变量 删除数据域工作数据域15测试功能CL 程序的编译

20、CL 程序的测试4.1 CL 程序的编译CL 源程序必须经过编译,生成 *PGM 方可运行。建立程序 的方法有两种:一是,使用 CL 命令 CRTCLPGM,二是,使用 PDM 菜单选项 14,按 F4 键即可对命令参数进行选择。系统编译的情况全部记录在编译清单中,通过 WRKSPLF 即 可看到。编译过程中的错误被列在相应命令后面,以及文件的最后, 方便用户查找。下列类型的错误将停止程序的建立:值错句法错命令内部与参数间不符有效性检查有错CL 程序可以通过反编译命令 RTVCLSRC,重新建立 CL源程序。使用该命令时,必须满足建立编译程序的参数 ALWRTVSRC 为 *YES。 当源程序

21、被反编后,任何注释信息不再 重新产生,以下程序序言将被建立:所有者名源程序的最终修改日期 源程序的重建日期和时间 最初编译时的许可程序级4.2 CL 程序的测试16对于 CL 程序在编译和运行中的错误,系统提供以下几种测 试功能:程序转储。 在 CL 源程序中输入命令 DMPCLPGM,运行后 通过 WRKSPLF 即可看到转储内容。包括程序信息队列的全 部信息和全部变量的数值。如果程序运行出错,出现提示画面 时,输入 D 也可进行程序转储。设置断点。第一步,启动测试环境,使用命令 STRDBG PGM(PGMA);第二步,设置断点,使用命令 ADDBKP STMT(1500) PGMVAR( &A &B); 第三步,运行程序, 显示断点信息;第四步,结束测试环境,使用命令 ENDDBG。 设置跟踪。跟踪是记录程序中语句执行顺序的过程。系统并不 自动显示跟踪信息,而须使用命令 DSPTRCDTA 请求显示跟 踪信息,信息包括语句执行的顺序和 ADDTRC 命令中指定的 变量值。17

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2