第四章 高级编程.doc
上传人:qw****27 上传时间:2024-09-12 格式:DOC 页数:30 大小:163KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

第四章 高级编程.doc

第四章高级编程.doc

预览

免费试读已结束,剩余 20 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第四章高级编程4-第四章高级编程相对其它的软件产品,CICS可谓历史悠久,因此也就有非常丰富的内涵和开发手段。本章所讲解的所谓“高级编程”,不过是为了引导熟悉EasyCICS的程序员再深入地了解一些CICS而已。我听到很多用户抱怨说,MicrosoftWord提供了几千种功能,可一般人只用几十种就够了,为什么要付钱去那些不用的功能?其实,大多数成熟的软件产品都难以避免这样的尴尬问题。不过,有时,靠软件吃饭的使用者倒可以从反面考虑一下问题:我们如果花费一份时间和精力,学到了某产品10%的功能,而满足了自己80%的需求,往往我们要再花费十份时间和精力,才能学到该产品30%的功能,而最终结果是满足了自己85%的需求。这样的买卖未必总是划算的,对吗?当然,如果某种产品对您关系重大,还是要认真钻研一下。如果您是这样的读者,我要再强调本书仅仅能把您引进CICS的大门,并提供给您一些十分有效的手段。每种CICS产品都附带大量的联机文档,这些文档能为您深入学习CICS提供很多帮助。俗语道:师傅领进门,修行在个人。4.1CICS服务程序的相互调用4.1.1一个调用其它服务程序的例子如果您读完并理解了本章以前的所有内容,那您已经是非常不错的EasyCICS程序员了。您应该很熟悉CICS的客户程序如何调用CICS的服务程序,对了,调用CallProgramAndCommit函数。有人曾经问我CICS的客户程序是否可以调用CICS的客户程序,当然不行,因为如果仅仅是客户的话,是不能接受和应答任何请求的,请再复习一下Client/Server系统机构的概念。但与其它Client/Server系统类似,CICS的服务程序确实可以调用CICS的服务程序。我们来看一个简单的例子。有两个非常简单的服务:EC04和EC05。EC04基本上什么事都不做,只调用EC05,并根据EC05返回的信息设置返回值。而EC05把当前的日期和时间写到公共数据区里。以下是它们的代码:/*****************************************************************************//*--------------------------HEADERFILES-----------------------------------*/#include"easycics.h"/*****************************************************************************//*---------------------------GlobalVariables------------------------------*/charCa1[BUF_SIZE]="";/*****************************************************************************//*Functions*//*****************************************************************************//**/voidmain(){chars[100];if(InitEasyCics())ExitEasyCics();SetCurrentCA(Ca1);BeginWrite();CallProgram("EC05");GetValue("TIME5",s);SetCurrentCA(0);BeginWrite();SetValue("TIME5",s);ExitEasyCics();}清单4-1-1服务程序EC04/*****************************************************************************//*--------------------------HEADERFILES-----------------------------------*/#include<time.h>#include"easycics.h"/*****************************************************************************//*Functions*//*********************************************************************