Managing logical units of work

A Client application uses a unit of work object, CclUOW, for each logical unit of work that it needs to manage. This code creates a unit of work object:
CclUOW uow;
Any server link request which participates in a unit of work references the corresponding unit of work object. When all the links participating in a unit of work have successfully completed, the unit of work can be committed by the commit method of the unit of work object or backed out by backout:
serv1.link( sflow, "ECITSQ", &( comma1="1st link in UOW" ), &uow );
serv1.link( sflow, "ECITSQ", &( comma1="2nd link in UOW" ), &uow );
  …
uow.backout( sflow );

If no UOW object is used, each link call becomes a complete unit of work (equivalent to LINK SYNCONRETURN in the CICS® server).

Whenever using logical units of work, you must ensure that you backout or commit active units of work, especially at program termination. You can check to see if a logical unit of work is still active by checking the uowId method of the CclUOW class for a non zero value.