A transaction can initiate other transactions, and hence, conversations. In a complex process, a distinct hierarchy emerges, usually with the terminal-initiated transaction at the top. Figure 2 shows a possible configuration. In this example, transaction TRAA, in system CICSA, is initiated from a terminal. Transaction TRAA attaches transaction TRBB to run in system CICSB. Transaction TRBB in turn attaches transaction TRCC in system CICSC and transaction TRDD in system CICSD. Both transactions TRCC and TRDD attach the same transaction SUBR in system CICSE, thus giving rise to two copies of SUBR.
Notice that, for every transaction, there is only one inbound attach request, but that there can be a number of outbound attach requests. The session that activates a transaction is called its principal facility. A session that is allocated by a transaction to activate another transaction is called its alternate facility. Therefore, a transaction can have only one principal facility, but several alternate facilities.
When a transaction initiates a conversation, it is the front-end transaction on that conversation. Its conversation partner is the back-end transaction on the same conversation. It is normally the front-end transaction that dominates, and determines the way the conversation goes. This style of processing is sometimes referred to as the client/server model. (In some books, it is called master/slave.)
Alternatively, the front-end transaction and back-end transaction may switch control between themselves. This style of processing is called peer-to-peer. As the name implies, this model describes communication between equals. You are free to select whichever model you need when designing your application; CICS® supports both.
[[ Contents Previous Page | Next Page Index ]]