On Wed, Mar 4, 2009 at 7:20 AM, John Mettraux <[email protected]> wrote:

>
> On Wed, Mar 4, 2009 at 5:30 AM, J B <[email protected]> wrote:
> >
> > 1. PR is attached and a form field is completed with the PR's dollar
> value.
> > Manager is selected from drop down box.
> > 2. PR is routed to that manager's work queue and he/she is notified via
> > email.
> > 3. Manager approves or disapproves.
> >   - Approve: see step 4.
> >   - Reject: PR is marked rejected and returned to initiator.
> > 4. If dollar value is greater than $10000, PR is routed to CFO for
> approval.
> > If not, it goes directly to number 6.
> > 5. If CFO approves, capex is routed to Accounting for approval. If not,
> > rejection as above.
> > 6. If Accounting approves, PR is marked as complete and submitter is
> > notified. If not, rejection.
> > 7. Complete.
>
> Hello again,
>
> I've uploaded something at http://gist.github.com/73813
>
> It explores some variants (like using a subprocess definition, ...)
>
> Questions are welcome.


Thanks very much for this. I've spent the morning trying to put together a
driver that will push this process through. I'm not quite there yet, but I'm
learning, and I really appreciated your time.

>
> "attaching" documents to process instances is IMHO a bad thing : we
> live in a web/internet world, everything should have a URI (IRI), even
> if it's just a path to a document in the forgotten Z: drive or an
> identifier in some Lotus Notes drawer. Like, in programmation, we tend
> not to copy each value, but we pass pointers, pass the URL to stuff /
> documents, let workflow/BPM stuff be independent of the
> content/record/document management stuff.
>

Agreed...I planned to handle this outside of the engine itself. Sorry if I
muddied the waters a bit.


> Ruote process definitions only know about participants (and
> subprocesses), users and roles emerge later (sorry, no convention over
> configuration here).
>

Yes, I'm still getting my head around this concept. So, for example, in the
capex example you provided, I believe I need to register these participants:

engine.register_participant(:initiator, OpenWFE::FileParticipant.new)
engine.register_participant(:manager, OpenWFE::FileParticipant.new)
engine.register_participant(:cfo, OpenWFE::FileParticipant.new)

I'm a little confused on this:

participant :ref => '${field:initiator}', :activity => 'notification'

The rdoc would seem to indicate this should be ${f:initiator}, so I'm sure
I'm missing something.

And, a bit confused on archival, although I'm wondering if that's a
participant to be defined as well?

Would you mind explaining the difference between field usage with the dollar
sign and without? Example:
_break :unless => '{f:approved}'
vs
participant :ref => '${field:initiator}'

I looked through the documentation for participant definition, and it
appears that :activity is not a named attribute it expect, so am I to assume
this simply is put into the workitem's hash? How would this workflow be
driven in this case?

Sorry...it's taking a bit to clear this fog.

I'd be interested in hearing how others learned ruote....if anyone cares to
share.

Thanks,
John

--~--~---------~--~----~------------~-------~--~----~
you received this message because you are subscribed to the "ruote users" group.
to post : send email to [email protected]
to unsubscribe : send email to [email protected]
more options : http://groups.google.com/group/openwferu-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to