欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    COBOL主机应用开发架构基础.ppt

    • 资源ID:6503195       资源大小:226.99KB        全文页数:37页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    COBOL主机应用开发架构基础.ppt

    COBOL for Mainframe Fundamentals,COBOL主机应用开发架构基础,本节内容,COBOL与传统系统COBOL应用开发架构COBOL与CICSCOBOL与DB2COBOL与IMS更详尽的内容将在相关课程中讲述。,COBOL与传统系统,传统程序是用上一代技术开发的可操作计算机程序或程序组,多数已经运行多年,并且仍然能胜任所负责的工作的可行系统;上世纪70年代80年代,COBOL大量用于建设大型、复杂的商业系统,因此用COBOL编写的数据处理程序构成了传统程序的主体;传统系统通常是公司进行关键商业活动时所依赖的核心程序,当系统需要更新时不能中断,从头改写往往是下策,其代码的修改和改进为现代的COBOL编程人员带来了机遇和挑战。,COBOL应用开发架构,大部分传统COBOL系统都是用IBM硬件、操作系统和编译器开发的;近代的S/390、Z900、AS/400乃至最新的iSeries、zSeries等服务器上仍然保持了对COBOL的支持;COBOL应用程序的数据可以放在文件中,也可以放在DBMS(数据库管理系统)中;主机上COBOL应用程序后台的DBMS通常使用IMS(层次数据库)或DB2(RDBMS),事务管理的实现则使用CICS或者IMS TM。,COBOL与CICS,CICS简介CICSCOBOL,CICS简介,CICS是IBM的客户信息控制系统,是运行终端(联机)系统的环境;CICS特别适合事务性系统,如处理机票购买和银行存取款等;40多年来,CICS一直活跃在全球一流公司的商业系统中:当今全球一共有大约50000个CICS站点;在500个最大的IBM客户中,490个都是用CICS;大约有100万编程人员编写和维护CICS程序,主要是COBOL程序。,CICS事务,CICS事务由一个或多个CICS程序组成,通常是用COBOL编写,一般是用SQL命令读写关系数据库或用DL/I读写IMS数据库,并负责与终端上的最终用户交流信息;CICS保证事务或者完全成功,或者根本不执行,它与COBOL配合协调,能高效地使用系统资源;COBOL程序的性质是不可再入(reentrant)的,即一次只能有一个终端用户执行内存中的COBOL程序,但CICS用伪再入(pseudo-reentrant)或准再入(quasi-reentrant)技术解决了这个问题,它对COBOL程序的每个实例保存一份工作存储节,但允许程序的所有实例使用过程部。,CICS程序实例屏1,CICS程序实例屏2,CICS程序实例屏3,CICS程序实例屏4,COBOL与CICS,CICS的许多特性使程序员不必考虑CICS终端的结构和它们的位置以及如何与网络联接就能编写出高级的事务处理应用程序;CICSCOBOL程序是COBOL语句与EXEC CICS语句的组合,能与CICS通信,程序中的每一行是下列语句之一:COBOL行(例如MOVE WS-TEMP TO WS-PERMANENT)EXEC CICS语句(例如EXEC CICS RETURN END-EXEC)数据库访问语句(例如EXEC SQL SELECT NAME INTO:WS-NAME FROM EMPLOYEE WHERE EMP_ID=:WS-ID END-EXEC)CICSCOBOL程序通过EXEC CICS SEND和RECEIVE语句与最终用户通信,就像其它程序使用DISPLAY和ACCEPT一样,不过在CICSCOBOL程序中,通常是全屏显示而不是一行显示。,COBOL中的CICS命令,通用格式 command option(arg).在COBOL中用EXEC CICS启动CICS 命令,用END EXEC.终止。,CICS命令一览,终端控制SEND,SEND CONTROL,SEND MAP,RECEIVE,RECEIVE MAP异常处理HANDLE CONDITION,IGNORE CONDITION文件控制READ,WRITE,REWRITE,WRITE,UNLOCK,STARTBR,READNEXT,READPREV,ENDBR,RESETBR程序控制LINK,XCTL,RETURNQueue 控制WRITEQ TS|TD,READQ TS|TD,DELETEQ TS|TD,终端控制,对终端进行 I/O命令:SENDRECEIVE基本的mapping支持,基本的mapping支持,字符屏幕显示(mapping)基于应用程序生成mapping从终端接受数据或向终端发送数据,SEND命令,语法格式 EXEC CICSSENDFROM(data-area)LENGTH(data-value)END-EXEC.,SEND样例,WORKING-STORAGE SECTION.01MSG-LENGTHPIC S9(4)COMP.01OUTPUT-MESSAGE.05MSG-IDPIC X(4).05FILLERPIC X.05MSG-TXTPIC X(35).PROCEDURE DIVISION.MOVE 40 TO MSG-LENGTH.MOVE INV1 TO MSG-ID.MOVE INVOICE NOW BEING PRINTED TO MSG-TXT.EXEC CICS SENDFROM(OUTPUT-MESSAGE)LENGTH(MSG-LENGTH)ERASEEND-EXEC.,SEND CONTROL命令,语法格式EXEC CICSSEND CONTROLCURSOR(data-value)ERASE|ERASEUPFREEKBEND-EXEC.,SEND MAP命令,语法格式EXEC CICS SEND MAP(name)MAPSET(name)FROM(data-area)LENGTH(data-value)DATAONLY|MAPONLY ALARM CURSOR(data-value)ERASE|ERASEUP FREEKBEND-EXEC.Exception condition:MAPFAIL,符号Map,WORKING-STORAGE SECTION.COPY symbolic-map-member-namePROCEDURE DIVISION.MOVE xxx TO xxxO.EXEC CICSSEND MAPEND-EXEC.,物理Map,在CICS里用CEDA定义CEDA DEF MAPSET,RECEIVE MAP命令,语法格式EXEC CICS RECEIVE MAP(name)MAPSET(name)LENGTH(data-area)INTO(data-area)END-EXEC.Exception condition:MAPFAIL,符号Map,WORKING-STORAGE SECTION.COPY symbolic-map-member-namePROCEDURE DIVISION.EXEC CICSRECEIVE MAPEND-EXEC.MOVE xxI TO xxx.,CICSCOBOL程序的限制,环境部中与数据管理服务有关的项目不能使用;数据部的文件节(file section)不能使用;REPORT-WRITER,SEGMENTATION,SORT 和TRACE 等不能使用;COBOL READ,WRITE,OPEN 和 CLOSE 等语句不能使用;ACCEPT,CURRENT-DATE,DATE,DAY,DISPLAY,EXHIBIT,INSPECT,SIGN IS SEPARATE,STOP RUN,TIME,UNSTRING等动词不能使用。,CICSCOBOL程序的结束,语法 EXEC CICSRETURNEND-EXEC.,COBOL与DB2,DB2是大型主机上支持的大型关系数据库管理系统,COBOL应用程序通过执行SQL语句来操作和访问DB2数据库;在COBOL中,使用SQL有所不同:SQL查询必须以EXEC SQL开始,以END-EXEC结束;SQL查询通常使用COBOL宿主变量。,宿主变量(host variable),宿主变量(host variable)在SQL语句前面带冒号(:);宿主变量应该在COBOL中正确定义,对应于列属性;DELETE语句不需要宿主变量;SELECT语句需要宿主变量;INSERT语句通常需要宿主变量,但也可以使用VALUES从句;UPDATE语句也需要宿主变量,但只对要改变数据的列。,例子:查询员工1并改变其性别,MOVE FEMALE TO SEX OF DCLEMPLOYEEEXEC SQL UPDATE EMPLOYEE SET SEX=:DCLEMPLOYEE.SEX WHERE EMP_ID=1 END-EXEC.注意在COBOL语法中的SEX OF DCLEMPLOYEE在SQL中变成DCLEMPLOYEE.SEX,COBOL+CICS+DB2样本程序,详见TESTMENU,COBOL与IMS,IMS是大型机上的层次数据库,已经出现大约45年;IMS是要求高性能、高可用性、高可靠性和高可管理性的公司的应用程序的首选;全球很多行业的商业运行都依赖于IMS,1000家最大公司的90%都使用IMS;IMS支持Java、PL/1、C/C+等多种应用开发语言,对COBOL的支持更是历史悠久。,数据操作语言(DML),DML提供宿主编程语言(比如COBOL)和数据库间的接口。,宿主编程语言,database,数据语言DL/I,DL/I是IMS使用的DML,它不是独立的语言,而是一组过程性代码和数值;COBOL可以作为DL/I的宿主编程语言,通过普通子程序调用的方式调用DL/I;数据库对于COBOL来说是个黑盒子,不能直接访问,COBOL用DL/I提供的API访问数据库;,COBOL,DL/I,IMS database,Entry语句,COBOL程序中的第一条语句是ENTRY语句,说明本COBOL程序使用的PCB掩模,从而建立与相应数据库的连接。PROCEDURE DIVISl0NA000-MAIN-PROCESSENTRY DLITCBL USING EMPLOYEE-DB-PCB-MASKDLITCBL是“DL/I to COBOL”的缩写。,COBOL中调用DL/I函数,CALLCBLTDBI USINGDL/I-functionPCB-maskSEGMENT-IO-AREASEGMENT-SEARCH-ARGUMA74TS.CBLTDL表示“COBOL to DL/I”。,下述内容将在IMS相关课程中介绍,IMS数据库的结构和存取原理PCB掩模(PCB-mask)DL/I函数(DL/I-function)SEGMENT-IO-AREA(段记录布局)SSA(段查找变元),样本IMS程序,详见EMPLOYEE。,

    注意事项

    本文(COBOL主机应用开发架构基础.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开