[Zope3-dev] possible bug in zope.wfmc
Adam Groszer
adamg at fw.hu
Tue Sep 12 04:09:23 EDT 2006
Hello Jim,
As I think it further, even if I would implement the exception and so
transitions, there might still be a chance that an activity does not
have a valid outgoing transition. These transitions can also have
conditions.
Still I have to read through the WFMC specifications.
Monday, September 11, 2006, 4:27:26 PM, I wrote:
AG> Hello Jim,
AG> My specific usecase is:
AG> ---------
AG> ----->| Final |
AG> ---------- / ---------
AG>...-->>| Update |- ---------
AG> ---------- \----->| Issue |-->...
AG> ^ \ ---------
AG> | \ ----------
AG> | \-->| Review |
AG> | ----------
AG> | |
AG> +------------------+
AG>
Update ->> Final is guarded by "review_result == 'accepted'"
Update ->> Issue is guarded by "transitionName == 'update_issue'"
Update ->> Review is guarded by "transitionName == 'update_review'"
AG> On the UI I put up every possible transition. Now if my crazy user
AG> chooses Final if review_result != 'accepted' then bang, the
AG> process gets finished. No errors, no messages, no exceptions.
AG> I already thought of filtering the possible transitions on the UI, but
AG> how? transitionName still forces the other conditions to false. A kind
AG> of transition-precondition is not available as I know.
AG> In this usecase raising an exception and thus not letting any
AG> transition to fire fits me perfectly.
AG> XPDL would give the options
AG> - exception
AG> - default exception
AG> - otherwise
AG> but none of these are implemented in zope.wfmc.
AG> I think finishing the whole process is definitely bad behaviour.
AG> But what's correct? Please give a hint what should be done.
AG> Monday, September 11, 2006, 4:00:01 PM, you wrote:
JF>> On Sep 10, 2006, at 9:00 AM, Adam Groszer wrote:
>>> Hello,
>>>
>>> I think I found a bug in zope.wfmc.
>>> Let's say the Review>Publish and Review>Reject transitions are guarded
>>> by conditions.
>>> -----------
>>> -->| Publish |
>>> ---------- ---------- / -----------
>>> | Author |-->| Review |- ----------
>>> ---------- ---------- \-->| Reject |
>>> ----------
>>>
>>> If at Review.workItemFinished() both conditions are still _FALSE_ the
>>> wfmc package finishes the whole process.
>>> I think the correct behaviour should be to not to allow to finish the
>>> workitem.
JF>> I don't think that would be correct.
>>> Maybe an exception should be raised?
JF>> You can actually model that in xpdl using an exception, although I
JF>> don't reflect off-hand if that is supported in zope.wfmc.
JF>> Jim
JF>> --
JF>> Jim Fulton mailto:jim at zope.com Python Powered!
JF>> CTO (540) 361-1714 http://www.python.org
JF>> Zope Corporation http://www.zope.com http://www.zope.org
--
Best regards,
Groszer Adam
--
Quote of the day:
Many would be scantily clad if clothed in their humility.
- Anonymous
More information about the Zope3-dev
mailing list