Author |
Message
|
kunal07 |
Posted: Tue Apr 16, 2013 9:29 am Post subject: Best approach for one to many scenario for SAP existing flow |
|
|
Acolyte
Joined: 05 Dec 2012 Posts: 72
|
i have a existing flow which is point to point in message flow, source information is coming from SAP RFC call , using SAP input node and it is mapping to desired format (using mapping node) and output goes to MQoutput node.
now i have modify the flow , in a way that depending on some specific values in RFC call values i have map the values and sent it to different application ( point to point to one to many) depending on the values filter.
so i wanted to ask that pub-sub is only way to this scenario or i can go with some other pattern as well like iterative discovery or something . i have do this scenario in WMB v8.
Please provide some suggestion on this. |
|
Back to top |
|
 |
kunal07 |
Posted: Tue Apr 16, 2013 9:35 am Post subject: |
|
|
Acolyte
Joined: 05 Dec 2012 Posts: 72
|
one RFC call will send the data to Broker and based on specific value i have to filter the messages and place send them to respective Queue. |
|
Back to top |
|
 |
mapa |
Posted: Tue Apr 16, 2013 11:56 am Post subject: |
|
|
 Master
Joined: 09 Aug 2001 Posts: 257 Location: Malmö, Sweden
|
You could have a look at the WMB Pattern "Data distribution SAP to WebSphere MQ: one-way (for IDoc) pattern" that is included in the WMBT7 and WMBT8.
Also if you do have an inbound SAP adapter it will generate a subflow for you with built-in routing (one output terminal per IDOC type) that you could use as a start.
We use this approach today but will for the next project switch to pub/sub instead, but nevertheless the first flow is just SAPInput -> routing -> WMQ and then there is one flow per IDOC type (we currently don't need to look into the control record for partner info since we use different partner profiles and RFC destinations for that instead and to that type of routing in the second step.) |
|
Back to top |
|
 |
kunal07 |
Posted: Tue Apr 16, 2013 11:32 pm Post subject: |
|
|
Acolyte
Joined: 05 Dec 2012 Posts: 72
|
Hey thanks for reply,
as you said you will be using pub-sub for your SAP. as of now actually currently i have 3 different flows and now i merge them into one.
one RFC module will send the data to Broker and based on partner ID we need to separate the individual messages and place them in respective Queue.
i am new to this pub-sub , can you provide some more details how i can do for my case.
 |
|
Back to top |
|
 |
mapa |
Posted: Wed Apr 17, 2013 3:30 am Post subject: |
|
|
 Master
Joined: 09 Aug 2001 Posts: 257 Location: Malmö, Sweden
|
Well, you could start with just a simple routing flow that does the routing to get it working and then improve it later if needed.
Maybe that is good enough in your case?
And as I said, try this pattern "Data distribution SAP to WebSphere MQ: one-way (for IDoc) pattern" and once you get it working you can just replace the sending to a destination list with a publication node and adjust the code to set the topic instead.
Then in your case you actually need to know the data (or maybe only the IDOC control record) and then do additional routing for partner profile based on that but at that point it is standard content based routing and not SAP specific. |
|
Back to top |
|
 |
kunal07 |
Posted: Wed Apr 17, 2013 10:21 am Post subject: |
|
|
Acolyte
Joined: 05 Dec 2012 Posts: 72
|
Thanks Mapa for explaining in details,
i got some update from Client that Source message that is coming out from SAP is not in IDOC , message domain is dataobject. will this make any difference in flow. |
|
Back to top |
|
 |
mapa |
Posted: Wed Apr 17, 2013 11:22 am Post subject: |
|
|
 Master
Joined: 09 Aug 2001 Posts: 257 Location: Malmö, Sweden
|
Well, the SAP Adapter produces a message payload that belongs to the DataObject parser (which is like XMLNSC).
The data produced is either a fully parsed IDOC (or BAPI) with all fields as xml (well, once again DataObject) or as a generic pass-through document with the IDOC as hex-binary that can later be parsed by an mq inputnode. It also contains a few meta data fields like IdocType.
Create a pattern instance of the pattern I already recommended twice and have a look at the flows and message sets that gets created.
If you need to learn more there is an IBM Redbook on the subject:
WebSphere Message Broker V7.0 Integration with WebSphere Adapter for SAP Software |
|
Back to top |
|
 |
mapa |
Posted: Mon Apr 22, 2013 3:20 am Post subject: |
|
|
 Master
Joined: 09 Aug 2001 Posts: 257 Location: Malmö, Sweden
|
I just noticed that in WMB8 you can in the inbound adapter configuration for ALE pass-through IDOCs now check an option to let it parse and populate the ControlRecord.
Then you can more easily do your partner specific routing from the beginning (or publishing) and not only on IDOC type. |
|
Back to top |
|
 |
kunal07 |
Posted: Mon Apr 22, 2013 4:10 am Post subject: |
|
|
Acolyte
Joined: 05 Dec 2012 Posts: 72
|
hey thanks , i will try the pattern.
i just want to one more thing about Publish flow, as in my case it is SAP adapter,
so can i use SAP input node in my publish flow, like
SAP I/P node--->Compute Node--->Publish Node
in compute node -- i have to segregate the input message by RFC name, Partner ID and Message Type and Then publish onto the topic.
Plz give any thought on this , is my thinking is in right direction...can i do like this...  |
|
Back to top |
|
 |
mapa |
Posted: Mon Apr 22, 2013 10:22 am Post subject: |
|
|
 Master
Joined: 09 Aug 2001 Posts: 257 Location: Malmö, Sweden
|
I think that is a valid approach.
That is exactly how I will redesign our flows from the inbound adapter since then I don't have to update the passhtrough adapter if IDOCs are changed or new ones are added. In our case that is a separate RAD Broker located near the SAP servers. |
|
Back to top |
|
 |
kunal07 |
Posted: Tue Apr 23, 2013 9:31 am Post subject: |
|
|
Acolyte
Joined: 05 Dec 2012 Posts: 72
|
thanks a lot for quick responses  |
|
Back to top |
|
 |
kunal07 |
Posted: Sun May 05, 2013 10:25 pm Post subject: |
|
|
Acolyte
Joined: 05 Dec 2012 Posts: 72
|
Hey Mappa I wanted to ask something more in this thread.
like i said in my publish flow, i have SAP input node.
how i do copy message headers thru SAP input node. i know how to do when it is MQinput node, is there will be any difference in this  |
|
Back to top |
|
 |
mapa |
Posted: Wed May 08, 2013 1:42 am Post subject: |
|
|
 Master
Joined: 09 Aug 2001 Posts: 257 Location: Malmö, Sweden
|
No difference except that the SAPInput node doesn't populate messageheaders. Before switching to passhtrough I had to add a MQMD with correct ccsid since otherwise the message got the default from the queuemanager when the MQOutput node put the message on the queue.
I haven't verified yet if I will get any problems with charsets with the new solution. |
|
Back to top |
|
 |
kunal07 |
Posted: Tue May 28, 2013 4:46 am Post subject: |
|
|
Acolyte
Joined: 05 Dec 2012 Posts: 72
|
Hi Mapa..thanks for info again.
Pub/Sub flow is working fine now.
In this same thread now after my subscription flow, i have to build a new flow that consumes messages from output queue of subscribtion flow and process and update database using a Web Service. i am using Message Broker V8 and Databease is Mysql.
can you suggest me what node/flow i have to use for mysql database update using webservice.
Please reply
thanks in advance |
|
Back to top |
|
 |
fjb_saper |
Posted: Tue May 28, 2013 4:50 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
kunal07 wrote: |
Hi Mapa..thanks for info again.
Pub/Sub flow is working fine now.
In this same thread now after my subscription flow, i have to build a new flow that consumes messages from output queue of subscribtion flow and process and update database using a Web Service. i am using Message Broker V8 and Databease is Mysql.
can you suggest me what node/flow i have to use for mysql database update using webservice.
Please reply
thanks in advance |
Obviously a web service call, which ever way the web service in question will accept it.  _________________ MQ & Broker admin |
|
Back to top |
|
 |
|