Red paper IBM CICS Event Processing: New Features in V4.2

Catherine Moxey
Jenny He
IBM CICS Event Processing: New Features
in V4.2
IBM® CICS® Transaction Server for z/OS® Version 4.1 made it possible to support event
processing for business applications. Event processing can help the business community to
gain insight into how their business processes are performing. Furthermore, event processing
can help companies take advantage of new business opportunities by providing a
non-invasive methodology for enhancing existing business applications.
With the potential offered by event processing support, CICS Transaction Server for z/OS
Version 4.2 enhances this capability with a number of new features. This IBM Redpapers™
publication describes several of the most significant of these new features, such as assured
event emission, separate event processing (EP) adapters, and search facilities to help you
understand the effect of application changes.
For more information about the new feature which provides CICS system events, see the IBM
Redpaper™ Gaining Insight into IBM CICS Systems with Events, REDP-4810, in this series.
Assured event emission
Business events carry business importance to users. In many situations users can tolerate
the potential for occasional loss of events, for example, because you are looking for trends
and patterns over a period of time. However, in situations where the user needs to respond to
each and every event, it is vital to make sure that every event that is captured will be emitted
CICS TS 4.2 provides assured event emission for your event-critical business solutions.
Assured event emission is achieved by selecting synchronous event emission in the CICS
event binding editor.
© Copyright IBM Corp. 2011. All rights reserved.
With synchronous event emission, event formatting and emission processing are completed
synchronously within the unit of work of the capturing transaction. The unit of work completes
successfully only if the event is emitted. If the event emission fails, or CICS itself fails, the
capturing transaction will be abended.
Synchronous emission mode is used when the capturing unit of work can only be regarded as
successful if it can be assured that the event has been emitted. With asynchronous event
emission, the event is queued for asynchronous processing by a separate event processing
(EP) dispatcher thread, which reduces the overhead of the capturing transaction, but means
that in those rare situations where the event fails to be emitted, the capturing transaction will
still complete successfully.
If a synchronous event is not emitted, messages are produced in the CICSLog to explain why,
statistics are updated, and the unit of work for the capturing transaction is backed out. Without
assured event emission, if an event fails to be emitted, CICS still provides information and
statistics about the failure, but the capturing unit of work continues successfully and the event
is discarded.
Emission mode for the event is specified in the advanced options when defining an EP
adapter using the CICS event binding editor. Figure 1 shows how synchronous emission
mode is specified. You can also specify whether an event is transactional or not. For more
information about emission and transactional modes, see the information about event
processing adapters in the CICS TS 4.2 Information Center.
Figure 1 Specifying emission mode and transactional mode in the CICS event binding editor
The following examples illustrate situations in which either synchronous or asynchronous
events would be used.
Example for asynchronous events
One example of when asynchronous events are appropriate is when an event for bank
account transaction which exceed $1,000 is used to monitor the frequency of large
transactions in a day, or to recognize high-value customers. The emission of such events is
entirely separate from the application which processes the bank account transactions, which
is not dependent on whether or not the events are emitted successfully.
IBM CICS Event Processing: New Features in V4.2
Example for synchronous events
Using an example of withdrawal of money from a bank account, a synchronous event can be
set up so that, if the balance is lower than the amount to be withdrawn, an event is emitted
immediately within the same money withdrawal transaction to trigger a balance transfer
process. In this example, the event is used to drive additional processing, so if the event
emission fails, the withdrawal of money should not be allowed to complete.
With assured event emission and a suitable choice of EP adapter, you can choose the level of
integrity between the business application and the emission and transportation of the event.
Assuring your event emission provides the opportunity to build business-critical, event-based
applications, and extend existing applications in as reliable a way as if you had, for example,
added an MQPUT statement to an application to write an event, but without actually changing
the application. The trade-off is that the synchronous processing that is essential to assuring
that events are emitted might have an impact on your application response time. The
synchronous event emission can also change the behavior of a transaction because an event
emission failure causes the application to back out. A judicious use of synchronous event
emission minimizes the application impact.
It is worth noting that all system events (as discussed in Gaining Insight into IBM CICS
Systems with Events, REDP-4810) are emitted asynchronously to minimize the impact to the
Search facility
With the growing number of event bindings created in your enterprise, it becomes essential to
understand the impact of proposed changes to your CICS applications and systems on the
event specified within these event bindings. You might say, “We emit events from a number of
our applications. If we ever need to make a change to any of those applications, how will we
know which event capture specifications are affected and might need updating?” To help
answer this question, the event processing search facility was made available in CICS TS 4.2.
The event processing search facility is a custom search tool provided in the IBM CICS
Explorer®. This facility searches event bindings and EP adapters in the CICS Explorer
workspace or those installed in a CICSplex that Explorer is connected to. You can search
either by resource name or by variable, structure, and copybook name of an imported
language structure. The search facility will find all capture specifications which match the
searched string. Based on the search result, you can decide which event bindings must
IBM CICS Event Processing: New Features in V4.2
For example, if you need to change a program named EVPROC02, as shown in Figure 2,
using the EP search facility, you can search for the string of EVPROC02 with the resource
type of PROGRAM. The scope for the search is the installed event bindings in a CICSplex
SDAYPEG to which the CICS Explorer is connected.
Figure 2 EP search facility
IBM CICS Event Processing: New Features in V4.2
Figure 3 shows the event bindings that contain 'EVPROC02' after performing the search.
Expanding each event binding, you can see the details.
Figure 3 EP search results
Separate EP adapters
Another new feature provided by CICS TS 4.2 is the separation of EP adapter definitions from
event bindings. This makes it easier to change the configuration details for how events are to
be formatted and emitted, and to reuse the same configuration details for events in multiple
event bindings.
With this feature, in the CICS event binding editor, you can define a CICS Event Processing
Adapter resource, as separate from a CICS Event Binding resource, as shown in Figure 4.
Figure 4 Separate EP adapter and event binding definition menu options
IBM CICS Event Processing: New Features in V4.2
For example, you can define an ABM WebSphere® MQ EP adapter resource called
mq_queue, as shown in Figure 5 under the resource bundle adapterbun1. In an event binding
writetsq1_evb, you can then select the option Use a predefined EPADAPTER resource and
provide the name of mq_queue as the adapter definition. The same EP adapter can be
specified for as many other event bindings as required.
Figure 5 Choosing a separate EPADAPTER resource for an event binding
With the separate EP adapter configuration, you can share the same EP adapter resource
among a number of event bindings while having only one EP adapter resource to manage.
You can also create several types of EP adapter resources and use each of them for specific
emission and delivery requirements.
For example, you can specify one WebSphere MQ EP adapter destined for WebSphere MQ
queue A with emission mode of asynchronous and non-transactional, and another
WebSphere MQ EP adapter destined for WebSphere MQ queue B with emission mode of
synchronous and transactional. According to the business requirements of the events, you
can then choose the appropriate EP adapter for each event binding.
Other event processing features in CICS TS 4.2
Although we have described three of the new EP features available in CICS TS 4.2, other new
features are also available.
A number of additional data types are now supported by event processing, such as short and
long floating point numbers and COBOL zoned decimal data types. For a complete list of the
supported data types, see the CICS TS 4.2 Information Center.
The CICS Temporary Storage (TS) queue EP adapter now supports the XML event formats of
common base event, common base event REST, and WebSphere Business Events (WBE),
adding to its value by providing a way of quickly testing to ensure that the right events are
being produced.
The EXEC CICS INQUIRE CAPTURESPEC command provides new options for system
programmers and developers to determine information about any primary predicate or
application context filters. The new EXEC CICS INQUIRE CAPOPTPRED, CAPDATAPRED, and
CAPINFOSRCE commands can be used to determine information about application command
options, application data predicates, and information sources that are specified in a given
capture specification.
IBM CICS Event Processing: New Features in V4.2
You can now define capture specifications to emit events from the file and temporary storage
commands issued by the CICS Atom support and the EXEC CICS LINK commands that are
issued by the CICS-WebSphere MQ bridge program.
In conclusion, CICS TS 4.2 enhances event processing support through both runtime
offerings and improved tooling. All of these enable you to make the best use of event
processing and move towards event-driven business in a fast changing world.
The team who wrote this paper
This paper was produced by a team of specialists from around the world working at the
International Technical Support Organization, Hursley Center.
Catherine Moxey is an IBM Senior Technical Staff Member in CICS Strategy and Planning,
based at IBM Hursley near Winchester, UK. Catherine has more than 20 years' development
experience with IBM, primarily in CICS and System z®, but also in Web services
technologies. She is the architect for the event processing support in CICS Transaction
Server for z/OS.
Jenny He is a Software Engineer in CICS Transaction Server product suite at Hursley, UK.
Jenny has worked at IBM for nine years and has a broad experience in software development,
including Eclipse plug-in development, mainframe product development, agile development
process, solution building and testing for IBM Business Process Management product suite,
and authoring IBM Redbooks®. Jenny holds a Bachelor of Engineering degree in Electronics
from South China University of Technology, and a PhD in optical networking from University of
Essex, UK.
Thanks to the following people for their contributions to this project:
Chris Rayns
International Technical Support Organization, Poughkeepsie Center
Now you can become a published author, too!
Here's an opportunity to spotlight your skills, grow your career, and become a published
author—all at the same time! Join an ITSO residency project and help write a book in your
area of expertise, while honing your experience using leading-edge technologies. Your efforts
will help to increase product acceptance and customer satisfaction, as you expand your
network of technical contacts and relationships. Residencies run from two to six weeks in
length, and you can participate either in person or as a remote resident working from your
home base.
Find out more about the residency program, browse the residency index, and apply online at:
IBM CICS Event Processing: New Features in V4.2
Stay connected to IBM Redbooks
򐂰 Find us on Facebook:
򐂰 Follow us on Twitter:
򐂰 Look for us on LinkedIn:
򐂰 Explore new Redbooks publications, residencies, and workshops with the IBM Redbooks
weekly newsletter:
򐂰 Stay current on recent Redbooks publications with RSS Feeds:
IBM CICS Event Processing: New Features in V4.2
This information was developed for products and services offered in the U.S.A.
IBM may not offer the products, services, or features discussed in this document in other countries. Consult
your local IBM representative for information on the products and services currently available in your area. Any
reference to an IBM product, program, or service is not intended to state or imply that only that IBM product,
program, or service may be used. Any functionally equivalent product, program, or service that does not
infringe any IBM intellectual property right may be used instead. However, it is the user's responsibility to
evaluate and verify the operation of any non-IBM product, program, or service.
IBM may have patents or pending patent applications covering subject matter described in this document. The
furnishing of this document does not give you any license to these patents. You can send license inquiries, in
writing, to:
IBM Director of Licensing, IBM Corporation, North Castle Drive, Armonk, NY 10504-1785 U.S.A.
The following paragraph does not apply to the United Kingdom or any other country where such
provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION
express or implied warranties in certain transactions, therefore, this statement may not apply to you.
This information could include technical inaccuracies or typographical errors. Changes are periodically made
to the information herein; these changes will be incorporated in new editions of the publication. IBM may make
improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time
without notice.
Any references in this information to non-IBM websites are provided for convenience only and do not in any
manner serve as an endorsement of those websites. The materials at those websites are not part of the
materials for this IBM product and use of those websites is at your own risk.
IBM may use or distribute any of the information you supply in any way it believes appropriate without incurring
any obligation to you.
Information concerning non-IBM products was obtained from the suppliers of those products, their published
announcements or other publicly available sources. IBM has not tested those products and cannot confirm the
accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the
capabilities of non-IBM products should be addressed to the suppliers of those products.
This information contains examples of data and reports used in daily business operations. To illustrate them
as completely as possible, the examples include the names of individuals, companies, brands, and products.
All of these names are fictitious and any similarity to the names and addresses used by an actual business
enterprise is entirely coincidental.
This information contains sample application programs in source language, which illustrate programming
techniques on various operating platforms. You may copy, modify, and distribute these sample programs in
any form without payment to IBM, for the purposes of developing, using, marketing or distributing application
programs conforming to the application programming interface for the operating platform for which the sample
programs are written. These examples have not been thoroughly tested under all conditions. IBM, therefore,
cannot guarantee or imply reliability, serviceability, or function of these programs.
© Copyright International Business Machines Corporation 2011. All rights reserved.
Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by
GSA ADP Schedule Contract with IBM Corp.
This document REDP-4809-00 was created or updated on December 8, 2011.
Send us your comments in one of the following ways:
򐂰 Use the online Contact us review Redbooks form found at:
򐂰 Send your comments in an email to:
[email protected]
򐂰 Mail your comments to:
IBM Corporation, International Technical Support Organization
Dept. HYTD Mail Station P099
2455 South Road
Poughkeepsie, NY 12601-5400 U.S.A.
Redpaper ™
IBM, the IBM logo, and are trademarks or registered trademarks of International Business Machines
Corporation in the United States, other countries, or both. These and other IBM trademarked terms are
marked on their first occurrence in this information with the appropriate symbol (® or ™), indicating US
registered or common law trademarks owned by IBM at the time this information was published. Such
trademarks may also be registered or common law trademarks in other countries. A current list of IBM
trademarks is available on the Web at
The following terms are trademarks of the International Business Machines Corporation in the United States,
other countries, or both:
CICS Explorer®
Redbooks (logo)
System z®
The following terms are trademarks of other companies:
Intel, Intel logo, Intel Inside, Intel Inside logo, Intel Centrino, Intel Centrino logo, Celeron, Intel Xeon, Intel
SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its
subsidiaries in the United States and other countries.
Other company, product, or service names may be trademarks or service marks of others.
IBM CICS Event Processing: New Features in V4.2