Program Functions
The following are step-by-step descriptions of the overview described previously. (1) is for CRREXMP1 and (2) is for CRREXMP2.
- (1): DMSSSPTO to set synchronization point options
- (1): DMSSETAG to set the transaction tag
- (1): DMSOPEN the CHILDS LIST file in SFS directory .CRRDIR1
- (1): DMSWRITE to CHILDS LIST
- (1): DMSCLOSE with NOCOMMIT option to close CHILDS LIST
- (1): DMSOPEN the TOYSTORE ORDERS file in SFS directory .CRRDIR2
- (1): DMSWRITE to TOYSTORE ORDERS
- (1): DMSCLOSE with NOCOMMIT option to close TOYSTORE ORDERS
- (1): CMINIT (Initialize_Conversation) to set up the protected conversation
- (1): CMSSL (Set_Sync_Level) to set the sync_level for the conversation to cm_sync_point
- (1): CMALLC (Allocate) to allocate the protected conversation
- (2): CMACCP (Accept_Conversation) to accept the protected conversation
- (1): CMCFM (Confirm) to ensure partner has received allocation
- (2): CMRCV (Receive) to get confirmation request
- (2): CMCFMD (Confirmed) to respond to the confirmation request
- (1): CMSEND (Send_Data) to send the data record to the partner
- (1): CMPTR (Prepare_To_Receive) to enter Receive state
- (2): CMRCV (Receive) to receive the data record and partner's request to enter Receive state
- (2): CMCFMD (Confirmed) to confirm the partner's state request
- (2): DMSSSPTO to set synchronization point options
- (2): DMSSETAG to set the transaction tag
- (2): DMSOPEN the SANTAS SACK file in SFS directory .CRRDIR3
- (2): DMSWRITE to SANTAS SACK
- (2): DMSCLOSE with NOCOMMIT option to close SANTAS SACK
- (2): SRRBACK (Backout) to initiate backout processing
- (1): CMRCV (Receive) to receive the backout indication
- (1): SRRBACK (Backout) to perform backout processing
- (2): CMSDT (Set_Deallocate_Type) to set the deallocate_type to CM_DEALLOCATE_ABEND
- (2): CMDEAL (Deallocate) to deallocate the protected conversation
- (1): CMRCV (Receive) to receive the deallocation notification
- (2): CMDEAL (Deallocate) to deallocate the conversation after a successful syncpoint
- (2): SRRCMIT (Commit) to initiate commit processing
- (1): CMRCV (Receive) to receive the commit request indication
- (1): SRRCMIT (Commit) to perform commit processing
- (2): CMDEAL (Deallocate) to deallocate the conversation after a successful syncpoint
- (2): SRRCMIT (Commit) to initiate commit processing
- (1): CMRCV (Receive) to receive the commit request indication
- (1): SRRBACK (Backout) to respond backout to commit request
- (2): CMSDT (Set_Deallocate_Type) to set the deallocate_type to CM_DEALLOCATE_ABEND
- (2): CMDEAL (Deallocate) to deallocate the protected conversation
- (1): CMRCV (Receive) to receive the deallocation notification