as400cl控制语言基础
AS/400 CL 控制语言基础◇课程大纲: l 第一章 概述 l 第二章 CL 编程 l 第三章 程序间的通讯 l 第四章 测试功能 ◆第一章 概 述 提要: * CL 命令的作用 * CL 命令的分类 * 系统菜单 1.1 CL 命令的作用 CL (Control Language) 控制语言是用户与操作系统之间的主要接口。可以 说用户管理和操作 AS/400 系统,均可以通过 CL 实现。用户在不同的工作站 或客户端可以同时使用 CL ,其输入方式有五种: * 在命令行输入 * 在菜单画面选择 * 在 work with 菜单中,option 选项 * 在 CL 程序中执行 * 远程调用 前三种输入方式给用户提供一种交互式的操作方法,只执行一条命令; 第四种方式给用户提供一种操作,并包含逻辑控制,可以完整地实现一项功能;第 五种方式给用户提供在客户端直接执行主机操作的接口。 由于 CL 使用了统一的命名方法,提供 prompt 式的提示功能和具体到域 值的在线帮助,以及自动生成命令参数的缺省值, 再加上有效性检查,从而使得 CL 的使用变得非常简单、方便和灵活。 1.2 CL 命令的参数 CL 使用了一种很科学,较为成功的命名方法。每条命令由命令名和一系列 参数组成。命令名通常由动词加上接受动词的名词(定义为目标 Object)组成, 单词通常缩写为三个字母。 例如: CL 命令 命令名 Send Message SNDMSG Copy File CPYF Work with Device Desripyions WRKDEVD CL 的参数由关键字和参数值组成,关键字通常和命令一样缩写,它用于说 明参数的作用,在命令输入屏,按 F11 键,即可看到关键字。在命令行输入命 令时,如果参数是按照固定的顺序输入,则可以省略关键字。 例如: SNDMSG MSG (HOLLEO) TOUSR (LENG) 命令名 关键字 参数值 大多数 CL 都是 针对目标而言,目标是一个占据了一定存储空间的实体, 它包括自身属性及其数据特征的描述,系统可以对它进行操作。目标的属性包括 名字、类型、长度、建立日期及其它属性。不同目标具有不同的属性描述,大部 分属性是可以修改的,而不需要重新建立。目标的数据值是储存于目标中的信息 集合,例如: 程序的值是组成程序的执行码,文件的值是组成文件的记录。目标的类型很多,常用的几种包括:* LIB 库 * FILE 文件 * MSGF 信息文件 * PGM 程序 * 命令 * JOBQ 作业队列 * DTAQ 数据队列 * MSGQ 信息队列 * OUTQ 输出队列 * DTAARA 数据域 * JRN 日志 * JRNRCV 日志接受器 * USRPRF 用户简要表 * SBSD 子系统描述 * JOBD 作业描述 * LIND 线路描述 * CTLD 控制器描述 * DEVD 设备描述 一个具体目标是由目标名和目标类型来唯一标识的,不同的目标类型可以使 用同一个目标名。目标名由用户指定,目标类型由生成它的命令决定。不同类型 的目标具有不同的操作。例如:CALL 命令只针对 *PGM 目标进行操作。 关于目标的操作,系统也进行了统一的规范,常用的几种包括: * WRK 工作 * 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 键,就会显示出这条命令的提示画面,方便用户输入相应的参数 值。CL 源程序主要分为以下几个部分:* 程序的开始和结束: PGM PARM (&A &B ) 开始 CL 程序 END PGM 结束程序 * 变量定义: DCL 定义变量 DCLF 定义文件 * CL 处理命令: CHGVAR 变量赋值 MONMSG 监控错误信息 SNDPGMMSG 传送程序信息 RTVJOBA 获取作业属性值 * 逻辑控制命令: IF THEN ELSE DO ENDDO GOTO * 内部函数: