IBM MQ Applications Development Workshop
This course is designed for personnel who will be developing and/or supporting IBM MQ applications. The course is an intensive, practical, 'hands-on' workshop. For public presentations the course is taught with students using COBOL in a z/OS environment
This course is available for exclusive, one-company presentations, either on-site at a customer's location or live over the Internet, via RSM's Virtual Cllassroom Environment service.
What you will learn
On successful completion of this course you will be able to:
- establish a connection to an MQ Queue Manager
- understand the concepts of Queues, Queue Managers and MQ messages
- describe MQ program design considerations and the MQI
- explain triggering, syncpoints and message grouping and segmentation
- discuss Distributed Queuing enablement
- understand and describe Clustering
- open/close predefined and dynamic queues
- pass data between MQ programs using queues
- pass Request/Reply messages between programs
- use Msgid & Correlid to PUT and subsequently GET selected messages from a queue
- understand the effect of putting and getting messages under Syncpoint control
- understand the effect of using persistent messages.
Who Should Attend
Experienced programmers with existing knowledge of IBM MQ.
Prerequisites
Experience of writing and/or supporting applications programs. Attendees will also need to have a sound grasp of the fundamentals of IBM MQ, which can be gained by prior attendance on the course Technical Introduction to IBM MQ.
Duration
3 days
Fee (per attendee)
£1890 (ex VAT)
This includes free online 24/7 access to course notes.
Hard copy course notes are available on request from rsmshop@rsm.co.uk
at £50.00 plus carriage per set.
Course Code
MQAW
Contents
IBM MQ Overview
Islands of information and IBM MQ; What's in a name?; Software layers; IBM MQ features; Wide platform coverage; The MQI - a common application programming interface; Time independent or asynchronous processing; Assured message delivery; Support of different application styles; MQ - some comparisons; Queues; Messages; MQPUT; MQGET; Queue Managers and database managers; A significant difference between queues and database tables...; Messages and queues; Shared queues; The Queue Manager; Basic message structure; Asynchronous messaging; Synchronous messaging; Multiple requesters, one responder; Parallel messaging; Re-using MQ application processes as business objects; Meshed business objects; Remote messaging (distributed queuing); MQ clients.
The MQI Major Calls
Communicating with Queue Managers; Application protection; Purpose of MQCONN; MQCONN call sample; The connection handle; Default Queue Managers; The MQCONN call and CICS; MQCONN & single threaded applications; MQCONN & multi-threaded applications; MQCONN & the MQ client; Environment variables; The Client Channel Definition Table; The MQCONNX call; The MQDISC call; The MQI completion codes; MQCONN common reason codes; MQOPEN and MQCLOSE; MQOPEN & security; Queue name resolution; The MQOD object descriptor; The MQOD object descriptor for RPG; The MQC public interface for Java; The MQOD fields; Creating dynamic queues with MQOPEN; Controlling the name of dynamic queues; The open options fields; The open input options field; MQOPEN share options; Other MQOPEN options; Open options and clustering; Open options for clustering; Identity & context open options; MQOPEN sample call; MQCLOSE sample call; The MQCLOSE options.
The MQMD Message Descriptor
The MQMD layout; The MQMD layout for RPG; MQMD: report options, message type, message expiry, feedback field, encoding field, encoding field usage, coded character set id, format field, priority, persistence, message id, correlation id, context information, context options, context userid field, context accounting field, application identity, context put information, Setting some MQMD values.
PUT Message Options
MQPMO: structure, options field, layout, layout for RPG, resolved queue.
The MQPUT Call
MQPUT usage; MQPUT sample call; Section summary; Practical session.
GET Message Options
MQGMO structure; MQGMO structure for RPG; MQGMO fields; MQGMO options field; MQGMO WAITINTERVAL.
The MQGET Call
MQGET usage; MQGET sample call; Section summary; Practical session.
The MQPUT1
MQPUT1 call description; MQPUT1 sample call; Practical session; Summary.
MQI Facilities
Message id and correlation id; MSGID & CORRELID overview; Message & correlation id formats; Message retrieval using MSGID & CORRELID; Retrieved messages; Section summary.
MQGET with WAIT
MQGET WAIT overview; Usage; MQGMO wait options; MQGMO set signal (z/OS); MQGMO set signal (Windows).
Request/Reply Messaging
Request/Reply overview; Request/Reply client side; Request/Reply client & server; Request/Reply timeouts; Summary; Practical session.
Syncpoints
MQPUT & syncpoint control; Recovery co-ordination with manager; Recovery co-ordination without manager; MQ recovery co-ordination of XA compliant resource manager(s); Options controlling syncpoints; Mark skip backout; MQCMIT; Summary; Practical session.
Triggering
Why trigger?; Trigger message generation; Processing the trigger message; Syncpoint considerations; Summary; Practical session.
Minor Calls and Messaging
MQINQ and MQSET; MQINQ call format; Selectors and selector counts; MQINQ integer attributes; MQINQ character attributes; MQINQ code sample; MQSET call format; Summary; NAMELISTs.
Publish & Subscribe
Introduction; Terms and terminology; Publications; An orphan subscription; Defining topics; Command prompt; MQ Explorer; A publish and subscribe environment; Publish APIs within applications; Publish sample programs; Publish MQ Explorer; Subscribe APIs within applications; Subscribe MQ Explorer; AMQSSBX; RFHUTIL; Topic alias; Subscription/publication testing under Explorer.
Message Properties
Message headers; Format; Message format; Message flowing to a previous version; API introduction; API example; Commands: MQCRTMH, MQSETMP, MQINQMP, MQDLTMP; Testing properties RFHUTIL; Viewing properties using MQ Explorer.