Common Messaging Interface Call Routines |
Transports supported: | MQSeries, MQSeries-C, MSMQ |
Syntax | |
Arguments | |
Details | |
Example |
Syntax |
CALL COMMIT(transid, rc); |
Numeric, input
Specifies the handle to a transaction object that is obtained from the BEGINTRANSACTION function.
Numeric, output
Provides the return code from the CALL routine. If an error occurs, then the return code is nonzero. You can use the SAS function SYSMSG() in order to obtain a textual description of the return code.
Details |
For MQSeries, all transactions are associated with a particular queue manager. So when you commit a unit of work that is associated with a particular queue manager, all work that is performed by that particular queue manager under synchpoint control is committed at once. You can associate more than one transaction object with the same queue manager, but it is not a good practice. Under MSMQ, all transaction objects are autonomous.
Example |
The following example commits a transactional unit of work for processing:
length msg $ 200; length transid rc 8; rc=0; call commit(transid, rc); if rc ^= 0 then do; put 'COMMIT: failed'; msg = sysmsg(); put msg; end; else put 'COMMIT: succeeded';
Copyright © 2010 by SAS Institute Inc., Cary, NC, USA. All rights reserved.