首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关闭事务CICS

关闭事务CICS
EN

Stack Overflow用户
提问于 2019-01-24 13:57:58
回答 5查看 1K关注 0票数 4

我有一个简短的程序COBOL,它是一个基本的CRUD。在这个程序中,我有一个选项,当我按下F12,我想退出,关闭我的事务。

我想按F12并关闭事务。

我可以在我的COBOL程序中编写任何命令来完成这个任务吗?

谢谢

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2019-01-24 16:17:19

假设您有一个伪会话程序,每次调用它时,按下的键将在EIBAID中。

您所描述的场景在这里的知识中心( 5.5.0/applications/designing/dfhp31i.html )中有文档记录。

希望这有帮助

票数 5
EN

Stack Overflow用户

发布于 2019-01-24 14:23:02

EXEC返回将结束您的程序,但您仍将拥有屏幕的内容。

如果您先执行EXEC CICS发送控制擦除命令,然后执行CICS返回,这将完成您的程序并清除屏幕。

票数 2
EN

Stack Overflow用户

发布于 2019-01-24 15:07:37

在一个伪会话3270cICS事务中,您的代码通常首先检查这是否是“第一次进入”,检查如果使用容器而不是逗号区域,检查是否为EIBCALEN = 0或在EXEC CICS GET CONTAINER之后是否为EIBRESP = DFHRESP( CHANNELERR )

如果这是“第一次在”您的代码通常做一些内务管理,然后一个EXEC CICS SEND MAP把您的BMS地图上的3270设备。然后,您的代码执行一个EXEC CICS RETURN TRANSID(EIBTRNID),并引用您的逗号区域或通道。

如果这不是“第一次”您的代码通常检查逗区或其通道中的一个或多个容器和EIBAID以确定下一步要做什么,通常这是一个EXEC CICS RECEIVE MAP,用于检索映射中字段的字段内容。然后,您的代码执行它需要的任何业务功能,可能修改映射中的字段并执行EXEC CICS SEND MAP DATAONLY,对容器和EXEC CICS PUT CONTAINER中的逗区字段或字段进行适当的修改,并再次执行EXEC CICS RETURN TRANSID(EIBTRNID)和引用您的逗区或通道。

如果像在您的示例中一样,检查这些字段表明用户希望退出事务,则您的代码可能会执行一个EXEC CICS SEND TEXT ERASE FREEKB,其中FROM和LENGTH引用包含指示事务结束的适当消息的字段。这会把你的地图从屏幕上抹去。然后,您的代码将在没有TRANSID选项的情况下执行EXEC CICS RETURN,从而结束您的伪会话。

请注意,每个EXEC CICS RETURN都执行一个隐含的EXEC CICS SYNCPOINT提交资源,如DB2更新和MQ消息。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54348342

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档