Knack can be used to build some very complex apps. One element of a complex app that will often come up for discussion is workflow.
What do we mean by workflow? A workflow is a series of steps that are followed in order to complete a task. Typical workflows consist of a user completing some work and then alerting the next user in the flow to do further work, until the task is completed.
Rather than a rigid workflow design tool, Knack offers flexible features that can be used to create multiple types of work flow:
- Filter Records: each view can filter records based on any criteria you define. This is great for workflow where you can create “status” fields to track the stage of a process. For example, you can filter a table of projects by “proposal”, “active”, “pending approval”, and “complete”. This way you can just show “active” projects when managing a work schedule.
- User Roles: user roles are used to define different permissions and access to your data. So “Project Managers” can see an entire project and assign tasks to “Staff”, while Staff can log in and just view the tasks that have been assigned to them.
- Form Rules: you can use form rules to trigger actions to update records, insert records, and more when a form is submitted. So when Staff fills out a form to complete a task, a form rule can then set the “Status” of that task to “complete”.
- Email Notifications: another form rule option is to send emails. So when the task is complete an email could be sent to the Project Manager notifying them of the update.
- Scheduled Tasks: tasks can be scheduled to update records or send emails based on criteria you define. So if a project due date is past the current date, an email could be sent to the Project Manager.