[Zope-CMF] Workflow first cut is ready
seb bacon
seb@jamkit.com
Wed, 23 May 2001 15:19:21 +0100
> A transition can either be triggerred automatically, by a UI action, or a
> wrapped workflow method. doActionFor() indicates UI actions. Executing
> any WorkflowMethod (see WorkflowCore.py) indicates workflow methods. In
> the future I envision adding timeout triggers and external event triggers,
> similar to ACS 4.
>
> In practice, normally the ID of a transition matches either a UI action ID
> or a workflow method name, which I didn't foresee.
Yes, that's why it confused me. Wouldn't it improve usability to
enforce id naming to follow this convention, and do away with the
named action triggers?
<snipped stuff about re-editing published documents>
> > Do you think the new WorkFlow could meet the above requirement without
> > any changes?
>
> I don't know. I've been pondering that myself and I haven't found the
> *right* way to fit it in. Certainly it can be wedged in but I think
> there must be some way that would fit nicely.
If it were to be catered for in the framework, I imagine it would have
to interact with some kind of a Version component. Then you'd just
have to call a script from the transition as we've discussed, which
would manipulate the Version.
As for what the Version component would be, I'm not sure. It could be
a VersionTool which acts as a registry / repository of versioned
components (e.g. "portal_version.createNewVersion(this())",
"portal_version.listVersions()", etc), but that sounds like a potential
performance bottleneck to me. Still, it *would* be useful, for other
stuff too, like audit trails for documents in an extranet, etc.
> > Do you think transitions should have the ability to call scripts?
>
> Yes. I was hoping you'd ask that. I think it should be possible to
> specify a script that gets executed just before the transition occurs. Is
> that what you're looking for?
Yes please! And of course it should be able to throw an exception.
seb