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 » Join problem

Post new topic  Reply to topic
 Join problem « View previous topic :: View next topic » 
Author Message
MaheshPN
PostPosted: Thu Oct 14, 2004 7:46 am    Post subject: Join problem Reply with quote

Master

Joined: 21 May 2003
Posts: 245
Location: Charlotte, NC

Hi Guys,
I have a situation where, activity A will start the Activity B and/or Activity C depending on the value. Activity D should start when one of them completes. When both the activities B and C are in the ready state and activity C finishes first, is there any way we can start the activity D?
Right now, it will not start until both the activities (B & C) finish.

Let me know your thoughts.

Thanks,

-Mahesh
Back to top
View user's profile Send private message
CHF
PostPosted: Thu Oct 14, 2004 7:53 am    Post subject: Reply with quote

Master

Joined: 16 Dec 2003
Posts: 297

For Activity D , put condition
Code:
"Atleast one incoming connector true"

_________________
CHF
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
MaheshPN
PostPosted: Thu Oct 14, 2004 8:28 am    Post subject: Reply with quote

Master

Joined: 21 May 2003
Posts: 245
Location: Charlotte, NC

Well,
Thats what I thought. Thats the default setting. Thats not helping out .

Thanks,
-Mahesh
Back to top
View user's profile Send private message
CHF
PostPosted: Thu Oct 14, 2004 8:54 am    Post subject: Reply with quote

Master

Joined: 16 Dec 2003
Posts: 297

Well, Now I understand what you are trying to do.
You want to start D even before B finishes (C already finished).
_________________
CHF
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
CHF
PostPosted: Thu Oct 14, 2004 9:10 am    Post subject: Reply with quote

Master

Joined: 16 Dec 2003
Posts: 297

It is my opinion that, by Workflow design itself, if you have control connectors to D from B and C, you cannot achieve what you are trying to do.

I am thinking of a turnaround solution for this. This may not work for you.

You have 4 activities A, B, C, D. Put control connectors from A to B, A to C, and A to D. DO NOT add any transition condition from A to D. DO NOT put control connectors from B to D and also from C to D.
In runtime, as soon as A finishes Workitems will be created for D and depending on transition conditions for B and C also be created. Now you could start D anytime you want independent of the state of B and C. As soon as anyone of B or C finishes , issue a start on D.

This solution may be inefficient and may not work for you. This is my opinion only.
_________________
CHF
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
MaheshPN
PostPosted: Thu Oct 14, 2004 11:02 am    Post subject: Reply with quote

Master

Joined: 21 May 2003
Posts: 245
Location: Charlotte, NC

Thanks for your Idea. As you said, thats going to create the activity D as parallel activity. I want that to come in sequece after B and/or C.

May be I need to look for some other way of achieving it.

Thanks,

-Mahesh
Back to top
View user's profile Send private message
vennela
PostPosted: Thu Oct 14, 2004 11:47 am    Post subject: Reply with quote

Jedi Knight

Joined: 11 Aug 2002
Posts: 4055
Location: Hyderabad, India

There is no easy way to acheive what you are trying to do.

Code:

    /  ----    B----- \
A                        X2
      \ ---    C ----/
   \
    \ ------  X1 ----- D




X1 and X2 are UPES activities. X1 is synchronous. X2 is asynchronous.
There is no program assigned for X1
X2 should do the following.

Get the process Instance
Check if this particular process instance has already been served.
If NOT
GET the message from X1 for this process instance and reply
else
discard the message
fi
Back to top
View user's profile Send private message Send e-mail Visit poster's website
CHF
PostPosted: Thu Oct 14, 2004 12:13 pm    Post subject: Reply with quote

Master

Joined: 16 Dec 2003
Posts: 297

vennela wrote:

X2 should do the following.


I am missing something here. Even if X2 wants to do that job, UPES queue for X2 will get the message only after B and C finishes.
_________________
CHF
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
vennela
PostPosted: Thu Oct 14, 2004 12:19 pm    Post subject: Reply with quote

Jedi Knight

Joined: 11 Aug 2002
Posts: 4055
Location: Hyderabad, India

Well I was on a conference call while posting this

You can change it to


Code:

    /  ----    B-----  X2
A                       
      \ ---    C ---- X2
   \
    \ ------  X1 ----- D



[/code]
Back to top
View user's profile Send private message Send e-mail Visit poster's website
CHF
PostPosted: Thu Oct 14, 2004 12:30 pm    Post subject: Reply with quote

Master

Joined: 16 Dec 2003
Posts: 297

Code:

    /  ----    B
A                       
      \ ---    C
   \
    \ ------  X1 ----- D


X1 should be synchronous.
X1 should do the following:

Get the current process instance.
Get the activity instances B and C.
Loop a query for states of Avtivity instances B and C until one of the states is in Finished.
Then reply back to WF.
_________________
CHF
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
CHF
PostPosted: Thu Oct 14, 2004 12:31 pm    Post subject: Reply with quote

Master

Joined: 16 Dec 2003
Posts: 297

Well, Vennela I guess we two are working on this at the same time in the same way
_________________
CHF
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
vennela
PostPosted: Thu Oct 14, 2004 12:44 pm    Post subject: Reply with quote

Jedi Knight

Joined: 11 Aug 2002
Posts: 4055
Location: Hyderabad, India

Quote:
Loop a query for states of Avtivity instances B and C until one of the states is in Finished.

If B and C are not being worked on for 6 months then what happens. Your program will keep looping for 6 months???????
Back to top
View user's profile Send private message Send e-mail Visit poster's website
CHF
PostPosted: Thu Oct 14, 2004 12:55 pm    Post subject: Reply with quote

Master

Joined: 16 Dec 2003
Posts: 297

I agree that your solution is the best approach. I was mentioning the solution, not the best solution
_________________
CHF
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
jmac
PostPosted: Fri Oct 15, 2004 5:31 am    Post subject: Reply with quote

Jedi Knight

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

MaheshPN wrote:
Well,
Thats what I thought. Thats the default setting. Thats not helping out .

Thanks,
-Mahesh


Just a point of information here.... A control connector is a 3 state object ith can be TRUE, FALSE, or UNEVALUATED. A control connector stays in an UNEVALUATED state until the source activity completes. Navigation TO an activity can never take place if any control connector is in an UNEVALUATED state.

I never tried Vennys solution, but it looks quite interesting. let me know if you have luck with this solution.

Thanks
_________________
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
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 » Join problem
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.