问题
We are in the process of implementing a Plone CMS as a repository for ISO9001-documents.
ISO demands a certain amount of logging, as anyone familiar with the standard probably knows :-)
For the sake of flexibility we would like to incorporate, in no specific order:
- New contenttypes : necessary to incorporate the different documents that can arise in an enterprise
- Versioning: to show that our documents are always up to date, and to show which changes were made vs a previous version of the same document
- Working copy support: so that a "published" document stays online while it is being edited
- More complex workflow: to account for the review processes which are obligated by ISO
- Different workflow for different documents: as workflow are dependent on the type of the document.
Therefore, the holy grail of workflow optimisation should be (and please correct me if I'm wrong):
- Dexterity for the content types
- CMFEdition (embedded in Plone) for versioning
- Iterate for working copy support
- plone.app.workflowmanager for the new workflows
- Products.CMFPlacefulWorkflow for the different workflows according to different documents
The problem is the integration of the different products:
- How do you get versioning to work with Dexterity?
- How do you add working copies on top of that (keeping the necessary versioning)?
- And how do you get your shiny new workflow (great UI btw for workflowmanager) to play nice with both versioning AND working copies.
I scoured the google-realm and already found these links:
- Working copies and workflows : http://plone.org/products/iterate/documentation/how-to/working-copy-workflow-customization
- Dexterity and Versioning: http://plone.org/products/dexterity/documentation/how-to/adding-versioning-to-dexterity-content-types
We also checked out:
- Archetypes contenttypes versioning: http://plone.org/documentation/manual/developer-manual/archetypes/appendix-practicals/enabling-versioning-on-your-custom-content-types
which are all installed and configured...
However, my new content type does not allow for checkout/checkin (Iterate product), and neither are versions/changes tracked in the history-view for this same contenttype.
Is their a magical sequence to follow or am I missing something (or alot -which is more likely)? Because if all these products were to work "out of the box" in my opinion this is a catchall solution to all things workflow...
addition 2012/04/17: As remarked by thet, the stack is completed with both
- versioningbehavior for Dexterity: http://pypi.python.org/pypi/plone.app.versioningbehavior
- stagingbehavior fro Dexterity: http://pypi.python.org/pypi/plone.app.stagingbehavior
回答1:
You need to use plone.app.stagingbehavior (http://pypi.python.org/pypi/plone.app.stagingbehavior), which links Iterate/CMFEditions to Dexterity types. Not sure about your versioning issues.
回答2:
You can also plug in the versioningbehavior
And stagingbehavior.
来源:https://stackoverflow.com/questions/9788737/the-holy-grail-of-plone-workflow