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 » Workflow Engines - IBM MQ Workflow & Business Process Choreographer » Automated flow from 2 XML's

Post new topic  Reply to topic
 Automated flow from 2 XML's « View previous topic :: View next topic » 
Author Message
millerca
PostPosted: Wed Nov 08, 2006 5:51 am    Post subject: Automated flow from 2 XML's Reply with quote

Novice

Joined: 04 Sep 2001
Posts: 12
Location: OCLC - Dublin, OH

First off...I'm new to Workflow and what we currently have in place was written for us by consultants. I'm looking at tutorials etc but not finding anything that helps with this task. All of the examples I've read so far at some point have a user go into the client and complete a process.

Any help would be great

Version: WebSphere MQ WorkFlow 3.5
Platform: Windows 2000
DataBase: DB2
IT Staff training: Minimal (Had one class 4yrs ago then didn't get to use anything from it)

We are starting a new project where we are required to do the following tasks:

1) A new customer creates an account and places an order from our web store. The order will be an XML message and arrives via a queue.
2) The order needs held in WorkFlow until an account update (another XML) message arrives. The key to match account and order will be the user_id of the person who created the account and placed the order.

It sounds simple BUT this have to have no human intervention in WorkFlow. There is no known/set wait time for the order.

I'm really at a loss on how to even approach this using WorkFlow. We need to get answers to mgmt and project sponsors soon and I've been charged with the task of figuring this out and starting design and development ASAP.
Back to top
View user's profile Send private message Yahoo Messenger
jmac
PostPosted: Wed Nov 08, 2006 8:06 am    Post subject: Reply with quote

Jedi Knight

Joined: 27 Jun 2001
Posts: 3081
Location: EmeriCon, LLC

This might be done more easily using WPS and BPC than with MQWF.

I am not saying that this can not be done with MQWF, but there are some facilities in WPS that would make this a little easier.

Based on the details you have provided, I would say that you need to start the instance, and then wait for the 2nd message. The trick will be collating the 2nd message with its partner. In MQWF I would approach this by putting the instance into a wait (i.e an activity that never runs) and waiting for this 2nd message, once it arrives you would need to force finish the waiting activity to get the instance moving.
_________________
John McDonald
RETIRED
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address Yahoo Messenger MSN Messenger
millerca
PostPosted: Wed Nov 08, 2006 9:49 am    Post subject: Reply with quote

Novice

Joined: 04 Sep 2001
Posts: 12
Location: OCLC - Dublin, OH

How would I associate the 1st message with the second? Is there a table that my second process can kick off a query of to find the correct process id? Any examples or further details would really help.

Cat
Back to top
View user's profile Send private message Yahoo Messenger
jmac
PostPosted: Wed Nov 08, 2006 9:59 am    Post subject: Reply with quote

Jedi Knight

Joined: 27 Jun 2001
Posts: 3081
Location: EmeriCon, LLC

This is the part you are going to have to figure out... I do not know enough about your application to answer that.

Typically you would put something in the PI description, or AI description, so that you could do a query and find the proper activity to update.

What you are trying to do is non-trivial, and you likely should get some help in implementing this project.
_________________
John McDonald
RETIRED
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address Yahoo Messenger MSN Messenger
millerca
PostPosted: Wed Nov 08, 2006 10:02 am    Post subject: Reply with quote

Novice

Joined: 04 Sep 2001
Posts: 12
Location: OCLC - Dublin, OH

That is starting to be my feelings on this too. Without training we are trying to learn this on the fly and I had a feeling when they came to me about it that it was going to be a huge challenge. I'm getting this because I am a MQ admin/developer but WorkFlow looks to be a different animal than writing MQI programs.

I'll keep looking for examples, etc that I can use to help me in this quest. If you think of anything else that would really help too. The current time line is to install in Feb 2007.

Thanks,

Cat
Back to top
View user's profile Send private message Yahoo Messenger
kotha
PostPosted: Wed Nov 08, 2006 11:56 am    Post subject: Reply with quote

Partisan

Joined: 12 Mar 2005
Posts: 333

To compare two xml messages you got into workflow:

Create an sync automatic activity. Input data structure should hold the data from the previous two activities in the child data structures within. This way you can send all the data into a queue as xml message.

Now, write a java program to parse, read and compare the elements (user_id )you want.

Create a xml message and put in a system queue where the sync upes will pick and the process will continue in workflow.

This is my approach to your scenario.
Back to top
View user's profile Send private message
tsrisudh
PostPosted: Mon Nov 13, 2006 1:58 am    Post subject: Reply with quote

Centurion

Joined: 11 Aug 2005
Posts: 113

I would suggest a slightly different approach.

When the first message arrives create a workitem which has a manual start, make sure the data structure contains the identifier (User ID) also make it available in the GC (to make it easy to search)

When the second message arrives search for the workitem created in the workflow and do a check in and checkout this will complete the workitem

Hope this helps
_________________
Srisudhir Tadepalli
Back to top
View user's profile Send private message Yahoo Messenger
millerca
PostPosted: Wed Nov 15, 2006 12:13 pm    Post subject: Reply with quote

Novice

Joined: 04 Sep 2001
Posts: 12
Location: OCLC - Dublin, OH

Here is an update on this process we are trying to design/build:

We are going to have up to three XML message types going into this process (can you even do that?)

Part 1:
A new account and new order are placed via the online store. These are two XML messages that need held in workflow while we wait for an institution admin to approve of the account creation and order.

Part 2:
Assuming the admin approves of the creation of account and order the account XML needs released so that the data can be inserted into Siebel. The order is still held.

Part 3:
The account requires manual processing to set some critical fields in Siebel. Once this is complete an new (and different) account XML is created. This XML will need to go back to WF to trigger the held order to resume processing.

All of these are tied together via an id (be it userid or orderid). I have a mdoel FDL where I take in a mocked up order and hold it. I set the process name to the userid. I have yet to figure out how to get the second XML (account) to go into workflow to force this held order to process.

Like I said in the original post I'm new to this (I've done MQI coding and MQ admin support for over 4yrs) and any guidance would be great.

tsrisudh - Could you provide me a little more info on what your suggestion means? I'm not up to speed yet with all the acronems etc.

Thanks,

Cat
Back to top
View user's profile Send private message Yahoo Messenger
koko
PostPosted: Tue Nov 21, 2006 2:49 pm    Post subject: Reply with quote

Master

Joined: 26 Sep 2003
Posts: 206

Let me take a shot at it. Please excuse me if I say something totally irrelevant to your problem here.

1. Create Two structs called OrderStruct and AccountStruct and fill in these structures with whatever they need thru the span of flow.
2. Also create a higherlevel struct which can be carried all along the flow and include the above created structs as its members. It will also have a few other members within it apart from these two structs( May be IsAccountApproved & IsOrderApproved).
3. Instantiate the workflow with the Higher level struct.
4. Create two parallel automatic synchronic steps one for Account and one for Order. ( These can be implemented by UPES)
5. Have a NO-OP just to join these two steps.
6. The decision after this NO-OP can decide on all the various combination of outcomes you have, including creating a fall-out manual task.

What you are trying to do is not real complicated but to *me* it looks like lack of expereince in the workflow world is making things outlandish here.
_________________
Thanks

Koko
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 » Workflow Engines - IBM MQ Workflow & Business Process Choreographer » Automated flow from 2 XML's
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.