Working with Processes
A database stores data. MinistryPlatform goes beyond this by managing the actions that need to take place when data is added or edited. You have the opportunity to define those actions and, when appropriate, indicate the individual users to perform the actions. This means that the folks submitting data don’t need to know what will happen; instead, the Platform checks the workflow rules to see what needs to be done.
Think of workflow in MinistryPlatform as the sum of all actions that need to happen when information is added or edited in MinistryPlatform. You define these actions. Workflow is made up of 3 things:
Processes – A planned course of action that is called upon when certain conditions are met in relation to one record on one page (e.g., processing a new Group Inquiry).
Process Steps – The specific actions that make up a single process (e.g., sending an email to someone who submitted a Group Inquiry). Steps can cause the following actions to take place:
- A task assigned to a user (e.g., make a phone call, grant approval, send a mailing, review of the record).
- Approval needed from a user.
- A message sent by the system.
- A task performed by the system.
Process Submissions – Instances when a change to a record invokes a process (e.g., following up on John Smith inquiry about the Singles Bible Study group). A submit task is created when a record is created/edited on any page where there is a Process turned on if the record meets the criteria in the Process (see Special Considerations: Submission below). Upon saving the record, the User will be prompted to Submit the record to the Process.
If a record is added or edited through the platform, the record will need to be submitted to the Process. If the record is edited or created via the API (the portal, mobile app, check-in, etc all use the API, some third-party applications also use the API) the record will automatically be submitted. If the record is automatically added to the Platform via the database, the process will not be triggered.
A page may be associated with more than one active Process. If there is more than one, the record status is affected by all active Processes.
A Process creates tasks for Users to move through the workflow defined by the Process. A Task can also be created using the Assign A Task Step-Type. Completing the Task moves the Process forward in the workflow.
In the My Tasks tab on the Home page, all open tasks assigned to you are listed. Approval, Submission and Assigned Tasks have an attached record you can navigate to using the Edit Task dialog.
The record associated with a Process remains in yellow status until all tasks from all related Processes are completed in the affirmative. Any rejected approval task along the way shuts the whole thing down and puts the record in red status. Any qualifying edit to the record also shuts the whole thing down and starts all related Processes over again.
In order for any workflow steps to take place, a record has to be submitted to a Process. There are two ways this happens:
- When edited in the Platform (and submitted by a user), or
- When edited by the API (and automatically submitted).
Upon saving the record, the User will be prompted to Submit the record to the Process. They can click Submit to Submit the Process (this will complete the Submit Task) or click Cancel to submit later (the Submit Task will then remain for the User to complete later).
When a record has not been submitted, the Process creates a submission task for the User who edited the record. The task indicator for the record appears yellow until the record is submitted.
Submission is required when a record meets the conditions specified in the Trigger Fields and Dependent Condition settings in the Process.
To Submit Multiple Records At the Same Time
If you create several records and want to submit them for approval en masse (rather than one at a time):
- Go to Home > My Tasks tab
- select all SUBMIT Tasks
- click Complete.
Approval is required for when a Process defines a Get Approval Step. The Approval button (verb) will appear in the toolbar above the record.
If your Process is improperly configured and the Process encounters an error, the Process workflow will still submit data changes and may create or alter records.
It is important to note that If you have a filtered page, keep in mind that workflow processes are page specific. The workflow Process must be on the page that users are using to create records for the process to fire.
If records are created outside of the platform (in the portal, for example), the generic, unfiltered page is always used.
Read Only Fields
Any fields that begin with an underscore are read-only in the Platform. They can be updated by Processes, but not directly edited. Since they can not be directly edited, they can not be used as Trigger fields.
Read-only fields begin with an underscore. This includes hidden fields (which begin with double-underscore).
Responding to Missing Data
If you want to respond when information is missing, this requires special handling (such as a stored procedure to check for complex data relationships and a SQL agent job to run the stored procedure on a set schedule). If this is what you are looking for, you may want to contact Professional Services to talk through your project.
As an overview, here is a quick summary of the information provided above.
Anytime a record is added or edited in MinistryPlatform, the system checks to see if the record qualifies for a workflow Process. If it does:
- The record addition/edit must be submitted. This happens automatically if the record was added/edited via the API. All other instances must be submitted manually by clicking Submit.
- Process Steps fire in order one at a time. As Steps are worked through, the record's task status indicator light is yellow.
If a Process Step fails, no further Steps are processed.
- If a Process Step fails or is rejected by the user it's assigned to, the submitting user is asked to review the record. They can then edit the record and re-submit the necessary changes, or delete the record.
- If a user fails to complete a task by the deadline and the task is set to escalate, the system automatically transfers the task to another user.
- Escalated or rejected tasks have a red task status indicator light.
- When the final Step is completed, the record has a green task status indicator light.
Video Topics: Creating a Workflow Process
0:09 - Gathering the Needed Information
1:40 - The Process Record
2:56 - Adding Steps
4:33 - Testing the Process
Video Topics: Advanced Processes
0:13 - The Main Page for the Process
1:24 - The Steps Sub Page
2:08 - Testing the Process