Plone is an open source content management system that can help your organization save money, improve efficiency, and enhance customer satisfaction through online forms and electronic workflow / business processing.
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
Easy Online Business Processes with Plone Forms and Workflow
1. Easy Online Business
Processes with Plone
Forms and Workflow
for Make Benefit Glorious Nation of Canuckistan
T. Kim Nguyen <nguyen@uwosh.edu>
University of Wisconsin Oshkosh
http://uwosh.edu/ploneprojects
2. Don’t be a chump
• Filling out paper forms: BAD
• Tracking / distributing / filing
paper forms: BAD
3. Online forms + workflow processing
Be a 21st Century Hero
4. Fast
• Online forms = fast, accurate data
• Online forms workflow processing =
• email notifications
• dashboard & collections to list forms in process
• fast search/lookup
5. Cost Savings
freeing up staff (e.g. half a person’s time)
allow lean organizations to remain effective
make your office more productive
6. Time Savings
physically moving paper
forms between buildings
!
making copies to distribute to
3rd parties
!
locating paper forms in
process
!
filing/storage
!
retrieving filed papers
7. Frustration Savings
• “Did you get the form I
submitted?”
• “Where is my form in
the process?”
• “Why is it taking so
long?”
• No more data entry,
duplication, or errors
8. What tools
do you
need?
things Plone ships
with
!
&
!
some add-ons
9. Add-ons
• PloneFormGen (Products.PloneFormGen)!
• D2C (uwosh.pfg.d2c)!
• Vocabularies (Products.ATVocabularyManager)
• Data grid field (Products.PFGDataGrid)
• Workflow manager (plone.app.workflowmanager)!
• Big transition buttons (uwosh.transitionbuttons)
• Templated emails (collective.easytemplate)
10. PloneFormGen
• drag & drop fields into place
• sophisticated defaults,
validation, overrides
• sends email, saves data
• can auto-populate name &
email address, other user
attributes
11. D2C: form ➡ real content objects
• objects are editable & you can assign a workflow
25. More complex security
Business process
owner ➡ Manager
Office staff ➡ new
custom roles
!
- front desk,
- office manager
- director
- faculty advisor
Users ➡ Authenticated
29. CMFPlacefulWorkflow
• activate to create a workflow policy (assign a
custom workflow) in a specific D2C folder
• (not needed if you tell D2C to create a new content
type)
32. Catalog indexes
& collection criteria
• You want to create a new collection criterion, e.g. “student job
type”
• see “how to add fields from a uwosh.pfg.d2c adapter to collection
criteria” http://www.uwosh.edu/ploneprojects/docs/developers/ploneformgen-fu/uwosh.pfg.d2c-collection-
fields
• ZMI: add a Script (Python) to return the attribute value if it’s
there
• portal_catalog ➡ Indexes: add FieldIndex
• Site Setup ➡ Collections, All fields, check box
33.
34. Use portlets!
• static text portlets to display general links
• collection portlets and “recent items” portlets
• content type portlets: display links or help specific to a
content type (Site Setup ➡ Types)
• group portlets: display links or help specific to the logged
in person’s group membership(s) (Site Setup ➡ Users and
Groups ➡ Groups tab)
• use Plone’s built-in dashboard (also supports group
portlets!)
47. Examples
• Study abroad application, program management
(Office of International Education)
• Student advising worksheet
• Student job application (Div. of Information
Technology)
• IRB approval (Office of Grants)
• Contract management (College of Nursing)
48. Study Abroad
5,984 processed
since 2008
!
16 workflow states
!
savings: $25 per
app + 0.5 FTE per
year = 2.5 FTE = ~
$200,000 total
savings
54. PloneFormGen:
pros / cons
• Good:
• entirely through the web
• robust, time-tested
• easy to specify validators,
default values & expressions
• easy to add adapters: save
data, mailer, custom script, D2C
• thank you page
• default form view looks good
acceptable
• Not so good:
• Archetypes:
• slower? e.g. form with 634
fields
• going away eventually?
55. Dexterity:
pros / cons
• Good:
• through the web type
(“form”) creation/
modification
• no need for D2C to create
content items!
• easy to enable Folderish
behaviour
• Not so good (for users/
integrators):
• still developer-oriented,
requires file system
coding!
• no TTW vocabularies,
validators, mailers, custom
scripts, default expressions
• no TTW rich text labels, data
grid fields, nested field sets
56.
57. Wishlist:
improve (PFG & D2C) or Dexterity
• PloneFormGen: more layouts, e.g. grids, two-column... or dynamic layouts a la
collective.cover?
• D2C:
• make it easy to enable Folderish behaviour
• checkboxes to automatically add catalog indexes & collection criteria for
selected form fields
• Dexterity:
• improve TTW user/integrator experience
• TTW vocabularies
• ..ie. create a Dexterity equivalent of PloneFormGen?