COBOL+CICS文件操作
- 格式:doc
- 大小:32.50 KB
- 文档页数:5
CICS常用命令列表cicscp说明:CICS 控制程序,可用于创建、删除、启动、停止DCE,SFS服务器,CICS Region和PPC gatewayeneral cicscp usage:cicscp [-?|([<common_options>] [<command> <noun_phrase><specific_options>])]where common options are:-I - ignore errors-l logfile - log progress messages to file-v - produce more verbose outputSpecific commands are:version:versioncreate COBOL:create coboldestroy COBOL:destroy cobolcreate SNA:create sna -d <Control Point Name>-w <Local Network Name>-x <XID Node ID>-y <Link Station Type>[-q <Link Station Name>][-s <Link Station Address>][-b <Local Secondary Station Address>]destroy SNA:destroy sna [-f]start SNA:start sna [-f]stop SNA:stop sna [-f]create telnet server:create telnet_server <server> [-P <port>][-c <client codeset>][-e <emulation>][-h <host list>][-l <locale>][-m <model>][-n <netname>][-r <region>][-s <server codeset>][-t <transaction>]destroy telnet server:destroy telnet_server <server> [-f]create SFS server:create sfs_server <server> [-m <model>][attribute overrides for SSD stanza]destroy SFS server:destroy sfs_server <server> [-f]start SFS server:start sfs_server <server> [attribute overrides for SSD stanza] stop SFS server:stop sfs_server <server> [-f]status SFS server:status sfs_server <server>stop sfs_server allcreate PPC gateway server:create ppcgwy_server <server> [-m <model>][attribute overrides for GSD stanza]destroy PPC gateway server:destroy ppcgwy_server <server> [-f]start PPC gateway server:start ppcgwy_server <server> [attribute overrides for GSD stanza]stop PPC gateway server:stop ppcgwy_server <server> [-f]status PPC gateway server:status ppcgwy_server <server>status ppcgwy_server allcreate SNA link:create sna_link [<Link Station Name>]-y <Link Station Type>[-s <Link Station Address>][-b <Local Secondary Station Address>]destroy SNA link:destroy sna_link <Link Station Name> -y <Link Station Type> create region (SFS):create region <region> [-g <group-id>][-i <infile>][-l <c|m|o|r>][-d]create region (DB2):create region <region> [-g <group-id>][-i <infile>][-l <c|m|o|r>][-a <alias> -o <instance>[-u <user[,passwd]>] [-n|-s]]create region (ORACLE):create region <region> -o ORACLE[-g <group-id>][-i <infile>][-l <c|m|o|r>][-u <user[/passwd]>] [-n|-s]destroy region (SFS):destroy region <region> [-f] [-s]destroy region (DB2):destroy region <region> [-f] [-s [-u <user[,passwd]>]] destroy region (ORACLE):destroy region <region> [-f] [-s [-u <user[/passwd]>]]start region:start region <region> [-d <distributed servers>][attribute overrides for RD stanza]stop region:stop region <region> [(-c | -f)]status region:status region <region>status region alldestroy all:destroy all [-f]start all:start allstop all:stop allstatus all:status all使用举例:5.1版本以前:创建DCEcicscp –v create dce -R删除DCE:cicscp -v destroy dce创建Region:cicscp -v create region CICSRGN1启动SFS 服务器:cicscp -v start sfs_server /.:/cics/sfs/SFS_SERVcicsadd说明:添加CICS资源定义Usage: cicsadd {-?|-c className [-r regionName] [-P|-B] [-f fileName] [-m modelId] resourceName[[attributeName=attributeValue]...]}使用举例:以下命令在CICSRGN1中增加一个通讯定义。
COBOL简易教程主要内容1.COBOL语言的基本概念及程序的结构•一个例子●COBOL程序的结构●COBOL源程序的书写格式2.COBOL数据表示•常量•层次的概念•PICTURE语句•数据在内存中的各种形式3.算术运算●变量赋值 (MOVE, MOVE CORR)●算术运算(ADD, SUB, MUL, DIV, COMPUTE等)●内部函数4.字符串处理●合并、分离、取子串、替换等5.程序逻辑控制•条件的分类•IF、EVALUATE●PERFORM6.表处理定义、赋值、引用、查询7.读、写多格式记录文件8.常用语句小结9.子程序1.关于COBOL的初步知识◆COBOL是Common Business Oriented Language (通用商业语言,或称管理语言)的缩写◆最适用于数据处理◆比较接近于自然语言(英语)◆COBOL的结构严谨,层次性强◆COBOL的缺点是比较烦琐。
1.1 一个例子:***************************************************************** * * COBOL TRAINING PROGRAM * * VERSION 2.1.0 COPYRIGHT (C) 2004 * * WISTRON DALIAN SOFTWARE CO., LTD. * * ALL RIGHTS RESERVED. * * * **************************************************************** IDENTIFICATION DIVISION.PROGRAM-ID. EXERCIS6.AUTHOR. QXLU (WISTRON DALIAN).DATE-WRITTEN. 04-06-23.DATE-COMPILED. 04-06-23.*----------------------------------------------------------------* * COMMENT : * * * *----------------------------------------------------------------* ENVIRONMENT DIVISION.CONFIGURATION SECTION.SOURCE-COMPUTER. IBM-3084.OBJECT-COMPUTER. IBM-3084.INPUT-OUTPUT SECTION.FILE-CONTROL.SELECT DDI01 ASSIGN TO "DDI01".SELECT DDO01 ASSIGN TO "DDO01".*DATA DIVISION.FILE SECTION.*FD DDI01 LABEL RECORD IS STANDARD DATA RECORD AREIN-AREA0, IN-AREA1.01 IN-AREA0.05 IN-YEAR-NUM PIC 9(2).05 IN-PRINCIPAL PIC 9(4)V99.05 FILLER PIC X(07).05 RMARK PIC X(01) VALUE X"0A".01 IN-AREA1.05 IN-INTEREST-RATE OCCURS 5 TIMES PIC V999.05 RMARK PIC X(01) VALUE X"0A".FD DDO01 BLOCK 0 RECORDS LABEL RECORD STANDARD RECORDING F.01 PRT-REC.05 FILLER PIC X(79).**===============================================================* WORKING-STORAGE SECTION.01 IN-FILE-DATA.05 YEAR-NUM PIC 9(2).05 PRINCIPAL PIC 9(4)V99.05 INTEREST-RATE-TABLE.15 INTEREST-RATE OCCURS 5 TIMES PIC V999.*01 HEADER0 PIC X(79) VALUE' TABLE OF SIMPLE INTEREST'.01 HEADER1 PIC X(79) VALUE' ************************************'.01 HEADER2 PIC X(79) VALUE' PRINCIPAL 4,000.00 FOR 10 PERIODS'.01 HEADER3 PIC X(79) VALUE SPACE.01 HEADER4 PIC X(79) VALUE' PERIOD INTEREST RATE'.01 HEADER5.05 OUT-I-R OCCURS 5 TIMES PIC BBBBBBBBB.999.01 DETAIL0.05 OUT-PERIOD PIC ZZZ.05 OUT-P-I-S-ITEM OCCURS 5 TIMES.10 FOURSPACES PIC X(04) VALUE SPACE.10 OUT-P-I-SUM PIC 9,999.99.01 CNT-YEAR-NUM PIC 9(2).01 I-R-INDEX PIC 9.01 P-I-SUM PIC 9(6)V99.****************************************************************** * P R O C E D U R E D I V I S I O N * ***************************************************************** PROCEDURE DIVISION.*INPUT-DATA SECTION.OPEN INPUT DDI01.OPEN OUTPUT DDO01.READ DDI01.MOVE IN-YEAR-NUM TO YEAR-NUM.MOVE IN-PRINCIPAL TO PRINCIPAL.READ DDI01.MOVE IN-AREA1 TO INTEREST-RATE-TABLE.*PROCESS-OUTPUT-DATA SECTION.*PRINT HEADERWRITE PRT-REC FROM HEADER0 BEFORE 1.WRITE PRT-REC FROM HEADER1 BEFORE 1.WRITE PRT-REC FROM HEADER2 BEFORE 1.WRITE PRT-REC FROM HEADER3 BEFORE 1.WRITE PRT-REC FROM HEADER4 BEFORE 1.* PRINT INTEREST RATEPERFORM TEST BEFORE VARYING I-R-INDEXFROM 1 BY 1 UNTIL I-R-INDEX > 5MOVE INTEREST-RATE( I-R-INDEX ) TO OUT-I-R( I-R-INDEX )END-PERFORM.WRITE PRT-REC FROM HEADER5 BEFORE 1.*PROCESS & PRINT DETAILSPERFORM PRINT-DETAILVARYING CNT-YEAR-NUM FROM 1 BY 1UNTIL CNT-YEAR-NUM > YEAR-NUM.*CLOSE-FILES SECTION.CLOSE DDI01.CLOSE DDO01.*STOP RUN.**---------------------------------------------------------------** PRINT-DETAIL **---------------------------------------------------------------*PRINT-DETAIL SECTION.*MOVE CNT-YEAR-NUM TO OUT-PERIOD.PERFORM PROCESS-DETAILVARYING I-R-INDEX FROM 1 BY 1 UNTIL I-R-INDEX > 5.WRITE PRT-REC FROM DETAIL0 BEFORE 1.*PRINT-DETAIL-RTN.EXIT.**---------------------------------------------------------------** PROCESS-DETAIL **---------------------------------------------------------------*PROCESS-DETAIL SECTION.*COMPUTE P-I-SUM = PRINCIPAL *( INTEREST-RATE( I-R-INDEX ) * CNT-YEAR-NUM + 1 ).MOVE P-I-SUM TO OUT-P-I-SUM( I-R-INDEX ).*PROCESS-DETAIL-RTN.EXIT.** *** END OF CODING EXERCIS6 ***1.2 COBOL 程序的结构(1/p4)部(Division) 一部可包括若干节节(Section) 一节可包含若干段段(Paragraph) 一段可包含若干句子句子(Sentence) 一个句子可包含若干语句语句(Statement) 制定计算机完成一定的操作子句(Clause) 制定完成某一方面的功能每个程序应包含四个部IDENTIFICATION DIVISION (标识部)主要用来指定源程序名字,也可以写入其他用作备忘的某些信息(如日期、作者等)。
第1章 COBOL简介COBOL是Common Business Oriented Language的缩写,即公用面向商业语言的意思。
在系统地学习COBOL程序设计语言之前,有必要首先对COBOL有一个大致的了解。
本章将分别从背景知识、语法格式、以及实际创建COBOL程序3个方面对其进行简要介绍。
1.1 背景知识在介绍COBOL之前,首先需要了解一下大型机的概念。
大型机也叫主机、大机、mainframe等,属于一种商用高端服务器。
目前大型机主要由IBM公司所生产,最新型号为z系列大型机。
COBOL便是用于大型机上应用软件开发的最主要的程序设计语言。
大型机上的工作大体上可以分为两类,分别为系统方向和开发方向。
系统方向的分工很多,包括使用Tivoli监控系统;使用RACF进行安全管理;使用SMS进行存储管理等等。
开发方向的市场需求相对系统方向则要大得多。
对于开发方向,主要需要掌握以下知识。
❑COBOL:最主要的程序设计语言。
❑JCL:作业控制语言,调用由COBOL编写的程序。
❑VSAM:程序中通常用到的文件类型。
❑DB2:大型机上最主要的数据库,通常以COBOL语言为宿主语言。
❑CICS:用于联机交易的中间件,通常也是以COBOL语言为宿主语言。
对于以上知识,在本书中都有详细介绍。
此外,对于大型机底层的开发,还需要掌握大型机上的汇编语言。
对于大型机汇编语言,在本书中也有具体讲解。
COBOL作为大型机上最主要的程序设计语言,迄今已有40多年的历史。
然而,经过40多年的沧桑,COBOL不仅没有被淘汰,反而在当今愈加流行起来。
关于这一点,主要应该是由以下3个因素所决定的。
❑COBOL广泛应用于广泛应用于银行业、信用卡业、保险业、制造业、航空业等等。
这些领域对于稳定性的要求都是十分高的,因此从很大程度上也保证了COBOL的不可取代性。
❑COBOL自身也在不断发展和更新中。
例如,COBOL本身主要属于面向过程的语言。
了解COBOL语言的字符串操作模式COBOL语言中常用的字符串操作模式是什么?什么是COBOL语言的字符串操作?COBOL(cobol)语言的程序对输入的数据进行某种编辑处理,然后将结果输出到屏幕或文件中,这是处理的基础。
这次介绍的字符串操作经常被用作编辑处理。
在这里,我们将首先介绍如何编写COBOL语言字符串操作的基本字符串的一部分并将其显示在屏幕上的过程,因此让我们了解如何编写和使用它。
如何写:数据项(起始字符位置:[长度])使用例:使用示例是从WK-MOJI这一数据项的第1位中取出3个字符,并在屏幕上显示结果的程序。
如本示例所示,如果您使用提取某个字符串的一部分的过程,例如,如果字符串由代码值和名称组成,您将能够仅提取代码值并将其用于下一个过程。
実行结果:COBOL(cobol)语言中的一种字符串操作模式既然您已经了解了如何编写COBOL语言的基本字符串操作,接下来我们将介绍字符串操作的模式。
COBOL语言的字符串操作主要分为四种模式: 1.字符串初始化,2.字符串分割,3.字符串连接,4.使用集体项目进行字符串操作。
让我们按顺序来看看它的写法和使用方法。
怎么写1:初始化字符串INITIALIZE数据项使用例1:使用示例是初始化“123456”的初始值设定的WK-MOJI的数据项的值,并在屏幕上显示结果的程序。
在使用数据项进行编辑处理时,为了防止程序发生故障,通常也会像本使用例那样明确地初始化数据项。
実行结果1:如何编写2:分割字符串利用前面介绍的“字符串的一部分和检索处理”使用例2:使用示例是这样的程序:从WK-MOJI这一数据项的第1位中取出3个字符,从第4位中取出3个字符,并在屏幕上显示结果。
在COBOL(cobol)语言中,可以很容易地实现这样一个数据项的分割和使用。
実行结果2:如何编写3:连接字符串STRING数据项1、数据项2・・DELIMITED BY SIZEINTO数据项3[WITH POINT ER起始字符位置][结束字符串]使用例3:使用示例是将WK-MOJI 1、WK-MOJI 2这些字符串连接起来,存储在WK-MOJI中,然后在屏幕上显示结果的程序。
COBOL 概述COBOL 是Common Business Oriented Language 的缩写。
它不仅是商业数据处理的理想语言,而且广泛用于数据管理领域,因此COBOL 语言也被称为“用于管理的语言”。
一。
COBOL 语言的特点最适于数据处理领域:算数计算量少而逻辑处理量多,输入输出量大,数据间存在着一定的逻辑关系,大量的分类排序;COBOL比较接近英语,容易懂;通用性强,易移植, COBOL结构严谨,层次分明。
二。
COBOL的组成部分:1。
标识部(IDENTIFICATION DIVISION):用于标识程序名。
2。
环境部(ENVIRONMENT DIVISION):用于说明程序运行的环境。
3。
数据部(DATA DIVISION):用于说明程序中涉及的所有数据。
4。
过程部(PROCEDURE DIVISION):是程序的核心部分,它决定计算机应进行什么操作。
三。
最简单的COBOL 程序举例:COL 1 ---6 7 8 12---72 73---80IDENTIFICATION DIVISION。
PROGRAM-ID。
PSAMPLE1。
ENVIRONMENT DIVISION。
DATA DIVISION。
PROCEURE DIVISION。
DISPLAY …THIS IS A COBOL PROGRAM.‟STOP RUN。
四。
COBOL 源程序的书写格式:第1 至6 列为“标号区”。
第7列为“续行标志区”第8至此11列,称为“A区”。
程序中有些内容如部头,节头,段头,层号01,层号77 及文件描述符FD等应从A区开始写。
第12至此72列,称为“B区”。
写程序中的正文部分。
如过程部中的句子只能从B区开始写。
第73至80列,称为“注释区”。
五。
COBOL字符集包括:数字0 --- 9 ,字母A--- Z ,a --- z , 专用字符:+ - * / = , . ; … ( ) < > $ 及空格。
JCL:1 简单描述一下DISP的使用,它有哪些参数DISP 参数用来告诉系统要使用的数据集的状态是什么并且告诉系统当本作业步执行完毕后如何处理这个数据集。
你可以为作业步正常结束和非正常结束时分别指定不同的处理方法。
DISP= ( [NEW] [,DELETE ] [,DELETE ] )为空时也表示这个。
[OLD] [,KEEP ] [,KEEP ][SHR] [,PASS ] [,CATLG ][MOD] [,CATLG ] [,UNCATLG][, ] [,UNCATLG]2 什么是PROCEDURE,有哪几种PROCEDURE,简述区别有2中PROCEDURE,一种是CATALOG的PROCEDURE,是把过程的JCL语句写在一个编目的数据集里,该数据集必须是PDS 或PDSE 里的一个成员,能够同时被多个JCL 调用。
另一种是INSTREAM 的PROCEDURE,流内PROCEDURE,写在一个JCL里面,以PROC开头,以PEND字句结束。
3.什么是GDG数据集,GDG数据集的每一代数据集是否可以是不同类型的定义GDG数据集有3个重要的参数: LIMIT NOEMPTY SCRATCH 各表示什么含义定义GDG BASE之后要必须定义什么答:GDG数据集是一组名字相似,时间和功能相关的数据集。
GDG数据集是MVS中的世代数据集,通过IDCAMS来创建。
GDG 数据集的每一代可以是不同类型的。
3个重要的参数 LIMIT表示这个世代数据集最多可以有多少代; NOEMPTY表示不清空, SCRATCH表示最老的一代是被删除掉的。
定义GDG BASE之后必须定义GDG DSCB才能生效。
4. COND参数是什么意思如果我需要作业步3,只在作业步2返回码是0或者4的时候才执行,如何写COND参数答: COND参数是CONDITION参数,表示什么情况下作业步被执行/不被执行。
COND=(4,LT,STEP2)与IEBGENER有什么区别IEFBR14是起什么作用的IEBCOPY:对分区数据集进行拷贝、压缩或合并IEBGENER:拷贝顺序数据集,或将顺序数据集转为分区数据集IEFBR14实际是一个空程序,什么也不做,只是返回返回码0,但是使用它可以进行JCL 语言的各种处理,如DD 语句中创建数据集等。
CICS 課程(三)CICS命令及編程講師:周勇Jarod.zhou@四方精創有限公司2006年03月20日CICS 高级语句介绍Transaction (事务)处理CICS 基础语句介绍CICS 相關知識CICS 程序编译、安装CICS 程序访问对象課程目錄貳陸用户在终端输入Trans ID:INQY,对应事务程序为PROG11.确定事务的ID是否在CICS区域定义,没有发出错误信息2.任务管理请求存储并创建表示任务的控制块(TCA= Task Control Area)3.如受安全保护,CICS验证用户的使用权限4.在程序定义表中找到对应的事务程序PROG1的定义信息5.如果PROG1不在内存,程序管理就申请内存将其从程序库装入内存6.CICS复制该程序的工作存储区到与该任务相关的另一存储区。
允许PROG1的单独程序副本被多任务共享7.EIP(EXEC Interface Program)接受程序请求返回异常条件和其他EIB(EXEC Interface Block)信息8.如果PROG1发出EXEC CICS READ 命令来读文件,则文件管理对VSAM发出读记录的请求9.PROG1利用BMS(Basic Map Surpport)来发出已格式化的数据到终端10.VSAM数据集的改变会被系统建立日志以便失败时恢复11.任务结束时,控制返回CICS。
所有与该任务相关的存储被释放,但程序保留在内存,直到无任何任务是用它和该空间要被使用为止1.开发语言•COBOL•Assemble•PL/1•C & C++程序处理逻辑用主语言编写,部分功能用CICS命令来完成2.命令格式EXEC CICS SEND FROM (MSG-AREA) LENGTH (5) END-EXEC.关键字功能选项参数选项参数分隔符EXEC SQL SELECT COLUMN_NAMES INTO:Program_variables FROM Table_name Where Search_condition END-EXEC.3.BMS(Basic Map Support) (BOCHK不使用,只做简单介绍)从终端用户界面发送和接收数据方法:•终端控制(未格式化数据)•BMS(格式化数据流)•图形用户界面MAP用于定义信息如何在终端上显示。
COBOL字符串的操作(―)字符串的合并string一、string语句的基本用法datadivisionworking-storagesection.01first-namepicx(10).01last-namepicx(10).01full-namepicx(20).proceduredivision.move'adam'tofirst-name.move'smith'tolast-name.stringfirst-namedelmitedbyspace''delimitedbysizelast-namedelimitedbyspaceintofull-name.display'firstname:',first-name.display'lastname:',last-name.display'fullname:',full-name.stoprun.输入结果:firstname:adamlastname:smithfullname:adamsmith以上为string语句的基本格式。
其中每项用于合并的字符串后面都要加上delimitedby语句。
delimitedby子句后面有两个选项,分别为space和size。
space:找出前面用作分拆的字符串中第一个发生空格的地方。
将该空格以前的部分展开分拆,空格以后的内容包含该空格在内不参予分拆操作方式。
size:将前面对应的用于合并的字符串中的全部内容进行合并。
另外by后可以接一个变量名称,并且将该变量中保存的字符作为原字符串的截取符。
截取符的用法同space选项类似。
(三)字符串的替代inspect语句inspect语句主要用于对字符串中的指定部分进行替换。
字符串的替换和转换是不同的。
字符串替换是将原字符串中的部分字符替换成其他字符。
转换时保持原字符串的字符不变,只对其格式进行转换。
COBOL+CICS子程序子程序操作1.非CICS平台:静态和动态用于传递的参数必须在01或者77层。
主调用程序通常在工作单元节(除非也被其他调用在连接节),被调用程序参数要定义在连接节中。
参数在主调用程序中分配内存,通常只要求内存空间大小一致,其他不做要求。
参数引用的顺序必须和主程序定义的参数与其顺序和位置一致。
CALL调用和ENTER选择入口地址两种方式。
静态:在调用之前就已经加载,和主程序在同一加载模块,费内存,效率高。
通常情况下都是引用上一次调用后的状态。
除非单独对参数再次初始化。
一个程序改变,所有程序都要进行改动。
如:DA TA DIVISION. --------主程序WORKING-STORAGE SECTION.77 TEST-NUM PIC 99.*PROCEDURE DIVISION.PERFORM INIT-TEST-NUM.CALL 'STATIC-SUB' USING TEST-NUM.DISPLAY TEST-NUM. ---第一次调用25PERFORM INIT-TEST-NUM.CALL 'STATIC-ENTRY' USING TEST-NUM.--对应于子程序的ENTER调用DISPLAY TEST-NUM. ---第二次调用35(子程序数值在内存中没有被释放)PERFORM INIT-TEST-NUM.CALL 'STATIC-SUB' USING TEST-NUM.DISPLAY TEST-NUM. ---第三次调用25(子程序数据已被初始化)STOP RUN.INIT-TEST-NUM.MOVE 10 TO TEST-NUM.DATA DIVISION. --------子程序WORKING-STORAGE SECTION.01 PLUS-NUM PIC 99 V ALUE 15.LINKAGE SECTION.77 MAIN-NUM PIC 99. ---被调用程序参数要定义在连接节中。
Cobol Copybook Converter User’s GuideRelease 5.0.5 for Schema Run-time Environment (SRE)The information contained in this document is subject to change and is updated periodically to reflect changes to the applicable software. Although every effort has been made to ensure the accuracy of this document, SeeBeyond Technology Corporation (SeeBeyond) assumes no responsibility for any errors that may appear herein. The software described in this document is furnished under a License Agreement and may be used or copied only in accordance with the terms of such License Agreement. Printing, copying, or reproducing this document in any fashion is prohibited except in accordance with the License Agreement. The contents of this document are designated as being confidential and proprietary; are considered to be trade secrets of SeeBeyond; and may be used only in accordance with the License Agreement, as protected and enforceable by law. SeeBeyond assumes no responsibility for the use or reliability of its software on platforms that are not supported by SeeBeyond.SeeBeyond, e*Gate, e*Way, and e*Xchange are the registered trademarks of SeeBeyond Technology Corporation in the United States and/or select foreign countries. The SeeBeyond logo, SeeBeyond Integrated Composite Application Network Suite, eGate, eWay, eInsight, eVision, eXchange, eView, eIndex, eTL, ePortal, eBAM, and e*Insight are trademarks of SeeBeyond Technology Corporation. The absence of a trademark from this list does not constitute a waiver of SeeBeyond Technology Corporation's intellectual property rights concerning that trademark. This document may contain references to other company, brand, and product names. These company, brand, and product names are used herein for identification purposes only and may be the trademarks of their respective owners.© 2005 SeeBeyond Technology Corporation. All Rights Reserved. This work is protected as an unpublished work under the copyright laws.This work is confidential and proprietary information of SeeBeyond and must be maintained in strict confidence.Version 20050406085052.ContentsContentsChapter 1Introduction4 Overview4 Intended Reader4 Supported Operating Systems4 System Requirements4 External System Requirements5Chapter 2Installation6 Windows Windows 20006 Pre-installation6 Installation Procedure6 Files/directories Created by Installation7Chapter 3Implementation8 Basic Properties8 Unsupported Features8Using the ETD in Java Collaborations8 Basic Procedures9 Cobol Copy Converter Example11 Sample Cobol Specification File Example12 Sample ETD (*.ssc) File After Cobol Copybook Conversion12 Index13Chapter 1 IntroductionThis chapter introduces you to the Cobol Copybook Converter User’s Guide.1.1OverviewThe Cobol Copybook Converter is a feature of the SeeBeyond TechnologyCorporation™ (SeeBeyond™) e*Gate Integrator system and is used to convert CobolCopybook files into e*Gate Event Type Definition (ETD) files.1.2Intended ReaderThe reader of this guide is presumed to be a developer or system administrator withresponsibility for maintaining the e*Gate system, to have expert-level knowledge ofWindows2000 operations and administration, and to be thoroughly familiar withWindows-style GUI operations.1.3Supported Operating SystemsThe Cobol Copybook Converter is available on the following operating systems:Windows2000, Windows XP, and Windows Server 2003Japanese Windows2000, Windows XP, and Windows Server 2003Korean Windows2000, Windows XP, and Windows Server 20031.4System RequirementsTo use the Cobol Copybook Converter, you need the following:An e*Gate Participating Host.A TCP/IP network connection.Chapter 1Section 1.4 Introduction System Requirements10 MB free disk space for executable, configuration, library, and script files.1.4.1External System RequirementsThe Cobol Copybook Converter supports the following external systems:ICL CopybooksChapter 2 InstallationThis chapter explains how to install the Cobol Copybook Converter.2.1Windows Windows 20002.1.1Pre-installationExit all Windows programs before running the setup program, including anyanti-virus applications.You must have Administrator privileges to install this product.2.1.2Installation ProcedureTo install the Cobol Copybook Converter on Windows NT or Windows 2000: 1Log in on the workstation on which you want to install the Cobol Copybook Converter.2Insert the installation CD-ROM into the CD-ROM drive.3If the CD-ROM drive’s “Autorun” feature is enabled, the setup application should launch automatically. Otherwise, use Windows Explorer or the Control Panel’sAdd/Remove Applications feature to launch the file setup.exe on the CD-ROMdrive.4The InstallShield setup application will launch. Follow the on-screen instructions until you come to the Select Components screen.5Check the box labelled Add-ons. Then, follow the on-screen instructions to install the product.Note: Be sure to install all of the files in the suggested “client” installation directory. The installation utility detects and suggests the appropriate installation directory.Unless you are directed to do so by SeeBeyond support personnel, do notchange the suggested “installation directory” setting.Chapter 2Section 2.2 Installation Files/directories Created by Installation2.2Files/directories Created by InstallationThe Cobol Copybook Converter installation process installs the files shown in Table 1below within the e*Gate directory tree. Files are installed within the egate\client treeon the Participating Host and committed to the default schema on the Registry Host.Table 1 Files Created by Installatione*Gate Directory File(s)\bin stccococo.exeChapter 3 ImplementationThe Cobol Copybook Converter is a build tool that takes a Cobol copybookspecification file as input and creates an Event Type Definition (ETD) file, that is, an*.ssc file.3.1Basic PropertiesThe Cobol Copybook Converter has the following basic properties:You may run this command via the ETD Editor or from the command line.The system presents the copybook specification to the Cobol Copybook Converterin a flat file. The converter feature uses the 01segment of the Cobol copybook as theroot node of the ETD.For example, if you are using a CICS e*Way, after you have generated an ETD file, thee*Gate system can populate the file and present it into the COMM AREA for CICS calls.Similarly, the system can parse the output COMM AREA from CICS into ETDs created by the Cobol Copybook Converter feature.Note: The Cobol Copybook Converter must have valid Cobol syntax to complete anaccurate conversion.Unsupported FeaturesThe following Cobol Copybook features are not supported by the Cobol CopybookConverter:Cobol Copy Statements – Cobol copy statements that are imbedded within theCobol Copybook are not supported.Usage Pointer – Usage pointer statements are not supported. To accommodatethese elements, you must change the statement to PIC X(4). The Cobol CopybookConverter will interpret this and create a node of the correct length with thesubsequent nodes as siblings instead of child nodes.Using the ETD in Java CollaborationsThe ETDs generated by the Cobol Copybook Converter are intended to be used withCollaboration Rules Scripts created by the Monk Collaboration Rules Editor. However,these ETD files (.ssc) can be converted into Java Event Type Definitions (.xsc) by usingthe Java ETD Editor’s SSC Wizard. For information on using the SSC Wizard, see thee*Gate Integrator User’s Guide.3.2Basic ProceduresYou may access the Cobol Copybook Converter feature via the ETD Editor. Use theprocedure below to create an ETD based on the data your installation requires.Note: The GUI version of the Cobol Copybook Converter is not available under the Korean versions of Windows NT and Windows2000. For information on the command-lineversion of the Cobol Copybook Converter, see page11.To create ETD files using the ETD Editor:1On the ETD Editor window’s Toolbar, click Build.The first Build an Event Type Definition dialog box appears (see below).2In the File name box, type the name of the ETD file you wish to build. Do not specify any file extension. The Editor supplies the *.ssc extension for you.3Under Files of type, leave Event Type Definition selected.4Click Next.The second Build an Event Type Definition dialog box appears (see below).5Enter the Input file name and path—use the browse button to find the correct path. 6Under Build From, select Library Converter.7Under Select a Library Converter, select Cobol Copy Book Converter.8Click Finish.The dialog box closes, and the new ETD appears in the Workspace pane of the ETD Editor window. The conversion process is automatic.9Click Save to save the new ETD.To create ETD files using the command line:To run the Cobol Copybook Converter from the command line, as a batch utility, enter:stccococo [-I] [-d] [-nls] -i <copybook_file> <etd>.sscThe following table explains these command options:Command Type Description-I String An optional parameter that indicates ICL datatypes.-d String An optional parameter that indicates DBCS inputdata mode.-nls String Allows the conversion of Cobol files written inJapanese; currently the only string supported isSJIS (Japanese character set). Use of any other (orno) parameter defaults to English/ASCII.-i String Indicates the input file and path name as well asthe output ETD path and file name. This parameteris required.copybook_file Path The relative path of the file to be used as the input(required).etd String The name of the ETD file you wish to create(required).Note: If you enter stccococo -h at the command line, seeking help, you get the following message:USAGE: stccococo [-I] [-d] [-c control [-s section]] [-nls <Character Set>] -icopybook_file <etd>.ssc-I indicates ICL data origin-d indicates DBCS modeIgnore references to the -c and -s switches. They are for future use only and do notoperate in the current system.3.2.1Cobol Copy Converter ExampleThe following page shows before and after examples of a Cobol copybook specification file (which was the input) and the ETD (*.ssc) file after the conversion.Sample Cobol Specification File Example000700 01 output-message-area. 00070000 000800 05 om-ll pic s9(3) comp value +160. 00080000 000900 05 om-z1-z2 pic s9(3) comp value zero. 00090000 001000 05 om-invoice-no pic x(6). 00100000 001100 05 om-invoice-date pic 99/99/99. 00110000 001200 05 om-prod-total pic z(5).99-. 00120000 001300 05 om-cash-disc pic z(5).99-. 00130000 001400 05 om-sales-tax pic z(5).99-. 00140000 001500 05 om-freight pic z(5).99-. 00150000 001600 05 om-billing pic z(5).99-. 00160000 001700 05 om-pmts-adjs pic z(5).99-. 00170000 001800 05 om-balance pic z(5).99-. 00180000 001900 05 om-error-line pic x(79). 00190000Sample ETD (*.ssc) File After Cobol Copybook ConversionIndexIndexBbuilding an ETDcommand line operations 11GUI operations 9CCICS 8COMM AREA 8Cobol Copy Converter example 11 Cobol Copy statements 8Cobol Copybook Converter overview 4 COMM AREA 8Ffiles and directories 7IICL Copybooks 5implementation 8installation 6Windows 2000 6Windows NT 6intended reader 4Ooperating systems 4international 4overview, Cobol Copybook Converter 4PPIC X(4) 8platform support 4Rrequirements 4SstatementsCobol Copy 8usage pointer 8 stccococo.exe 7, 11 system requirements 4external system 5Uunsupported features 8 usage pointer statements 8 WWindows 2000 4, 6 Windows NT 4, 6。
COBOL+CICS文件操作1.输入输出数据非CICS:ACCEPT数据来源:终端输入和系统接收。
一般系统接收数据为日期或者时间。
DA TE--YYMMDD.DAY---YYDDD.DAY-OF-WEEK--- PIC 9. 范围1-7.TIME---HHMMSSHH,最后HH表示hundredths from midnigth.如:DA TA DIVISION.WORKING-STORAGE SECTION.01 INPUT-DATE.05 INPUT-YEAR PIC 99.05 INPUT-MONTH PIC 99.05 INPUT-DAY PIC 99.*PROCEDURE DIVISION....ACCEPT TEST-DA TE.DISPLAY TEST-DATE. ---终端输入的数据ACCEPT TEST-DA TE FROM DA TE. --系统产生的数据DISPLAY TEST-DATE. --输出CICS下:如:DA TA DIVISION.WORKING-STORAGE SECTION.01 INFLDS.05 INLEN PIC 9(4) COMP.01 INPUT-NAME.05 INPUT-FIRST PIC X(10).05 INPUT-MIDDLE PIC X(10).05 INPUT-LAST PIC X(10).*PROCEDURE DIVISION....MOVE 15 TO INLEN.EXEC CICS RECEIVE INTO(INPUT-NAME)LENGTH(INLEN) --所接收的最大长度,小于为实际,大于为异常END-EXEC.EXEC CICS SEND FROM(INPUT-NAME)LENGTH(20) --为实际长度,并非变量。
输出位置为当前光标位置END-EXEC....GOBACK.2.文件操作普通文件非CICS:如:ENVIRONMENT DIVISION.INPUT-OUTPUT SECTION.FILE-CONTROLSELECT CUSTOMER-FILE ASSIGN TO S-SYSIN. --定义对应到COBOL文件名SELECT PRINT-FILE ASSIGN TO S-SYSOUT.*DATA DIVISION.FILE SECTION.FD CUSTOMER-FILE --定义FD记录RECORD MODE IS F.01 CUSTOMER-RECORD.05 CUST-NO PIC 9(5).05 CUST-NAME PIC X(10).FD PRINT-FILE.RECORD MODE IS F.LABEL RECORDS ARE OMITTEDRECORD CONTAINS 132 CHARACTERSDATA RECORD IS PRINT-LINE. --定义数据记录在程序中的名称01 PRINT-LINE PIC X(132).WORKING-STORAGE SECTION.01 EOF-FLAG PIC X V ALUE 'N'.01 HEADING-LINE.05 FILLER PIC X(5) V ALUE SPACES.05 FILLER PIC X(15) V ALUE 'CUSTOMER NO'.05 FILLER PIC X(7) V ALUE SPACE.05 FILLER PIC X(15) V ALUE 'CUSTOMER NAME'.05 FILLER PIC X(90).01 OUTPUT-FILE.05 FILLER PIC X(10) V ALUE SPACES.05 PRT-NO PIC X(5).05 FILLER PIC X(15) V ALUE SPACES.05 PRT-NAME PIC X(10).05 FILLER PIC X(92).*PROCEDURE DIVISION.OPEN INPUT CUSTOMER-FILE ---OPEN语句可以指出该文件时输入还是输出文件。
OUTPUT PRINT-FILE.也可以直接读到其他地方。
READ CUSTOMER-FILE --READ后为文件名,而WRITE为记录。
AT END MOVE 'Y' TO EOF-FLAG --AT END-读到末尾所要采取的操作。
END-READ.MOVE HEADING-LINE TO PRINT-LINE.WRITE PRINT-LINE.PERFORM 100-PROCESS-RECORDSUNTIL EOF-FLG = 'Y'CLOSE CUSTOMER-FILEPRINT-FILE.STOP RUN.100-PROCESS-RECORDS.IF CUST-NO > 100MOVE CUST-NO TO PRT-NO.MOVE CUST-NAME TO PRT-NAME.WRITE PRINT-LINE FROM OUTPUT-LINEEND-IFREAD CUSTOMER-FILEAT END MOVE 'Y' TO EOF-FLAYEND-READ.VSAM文件非CICS:如:ENVIRONMENT DIVISION.INPUT-OUTPUT SECTION.FILE-CONTROL.* SELECT KS-FILE ASSIGN TO VKSDSSELECT OPTIONAL MACC ASSIGN TO KSDSFILEORGANIZATION INDEXED --逻辑结构,通常为顺序或索引ACCESS MODE DYNAMIC --访问方式,顺序,直接,动态(包括前面两个)RECORD KEY TEST-NO --文件中的KEYFILE STATUS TEST-STAT. --反应读取或写入的状态*DATA DIVISION.FILE SECTION.FD KS-FILE01LABEL RECORD IS STANDARD --指明该VSAM文件是否含有标号。
DATA RECORD IS TEST1. --定义该VSAM逻辑记录在程序中的名称。
01 TEST1.05 TEST1-NO PIC X(5).05 TEST1-NAME PIC X(10)....*PROCEDURE DIVISION.OPEN INPUT KS-FILE01,KS-FILE02 --只可以WRITEI-O RR-FILE --可以REWRITEOUTPUT ES-FILE.READ KS-FILE01 NEXT RECORDAT END GO TO 100-TEST-ENDEND-READ.READ KS-FILE01 KEY IS TEST-NOINV ALID KEY GO TO 200-TEST-END --指定INV ALID语句END-READ.WRITE KS01-RCD FROM TEST1.REWRITE RR-RCD FROM TESTX.DELETE KS-FILE01 RECORD INV ALID KEY ... --删除START KS-FILE KEY < TEST-NO --指针定位DISPLAY '....'CLOSE KS-FILE01,KS-FILE02,RR-FILE,ES-FILE.VSAM文件CICS中:不用手工定义和打开,有CICIS中FCT-文件控制表统一管理。
如:DATA DIVISION01 FILE-AREA.05 RECL PIC S9(4) COMP.05 RECKEY PIC X(6).01 REC-FIELD.05 F-CODE PIC X(10) V ALUE SPACES.05 F-NAME PIC X(20) V ALUE SPACES....读:READEXEC CICS READ FILE('TESTF') --文件名INTO(REC-FIELD) --记录名RIDFLD(RECKEY) --KEY名(KSDS-KEY,ESDS-RBA,RRDS-RRN)LENGTH(RECL) --文件中逻辑记录长度RESP(ERR-CODE) --返回码END-EXEC.写:一般用REWRITE,先UPDATE锁定,再REWRITE.EXEC CICS READ FILE('TESTF')UPDATE--先UPDA TE锁定RIDFLD(RECKEY)INTO(REC-FIELD)LENGTH(RECL)RESP(ERR-CODE)END-EXEC.EXEC CICS REWRITE FILE('TESTF') --不用指定KEY了,上面UPDATE已经锁定,KEY 也不能被更改FROM(REC-FIELD)LENGTH(RECL)RESP(ERR-CODE)END-EXEC/浏览:STARTBR, READNEXT ,ENDBR.EXEC CICS STARTBR FILE('TESTF')RIDFLD(RECKEY)RESP(ERR-CODE)END-EXECIF ERR-CODE EQUAL DFHRESP(NORMAL)PERFORM UNTIL ERR-CODE EQUAL DFHRESP(ENDFILE)EXEC CICS READNEXT FILE('TESTF')INTO(REC-FIELD)LENGTH(RECL)RIDFLD(RECKEY)RESP(ERR-CODE)END-EXEC....END-PERFORMEXEC CICS ENDBR FILE('TESTF')END-EXEC.ONLINE:VSAM不用在COBOL中打开或关闭,在CICS下处理。
实现多终端操作,不必等待资源。
BATCH: VSAM在COBOL中必须打开和关闭,每次只能一个作业对文件操作。
/u/2630100442。