CICS中程序跳转的方式介绍
2009-09-27 09:20
225 查看
完成一个交易所需要的数据处理代码可以不必完全写在一个程序里,跟去其逻辑内容分解成若干部分,每一部分写在一个程序里面,在交易里根据需要调用各个程序,这样做既可以减少程序复杂度,又有利于程序复用。CICS中调用程序有两种方式:LINK和XCTL
使用
XCTL
命令调用程序时,两程序仍然处于同一个任务之下。并且,同样也可通过
COMMAREA
在两程序间传递参数。以下为在程序
PGMC
中,通过
XCTL
调用程序
PGMD
的部分代码:
IDENTIFICATION DIVISION.
PROGRAM-ID. PGMC.
……
PROCEDURE DIVISION.
……
EXEC CICS LINK PROGRAM(‘PGMD’)
COMMAREA(COMSTART)
LENGTH(20)
END-EXEC
……
同时需要注意的是,此时被调用程序
PGMD
通过
RETURN
命令将直接返回到
CICS
系统中。也就是说,使用
XCTL
命令调用程序时,将不改变
CICS
当前执行的逻辑层次。图
为
XCTL
命令下
CICS
的逻辑层次关系。
使用
LINK
命令调用程序时,两程序将位于一个任务之下。同时,通过
LINK
命令中的选项
COMMAREA
可以实现在调用过程中的参数传递。例如,在以下程序
PGMA
中,将通过
LINK
命令调用程序
PGMB
。
IDENTIFICATION DIVISION.
PROGRAM-ID. PGMA.
*
ENVIRONMENT DIVISION.
*
DATA DIVISION.
WORKING-STORAGE SECTION.
01 COMSTART.
05 STATUS-I PIC X.
05 DATA-I PIC X(19).
……
*
PROCEDURE DIVISION.
……
EXEC CICS LINK PROGRAM(‘PGMB’)
COMMAREA(COMSTART)
LENGTH(20)
END-EXEC
……
GOBACK.
需要注意的是,被调用的程序
PGMB
通过
RETURN
命令将返回到程序
PGMA
中。因此,通过
LINK
命令进行程序调用时,将改变
CICS
当前执行的逻辑层次。图
反映了使用
LINK
命令时
CICS
中不同逻辑层次之间的关系。
相关文章推荐
- JSP和Servlet的5种跳转方式介绍
- 微信小程序实现跳转的几种方式总结
- 微信小程序详解——页面之间的跳转方式【路由】和参数传递
- 微信小程序跳转页面的几种方式???????
- 微信小程序带参传递的界面跳转的两种方式
- 微信小程序 头什么样的跳转方式 头部会有返回
- 微信小程序的跳转方式。
- C程序的结构化组织方式介绍
- 黑马程序员—Java语言基础(人机交互方式、Java语言介绍、环境变量配置、Hello World程序编写)
- 微信小程序详解——页面之间的跳转方式【路由】和参数传递
- php程序开发之实现网页跳转的三种方式
- 微信小程序页面跳转三种方式
- JSP和Servlet的5种跳转方式介绍
- struts2 result type页面跳转方式介绍
- 微信小程序的两种跳转方式
- java程序中前后台交互的两种实现方式以及页面之间的跳转
- (转)C#中Response.Redirect,Server.Transfer,Server.Execute三种跳转方式介绍
- 小程序的跳转方式
- oracle启动程序方式详细介绍
- 微信小程序 跳转方式总结