61
Easy Online Business Processes with Plone Forms and Workflow for Make Benefit Glorious Nation of Canuckistan T. Kim Nguyen <[email protected]> University of Wisconsin Oshkosh http://uwosh.edu/ploneprojects

Easy online business processes with Plone forms and workflow

Embed Size (px)

Citation preview

Page 1: Easy online business processes with Plone forms and workflow

Easy Online Business Processes with Plone Forms and Workflow

for Make Benefit Glorious Nation of Canuckistan

T. Kim Nguyen <[email protected]> University of Wisconsin Oshkosh http://uwosh.edu/ploneprojects

Page 2: Easy online business processes with Plone forms and workflow

Don’t be a chump

• Filling out paper forms: BAD

• Tracking / distributing / filing paper forms: BAD

Page 3: Easy online business processes with Plone forms and workflow

Online forms + workflow processingBe a 21st Century Hero

Page 4: Easy online business processes with Plone forms and workflow

Fast• Online forms = fast, accurate data

• Online forms workflow processing =

• email notifications

• dashboard & collections to list forms in process

• fast search/lookup

Page 5: Easy online business processes with Plone forms and workflow

Cost Savings

freeing up staff (e.g. half a person’s time) allow lean organizations to remain effective

make your office more productive

Page 6: Easy online business processes with Plone forms and workflow

Time Savingsphysically moving paper forms between buildings

!making copies to distribute to

3rd parties !

locating paper forms in process

!filing/storage

!retrieving filed papers

Page 7: Easy online business processes with Plone forms and workflow

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

Page 8: Easy online business processes with Plone forms and workflow

What tools do you need?

things Plone ships with !

& !

some add-ons

Page 9: Easy online business processes with Plone forms and workflow

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)

Page 10: Easy online business processes with Plone forms and workflow

PloneFormGen• drag & drop fields into place

• sophisticated defaults, validation, overrides

• sends email, saves data

• can auto-populate name & email address, other user attributes

Page 11: Easy online business processes with Plone forms and workflow

D2C: form ➡ real content objects• objects are editable & you can assign a workflow

Page 12: Easy online business processes with Plone forms and workflow

ATVocabularyManagerdefine preset lists of values users choose from in form

selection/multiselection fields

Page 13: Easy online business processes with Plone forms and workflow

Data grid field• you define the columns

• users dynamically add & remove rows of input

Page 14: Easy online business processes with Plone forms and workflow

Workflow Manager

• Workflow is everywhere in Plone, so let’s use it

• But first let's put a prettier face on it

Page 15: Easy online business processes with Plone forms and workflow

Before… (ZMI)

Page 16: Easy online business processes with Plone forms and workflow
Page 17: Easy online business processes with Plone forms and workflow

…and After: States

Page 18: Easy online business processes with Plone forms and workflow

Transitions

Page 19: Easy online business processes with Plone forms and workflow

Diagram generator

!

!

• coming soon: diagram-centric UI! (Sam Schwartz)

Page 20: Easy online business processes with Plone forms and workflow

• customize state and transition security (roles, permissions, groups)

Page 21: Easy online business processes with Plone forms and workflow

• Easily create email notifications on transitions

Page 22: Easy online business processes with Plone forms and workflow
Page 23: Easy online business processes with Plone forms and workflow

Security

• who can see and edit submitted forms?

• who can initiate transitions?

(Roles and Permissions)

Page 24: Easy online business processes with Plone forms and workflow

Simple security

Business process owner ➡ Manager Users ➡ Anonymous or Authenticated

Page 25: Easy online business processes with Plone forms and workflow

More complex security

Business process owner ➡ Manager

Office staff ➡ new custom roles

!- front desk,

- office manager - director

- faculty advisor

Users ➡ Authenticated

Page 26: Easy online business processes with Plone forms and workflow

Big *ss buttons

• uwosh.transitionbuttons by Sam Schwartz

Page 27: Easy online business processes with Plone forms and workflow

Templated emails• collective.easytemplate

• use powerful expressions in emails: recipients, subject, body

• templated pages and portlets too

• {{ list_folder("courses") }}!

• {{ context.Title().decode("utf-8") }}!

• {{ context.getBody() }}!

• {{ context.absolute_url() }}!

• {{ context.aq_parent.sister }}

{% if portal_state.anonymous() %}! anon!{% else %}! logged in!{% endif %}

{{ query({"portal_type":"News Item","sort_on":"Date","sort_order":"reverse","sort_limit":3,"review_state":"published"}) }}!

Page 28: Easy online business processes with Plone forms and workflow

Tools (included with Plone)• Products.CMFPlacefulWorkflow

• collections

• portal_catalog

• portlets

• dashboard

• search

• comments (plone.app.discussion *OR* workflow state change comment)

Page 29: Easy online business processes with Plone forms and workflow

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)

Page 30: Easy online business processes with Plone forms and workflow

Collectionssimple “dashboard”: folder containing several collections

Page 31: Easy online business processes with Plone forms and workflow

Display ➡ All content

Page 32: Easy online business processes with Plone forms and workflow

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

Page 33: Easy online business processes with Plone forms and workflow
Page 34: Easy online business processes with Plone forms and workflow

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!)

Page 35: Easy online business processes with Plone forms and workflow

Search

Page 36: Easy online business processes with Plone forms and workflow

Plone’s built-in commenting• threaded commenting, email notification, moderation, captchas

Page 37: Easy online business processes with Plone forms and workflow
Page 38: Easy online business processes with Plone forms and workflow

Workflow transition comments• add a comment as long as a transition occurs

• visible through State ➡ Advanced…

• plaintext only

Page 39: Easy online business processes with Plone forms and workflow
Page 40: Easy online business processes with Plone forms and workflow
Page 41: Easy online business processes with Plone forms and workflow
Page 42: Easy online business processes with Plone forms and workflow

Landing Pages

Page 43: Easy online business processes with Plone forms and workflow
Page 44: Easy online business processes with Plone forms and workflow

User Instructions

Page 45: Easy online business processes with Plone forms and workflow
Page 46: Easy online business processes with Plone forms and workflow
Page 47: Easy online business processes with Plone forms and workflow

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)

Page 48: Easy online business processes with Plone forms and workflow

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

Page 49: Easy online business processes with Plone forms and workflow

Advising Worksheet

up to 150-200 filled out per day… 12,000 since August 2013

Page 50: Easy online business processes with Plone forms and workflow

Student IT Job Applications

442 filled out since March 2013

Page 51: Easy online business processes with Plone forms and workflow

Institutional Review Board Approval

180 fields !

60 states !

114 transitions

Page 52: Easy online business processes with Plone forms and workflow

Contract ManagementDexterity content type

!70 contracts (since Oct. ‘14)

!PDFs, contact info, renewal

dates

Page 53: Easy online business processes with Plone forms and workflow

PloneFormGen or Dexterity?

Page 54: Easy online business processes with Plone forms and workflow

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?

Page 55: Easy online business processes with Plone forms and workflow

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

Page 56: Easy online business processes with Plone forms and workflow
Page 57: Easy online business processes with Plone forms and workflow

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?

Page 58: Easy online business processes with Plone forms and workflow

Workflow Manager enhancements

• Better UI for creating templated email notifications

• Expose transition guard expressions & create expression builder

• *** New UI: directly manipulate the diagram (Sam Schwartz) ***

Page 59: Easy online business processes with Plone forms and workflow
Page 60: Easy online business processes with Plone forms and workflow
Page 61: Easy online business processes with Plone forms and workflow

Next Steps

• Try it!

• Questions?

[email protected]

• http://uwosh.edu/ploneprojects