AS400 CL 控制语言初步
课程大纲:
* 第一章 概述
* 第二章 博览财经 CL 编程
* 第三章 程序间的通讯
* 第四章 测试功能
第一章 概 述
提要:
* CL 命令的作用
* CL 命令的分类
* 系统菜单
1.1 CL 命令的作用
CL (Control Language) 控制语言是用户与操作系统之间的主要接口。
可以说用户管理和操作 AS400 系统,均可以通过 CL 实现。用户在不同的工
作站或客户端可以同时使用 CL,其输入方式有五种:
* 在命令行输入
* 在菜单画面选择
* 在 work with 菜单中,option 选项
* 在 CL 程序中执行
* 远程调用
前三种输入方式给用户提供一种交互式的操作方法,只执行一条命令;第四
种方式给用户提供一种操作,并包含逻辑控制,可以完整地实现一项功能;第五
种方式给用户提供在客户端直接执行主机操作的接口。
由于 CL 使用了统一的命名方法,提供 prompt 式的提示功能和具体到域
值的在线帮助,以及自动生成命令参数的缺省值, 再加上有效性检查,从而使
得 CL 的使用变得非常简单、方便和灵活。
1.2 CL 命令的参数
CL 使用了一种很科学,较为成功的命名方法。每条命令由命令名和一系列
参数组成。命令名通常由动词加上接受动词的名词(定义为目标Ob ject)组
成,单词通常缩写为三个字母。例如:
CL 命令 命令名
Send Message SNDMSG
Copy File CPYF
Work with Device Desripyions WRKDEVD
CL 的参数由关键字和参数值组成,关键字通常和命令一样缩写,它用于
说明参数的作用,在命令输入屏,按 F11 键,即可看到关键字。在命令行输
入命令时,如果参数是按照固定的顺序输入,则可以省略关键002617股票字。
例如:
SNDMSG MSG (HOLLEO) TOUSR (LENG)
命令名 关键字 参数值
大多数 CL 都是 针对目标而言,目标是一个占据了一定存储空间的实体,
它包括自身属性及其数据特征的描述,系统可以对它进行操作。目标的属性包
括名字、类型、长度、建立日期及其它属性。不同目标具有不同的属性描述,
大部分属性是可以修改的,而不需要重新建立。目标的数据值是储存于目标中
的信息集合,例如:
程序的值是组成程序的执行码,文件的值是组成文件的记录。
目标的类型很多,常用的几种包括:
* LIB 库
* FILE 文件
* MSGF 信息文件
* PGM 程序
* CMD 命令 300082奥克股份
* JOBQ 作业队列
* DTAQ 数据队列
* MSGQ 信息队列
* OUTQ 输出队列
* DTAARA 数据域
* JRN 日志
* JRNRCV 日志接受器
* USRPRF 用户简要表
* SBSD 子系统描述
* JOBD 作业描述
* LIND 线路描述
* CTLD 控制器描述
* DEVD 设备描述
一个具体目标是由目标名和目标类型来唯一标识的,不同的目标类型可以
使用同一个目标名。目标名由用户指定,目标类型由生成它的命令决定。不同
类型的目标具有不同的操作。例如:
CALL 命令只针对 *PGM 目标进行操作。
关于目标的操作,系统也进行了统一的规范,常用的几种包括:
* WRK |600039股票 工作
* CRT 建立
* ADD 增加
* CHG 改变
* DLT 删除
* DSP 显示
* EDT 编辑
* CPY 拷贝
* MOV 移动
* RNM 变名
* SAV 备份
* RST 恢复
* RTV 获取
* GRT 授权
* DMP 转储
第 二 章 CL 编程
提要:
华联控股股吧 * CL 程序的作用
* CL 程序的结构
* CL 程序中的命令
2.1 CL 程序的作用
CL 程序是由 CL 命令组成,这些命令被编译成可供随时调用的程序。使
用 CL 程序的优点包括:
* CL 程序比单独输入和运行命令快,因为命令被编译成能够立即运行的形式。
* 有些功能需要多条 CL 命令一起完成。
* 参数可以传递给 CL 程序,CL 程序内部也接收变量的定义,以适应特殊需
要的程序操作。
* CL 程序能够像其它高级语言程序一样被测试和监控。
CL 程序可以应用到许多方面,包括:
* 通过 CL 程序完成单独输入 CL 命令所不能完成的功能,例如,人工或者定
时提交批作用完成一项工作,如启动子系统,进行文件备份,整顿系统资源。
* 给交互式或批处理的应用程序提供一个接口,使得在应用程序中直接进行系
统操作或者获取系统参数。
* 在网络通信方面,CL 程序往往承担应用主控程序的角色。
2.2 CL 程序的结构
CL 程序是借助于 ADT 工具中的 SEU 输入的,在输入过程中,键入一条
命令并按 F4 |600776东方通信 键,就会显示出这条命令的提示画面,方便用户输入相应的参数
值。CL 源程序主要分为以下几个部分:
* 程序的开始和结束:
PGM PARM(&A &B) 开始 CL 程序
END PGM 结束程序
* 变量定义:
华意压缩股票 DCL 定义变量
DCLF 定义文件
* CL 处理命令:
CHGVAR 变量赋值
MONMSG 监控错误信息
SNDPGMMSG 传送程序信息
RTVJOBA 获取作业属性值
* 逻辑控制命令:
IF THEN ELSE
DO ENDDO
GOTO
* 内部函数:
% SST 取子串
* CAT 连接字符
* 程序控制命令:
CALL 调用子程序
RETURN 返回调用程序
2.3 CL 程序的命令
CL 程序中仅可包含 CL 命令,由系统提供的大多数 CL 命令可用于 CL 程
序,而有些 CL 命令是专门用在 CL 程序中的。
下面是一张用在 CL 程序中的部分命令清单,其中带有星号的表示该命令仅能
用于 CL 程序内部。
2.3.1 变量的使用
* 变量说明,使用 DCL 命令来定义变量及其属性、长度和初值。标准格式如
下:
* CHAR
DCL VAR (变量名) TYPE * DEC LEN (长度) VALUE(初值)
* LGL
使用 DCL 命令时,必须遵循的规则如下:
#CL 变量名必须以 & 开始,后跟字符不多于 10 个,& 丹化科技股吧 后的第一个字符必须
是字母,其余的可以是字母或数字。
#CL 变量值必须是:字符型最长为 9999 个字符;数值型为压缩十进制数,
最长为 15 位,其中小数位最长为 9 位;逻辑型为“0”或“1”,表示假或真。
#CL 变量的缺省初值为:字符型为空,数值型为 0,逻辑型为“0”。
#对于字符型和数值型,如果指定了初值而未指定长度,则缺省长度为初值长
度。
* 变量值中小写字符的限制
用作变量的保留值必须用大写字母表示,特别是当它们用引号
括起来的时候。例如:
DCL VAR(&LIB) TYPE(*CHAR) LEN(10) VALUE('*LIBL')
DLTPGM &LIBMY PROG
注意:如果 VALUE 参数不使用引号,则小写是正确的。因
为使用 SEU 编辑会自动转换成大写。
* 变量赋值,使用 CHGVAR 命令给变量赋值,其值可改变成:
#常量: CHGVAR VAR(&A) VALUE(0)
#变量: CHGVAR VAR(&A) VALUE(&B)
#计算量:CHGVAR VAR(&A) VALUE(&A+1)
#函数量:CHGVAR VAR(&A) VALUE(%SST(&B 1 5))
CHGVAR VAR(%SST(&A 1 5)) VALUE(&B)
赋值时应注意以下几点:
#对逻辑变量,被改变的值必须是一个逻辑值。
#对数值变量,只能赋予十进制数,或者数字字符变量(包括小数点和正负号)。
#对字符变量,既可接受字符,也可接受十进制数。赋十进制数时,该字符变
量的值是右对齐,前导补零,负号放在最左边。
* CL 程序中注解的书写,在命令的头尾使用一对符东凌粮油股吧号:* 和*。如果一行
写不下一条命令,使用 +。
2.3.2 CL 程序内部的逻辑控制
* 条件转移命令:
IF COND(条件) THEN(一条命令)
ELSE CMD(一条命令)
或者 IF COND(条件) THEN(DO)
.
ENDDO
ELSE CMD (DO)
.
ENDDO
* 无条件转移命令:GOTO LABEL
* 操作符:
逻辑的 *AND *OR *NOT
算术的 + - *
字符的 *CAT *TCAT
关系的 *EQ *GT *LT *GE *LE *NE
* 监视信息命令:MONMSG
MONMSG MSGID(信息标识 1 … 信息标识 50)+
EXEC(CL命令)
系统对于CL命令执行错误所送出的信息都具有唯一的标识符,如果不进行
监视,则系统会终断程序,自动显示错误信息。
2.3.3 系统资源的获取
* 日期格式转换命令:CVTDAT
CVTDAT DATE(被转换日期) TOVAR(转换后日期)+
FROMFMT(原格式) TOFMT(新格式) TOSEP(新分隔符)
其中:转换后日期的长度至少是:
#对儒略日期(如 YMD,DMY 或 JUL 格式),不使用分隔符为 5 个字符,
使用分隔符为 6 个字符。
#对非儒略日期,不使用分隔符为 6 个字符,使用分隔符为8 个字符。 日国资委 上市公司 期
格式和分隔符可以通过按 F4 键选择。
* 检索系统值命令:RTVSYSVAL
RTVSYSVAL SYSVAL(系统值名)RTNVAR(CL变量名) 其中:系统
值名可以通过按 F4 键选择,如:系统当前日期的 系统值是 QDATE。变量名
必须和系统值的类型匹配,对字符型和逻辑型系统值而言,变量名的长度必须
相符,对数字型,则长度
不小于系统值长度。
* 检索配置源命令:RTVCFGSRC
用于将现有配置的描述存放到源文件成员中
* 配置状态检索命令:RTVCFGSTS
用于获取各类配置描述的现行状态,放入 CL 变量。
* 检索网络属性的命令:RTVNETA
用于获取系统的网络属性,放入相应的 CL 变量。如:系统名
SYSNAME,本地网络标识 LCLNETID。
* 检索作业属性命令:RTVJOBA
用于获取当前运行作业的属性,放入相应的 CL 变量。如:作业
名 JOB,用户名 USER。
* 检索目标描述命令:RTVOBJD
用于获取指定目标的描述属性,放入相应的 CL 变量。
* 检索用户档案命令:RTVUSRPRF
用于获取指定用户的档案资料,放入相应的 CL 变量。
第三章 程序间的通讯
程序间的通讯是指不同程序之间数据或参数的传递和交流。这
2021年4月27日发(作者:光力科技光力科技(300480))· specific · n. [sp?'s?f?k] 150174 ( specifics ) · ·|金龙鱼股吧 双解释义 · C 特效药 drug...
2021年4月26日发(作者:我的最爱鹏华动力,自从投资以来一直持有,好鸡!鹏华动力增)浅谈Flash动画短片制作流程范素芳【摘 要】二维动画短片制作技术上分传统手绘与无纸动画,现在用FLASH或TVP制作无纸动画的最多。本文以flash软...
奇门遁甲测股票 2021年4月26日发(作者:单采是什么意思?采血浆与采血有什么不同?建一处单采血)中影星美院线基本情况 中影星美院线横跨31个省市地区,全国覆盖率达超过90%。其中北京、上海、深圳、海南、安徽、贵州等地区具有极高华商主题精...
2021年4月28日发(作者:黄金黄金)目 录 第一部分 电热水壶行业简介 1电热水壶发展……………………………………………………………………… 3 1.1电热水壶简介…………………………………………………………………… 3 1.2...
2021年4月28日发(作者:SHXGED沪新股额是什么?强生控股(600662))路漫漫其修远兮,吾将上下而求索 - 百度文库 乐视网股票分析 股票601677 电子商务2班 黄建深 学号 摘...
1、大连圣亚600593这只什么样? 600593短期量能不济,11月初就有望到13以上! 2、山西同世达煤化工集团隆顺焦铁有限公司怎么样? 山西同世达煤化工集团隆顺焦铁有限公司是2001-08-05在山西省临汾市尧都区注册成立的有...