CICS中关于map的操作,教你如何创建一个完整的map

在开始之前先说明一下我们要用的CICS,它是大型主机上的交易处理中间件,相当于是操作系统的助理,能更加方便的完成某些功能,在这里我们可以把它看作是一个大操作系统下的一个小操作系统,它也提供了很多命令供我们调用,当然只是仅限于部分功能,现在我们就来用CICS显示MAP并与程序交互

1.写好map定义程序,如图

2.编译map定义程序(map在编译后会生成两个文件,一个是copybook文件,一个是一般的机器码文件,copybook文件可以随便放,但是机器码文件必须指定放在CICS的load Module里面,即map的编译程序loadlib属性必须指定为CICS中某的个dataset,如SERS.MSI.BG.LOADLIB,这样CICS才能控制你的cobol程序的运行)

3.写好与map交互的主程序

4.编译主程序(注意事项和第2步一样,不过主程序编译不会生成copybook)

5.在CICS里使用

CEDA命令 定义 transaction 指定 program为你的主程序

CEDA命令 定义 PROGRAM 主程序

CEDA命令 定义 PROGRAM map程序

如果你是要对vsam文件进行操作则还需多定义一个: CEDA命令 定义 File 指定 文件别名 及路径(dsn)

 以上所有的定义完成之后都要install一下,至此所有的准备工作算是做完了,接下来就要准备执行程序了,使用

CEMT命令 set prog(map名)newcopy将编译好的map程序装载到CICS里,使用

CEMT命令 set prog(主程序名) newcopy将编译好的主程序装载到CICS里

退回,清屏,输入你定义的transaction的名字,回车,搞定!

当然,如果在调试之后你对自己的主程序或map程序作了修改,那么相应的也需要将你的主程序或map程序重新newcopy一遍,然后再执行 

在下面介绍几个调试时经常用到的命令:

1.测试map是否能正常显示:CECI SEND MAP(MAP名) MAPSET(MAPSET名) MAPONLY

如果你的MAP创建的对,编译成功,编译成功的文件也放在正确的位置,而且在CICS里面定义也没有错,那么你的MAP就能显示出来,如果连这都不能显示,那就别看你的主程序了,先把MAP搞定再说吧

2.调试主程序:CEDF——》transaction名——》一直回车,当然要保证按照你的程序规则运行,大概程序要运行个两遍你就能根据调试的输出结果找到问题所在了

总结:

写map,用map是一件很复杂的事情,其中某一个环节你漏掉了都可能导致失败,所以决不能掉以轻心,当然这份日志可能写得还有很多不完善的地方,日后发现了再来改正,以希望大家多多批评指正,共同进步。

原文地址:https://www.cnblogs.com/mooncher/p/2750093.html