On Thursday 27 October 2005 08:26, Adam Groszer wrote: > I'm doing these reverse engineerings because I have to create a document > management app with the following basic requirements: > - Document storage > - Version control > - Workflow control > - Basic search and filter > - Basic export function > The focus is currently on the document follow-up. > Important is, that the workflow is user defined, not developer or > designer defined. > > As I checked zope.app.versioncontrol and zope.wfmc are my friends.
You should join the Z3ECM team. Roger has built a high-level API for document-centric workflows already, as far as I know. > The versioncontrol module is quite clear. > > With wfmc, after checking the source, my current problems are: > - how to keep the process definition persistently in the ZODB? It's up to you. You might want to check SchoolTool; I have implemented a full WfMC workflow there; schooltool.level For example, in SchoolTool we have a promotion workflow for students. Thus I store the workflow on the student using an annotation. The process is attached and detached using subscribers to the IProcessStarted and IProcessFinished (?) events. > - as our current app design assigns one workflow for one document, I > think I can pass this document as the Process.context The process instance has no context. But you might want to make the document a workflow-relevant data attribute. It all depends on whether you want to make the document part of the workflow and use it in the workitems. > - how to connect the conditions of the arbitrary user defined workflow > to the (almost) static application, I think I'll have to put on the > UI the possible output parameters somehow I think you still do not fully understand the difference between the workflow definition and the "realization" (or implementation). The conditions are part of the definition, the applications are the hooks to the rest of the framework. Again, I think the SchoolTool promotion workflow might be a good start for you. It also has a detailed README.txt file for both, the Python API and the browser UI. Regards, Stephan -- Stephan Richter CBU Physics & Chemistry (B.S.) / Tufts Physics (Ph.D. student) Web2k - Web Software Design, Development and Training _______________________________________________ Zope3-dev mailing list Zope3email@example.com Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com