Author |
Message
|
Bharat_123 |
Posted: Mon Feb 02, 2009 8:04 am Post subject: Writing & Calling diff applications in WMB |
|
|
Acolyte
Joined: 15 Sep 2008 Posts: 58
|
Hello Team
I have a typical synario where i need to put and get the messages from diff applications.
My question here is do i need to do all in a single .msg flow or diff .msgflow files.
MQinput -->compute --> MQoutput to TX
MQ get from TX -- > compu ----> put to mainframe MQ outputQ
MQget from Mainframe --> comp ---> put to TX
get from tx ---> comp --> put to client/ customer MQout
In the above scenario what do i have to do? and also i need to match the msg id for all the scenario.
When i do the above scenario first MQput to TX is working and flow is terminating. to continue the flow what do i have to do?
do i have to create different .msgflows and in a single .msgflow works fine.
Please suggest or guide me
Thank You |
|
Back to top |
|
 |
Vitor |
Posted: Mon Feb 02, 2009 8:15 am Post subject: Re: Writing & Calling diff applications in WMB |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Bharat_123 wrote: |
My question here is do i need to do all in a single .msg flow or diff .msgflow files. |
Whatever works best for your design? I'd say the key question is where you have the UOW boundaries.
Bharat_123 wrote: |
In the above scenario what do i have to do? |
That's a question I'd submit an invoice to answer!
Bharat_123 wrote: |
and also i need to match the msg id for all the scenario. |
Msg id or correl id? Either could be right, but think about it in the context of your design.
Bharat_123 wrote: |
When i do the above scenario first MQput to TX is working and flow is terminating. to continue the flow what do i have to do? |
What you'd normally do if a flow terminates.
Bharat_123 wrote: |
do i have to create different .msgflows and in a single .msgflow works fine. |
See above. I'd suspect you need different flows, but it really depends on the details of your design. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
kamy |
Posted: Wed Feb 04, 2009 11:54 am Post subject: |
|
|
Novice
Joined: 26 Oct 2001 Posts: 21
|
Question -- when you say TX do you mean WTX? |
|
Back to top |
|
 |
Bharat_123 |
Posted: Wed Feb 04, 2009 3:23 pm Post subject: |
|
|
Acolyte
Joined: 15 Sep 2008 Posts: 58
|
TX = WTX.
As i mentioned earlier. Message picking up and putting that to WTX application. BUt the flow is not continuing may be the flloing reason if understood correctly.
Its a synchronise request & response flow
Now i modified my MFP with 4 individual .msgFlows.
1. Get from client - TX
2. get from TX - Main Frame
3. get from Main Frame - TX
4. get From TX - reply to client
Now i am saving mt msgId into Correl Id as soon as msg pickup by msgFlow1
Thats for sure i believe i am not able to match the msgId / CorrelId for all the scenarios Thats why its not picking up.
Could u please suggested me how can i match that for the continuty of flow.
Appreciate your time and help
Thank You |
|
Back to top |
|
 |
kamy |
Posted: Wed Feb 04, 2009 3:44 pm Post subject: |
|
|
Novice
Joined: 26 Oct 2001 Posts: 21
|
Clarification - do you have WTX for WMB i.e. can you call a WTX map in-stream from message flow.
If you can then I would code the entire process in 1 message flow.
MQinput -->compute – send data as blob --> WTX map node→ MQGet node -> WTX Map node-> MQOut (Client customer)
Please check the timeout property for MQGet.. |
|
Back to top |
|
 |
Bharat_123 |
Posted: Wed Feb 04, 2009 3:51 pm Post subject: |
|
|
Acolyte
Joined: 15 Sep 2008 Posts: 58
|
fortunately we dont have WTX for WMB. may be in future we are planning to go for that WTX plugin 8.2.03.
Currently we have to go like the scenario i have mentioned.
Thank You |
|
Back to top |
|
 |
kamy |
Posted: Thu Feb 05, 2009 4:33 am Post subject: |
|
|
Novice
Joined: 26 Oct 2001 Posts: 21
|
How about using DB table to co-relate requests to the M/F and the corresponding responses, i.e remove dependency of MQGet and use MQInput node instead?
Req 1 -MQinput -->compute --> MQoutput to TX (store MSGID in DB table)
Req 2 MQInput from TX -- > compu ----> put to mainframe MQ outputQ (correlate Req2 to Req1 by retreiving MsgID from DB table)
Rply 1 MQInput from Mainframe --> comp ---> put to TX
(correlate Rply1 to Req1 by retreiving MsgID from DB table)
Rply 2 get from tx ---> comp --> put to client/ customer MQout
(correlate Rply2 to Req1 by retreiving MsgID from DB table) |
|
Back to top |
|
 |
Bharat_123 |
Posted: Thu Feb 05, 2009 4:45 am Post subject: |
|
|
Acolyte
Joined: 15 Sep 2008 Posts: 58
|
Thanks for ur reply Kamy
our design is in a such a way that we can not use DB table or we dont have a queue to store the Msg Id init.
I believe what we have to do is everything is on runtime dynamically.
Thanks all for ur
i did look @ the example co-ordinare req reply. in that its savin MsgId in a Queue. How can i achieve that without saving either in Q or DB?
Please me |
|
Back to top |
|
 |
mqjeff |
Posted: Thu Feb 05, 2009 4:52 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Saving it in a DB is "dynamically, at runtime".
Anyone who says otherwise is mistaken.
Any esql Shared Variable that is declared at the Schema level is visible to all ESQL modules in that schema, apparently.
There's a lovely Cache Node SupportPac. |
|
Back to top |
|
 |
Bharat_123 |
Posted: Thu Feb 05, 2009 7:55 am Post subject: |
|
|
Acolyte
Joined: 15 Sep 2008 Posts: 58
|
I apolizize may i must have misrepresnt to you. We are not using any DB and MsgId store Queue anytime.
the only way to do is map the msgId and CorrlId I believe. may be i am wrong. Please correct if i am wrong.
The 4 .msgflows has to communicate by either by msgId or CorrelId or any other process withour Db or to store to Q.
Thanks |
|
Back to top |
|
 |
|