Originally posted by: Ejay
Problem :
When using IBM WebSphere Transformation Extender (WTX), if a parent Map with no FAIL() function, is calling a child map using aRUN() function, how do you rollback the transaction of the child map output card, when the child map execution fails?
A parent map is calling a child map like : ( No Fail function )
=VALID(RUN("test_map"), LASTERRORCODE() + LASTERRORMSG())
Our child map "test_map" is doing a database insert in output card 1 and has a FAIL() in the second output card. (So for this example, the child map "test_map" would always fail.)
If you set the database insert output card 1 scope to Burst Then the execution will be like this:
+ Parent map call Child map
+ Child map does a database insert in output card 1, and then fails in output card 2
+ Due to the fail, the Child map rolls-back the insert
+ The Parent map completes successfully and commit its update
+ Only the main map results are committed, the run map transaction is not, due to the burst scope
If the Scope of the run map is set to map then the full transaction will be committed
Emmanuel
#DataExchange#IBM-Websphere-Transformation-Extender#IBMSterlingTransformationExtender