ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » SAP Transactional Control / Subflows Transactional Behaviour

Post new topic  Reply to topic
 SAP Transactional Control / Subflows Transactional Behaviour « View previous topic :: View next topic » 
Author Message
dprogwmb
PostPosted: Wed Aug 31, 2011 6:32 am    Post subject: SAP Transactional Control / Subflows Transactional Behaviour Reply with quote

Voyager

Joined: 19 Jul 2011
Posts: 96

Hi guys,

I'm want to manage SAP Request nodes TRANSACTIONALLY in my flows, that is:
"If the message flow fails in another node after using the SAP Request node=> the SAP Request function called is not commited on SAP tables"...
1) Is it possible (configuring the Transactional mode property on YES, does it work) ? Or does the SAP Request node behaviours like the SOAP Request node (which is NOT TRANSACTIONAL) ?
I've been reading in infocenter, but I'm still don't know if it's possible?

2) If I configure the Retry Mechanism of the SAP input node to Short and Long Retry is it possible to REPROCESS the same message again , if the flow fails in another node (for example a Mapping node)?

Another general cuestion:
3) if I have subflows in an principal flow, and for example: if one subflow fails, does the principal flow rollbacks the Databases actualizations (if the compute mode of compute node of principal Flow is set to Automatic)?... Does It applies for subflows too? (or only for principal flows)

That are my 3 questions...
Thanks in advance for your help.

REGARDS
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Wed Aug 31, 2011 12:29 pm    Post subject: Re: SAP Transactional Control / Subflows Transactional Behav Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

dprogwmb wrote:
1) Is it possible (configuring the Transactional mode property on YES, does it work) ? Or does the SAP Request node behaviours like the SOAP Request node (which is NOT TRANSACTIONAL) ?


You can do that, but I prefer leaving Transactional mode to No and creating compensating transactions in my error handler.

dprogwmb wrote:
2) If I configure the Retry Mechanism of the SAP input node to Short and Long Retry is it possible to REPROCESS the same message again , if the flow fails in another node (for example a Mapping node)?


The short answer is no, which is why I prefer compensating transactions. IMHO, WMB Transactionality is best suited for simple message flows. Once you get past three or four nodes in a flow, the whole concept of automatic compensation becomes nebulous to the point of uncertainty.

dprogwmb wrote:
Another general cuestion:
3) if I have subflows in an principal flow, and for example: if one subflow fails, does the principal flow rollbacks the Databases actualizations (if the compute mode of compute node of principal Flow is set to Automatic)?... Does It applies for subflows too? (or only for principal flows)


If you use WMB Transactionality, it applies to the whole unit of work, both main flow and subflows. Again, it is worth repeating, if the complexity of your flow has reached subflows, then your reliance on WMB automated Transactionality is not well founded.

Is it possible? Yes. From a design perspective, I prefer more intuitively obvious solutions, such as explicit compensation in the error logic.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
dprogwmb
PostPosted: Thu Sep 01, 2011 7:24 am    Post subject: Reply with quote

Voyager

Joined: 19 Jul 2011
Posts: 96

lancelotlinc,

3 more things:
1) If message broker sends the message through sap request node, how do I assure that it hasn't commited that message on sap server?
2) Does sap request adapter of broker, use commits or rollbacks to sap , depending of WMB transactionality? (for example: if the flow fails => then the adapter send a rollback of the SAP Request to SAP)
3) The only way that WMB Transactionality works, is only if the exception is not caught by the Input node of the flow, so if I want to process an Exception Message I can't use the WMB Transactionality, is it correct?

Regards
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Thu Sep 01, 2011 7:37 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

dprogwmb wrote:
lancelotlinc,

3 more things:
1) If message broker sends the message through sap request node, how do I assure that it hasn't commited that message on sap server?
2) Does sap request adapter of broker, use commits or rollbacks to sap , depending of WMB transactionality? (for example: if the flow fails => then the adapter send a rollback of the SAP Request to SAP)
3) The only way that WMB Transactionality works, is only if the exception is not caught by the Input node of the flow, so if I want to process an Exception Message I can't use the WMB Transactionality, is it correct?

Regards


1. You should save the SAP Transaction Id in the local environment and issue a command to SAP in your error handler to compensate the transaction. This compensation can be explicit (which I prefer) or implicit: see http://help.sap.com/saphelp_nw04/helpdata/en/23/5f5fd653b6f64d9bb0b468a8689838/content.htm .

2. It can, but as I explained before, once you get past a simple flow, the WMB Transactionality becomes nebulous.

3. No this is not correct. Exceptions can be thrown or caught in different spots, depending on your design.

Have you attended the IBM-supplied training, WM663?
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
mqjeff
PostPosted: Thu Sep 01, 2011 10:25 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

It also depends rather a bit on which interface you use to talk to SAP.

In some cases, SAP handles the transactions for you, and in others it doesn't.
Back to top
View user's profile Send private message
Gaya3
PostPosted: Thu Sep 01, 2011 11:11 am    Post subject: Reply with quote

Jedi

Joined: 12 Sep 2006
Posts: 2493
Location: Boston, US

i suggest it to hand over that matter to SAP, its not quite easy, i tried my level best on it.

if there is connectivity issue - we can handle it in Message broker by using some back out scenario in error handler

if there is any other data issue - where you already posted to SAP and want to roll it back - quite meaningless.

Regards
Gayathri
_________________
Regards
Gayathri
-----------------------------------------------
Do Something Before you Die
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » SAP Transactional Control / Subflows Transactional Behaviour
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.