zoukankan      html  css  js  c++  java
  • 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是一件很复杂的事情,其中某一个环节你漏掉了都可能导致失败,所以决不能掉以轻心,当然这份日志可能写得还有很多不完善的地方,日后发现了再来改正,以希望大家多多批评指正,共同进步。

  • 相关阅读:
    There is an overlap in the region chain修复
    There is an overlap in the region chain
    region xx not deployed on any region server
    python 中的re模块,正则表达式
    TCP粘包问题解析与解决
    yield from
    Git push提交时报错Permission denied(publickey)...Please make sure you have the correct access rights and the repository exists.
    mysql 中Varchar 与char的区别
    Mysql 字符集及排序规则
    请实现一个装饰器,限制该函数被调用的频率,如10秒一次
  • 原文地址:https://www.cnblogs.com/mooncher/p/2750093.html
Copyright © 2011-2022 走看看