A Vacation Request Process
In this walkthrough we'll configure a workflow for a vacation request. This is the process we'll be implementing:
1. The employee submits a vacation request form. Emails are sent to the employee acknowledging the receipt and also to the manager notifying him or her of the vacation request.
2. The employee's manager reviews the request and either approves or rejects it. If rejected the form is sent back to the employee for additional information or modification. This review/modification loop repeats indefinitely until it's approved.
3. Once the vacation request has been approved it's sent to the Human Resources department for processing. The responsible person in HR registers the vacation days and enters the number of remaining days into the form.
A flowchart of the process using swim-lanes might look like something this:
Download and import the sample Vacation Request Form into Gravity Forms. It will looks like this. Notice that the last two fields are 'admin-only' fields (check the setting in the advanced tab). This means they won't be visible on the form for for the user in the initial submission but they'll be visible in each of the workflow steps.
Add the Workflow Steps
You can see from this screenshot that the system currently has one entry pending modification by the employee. Tip: if you click on the number of entries you'll be taken to the Gravity Forms Entry List filtered for the step.
Add an Approval Workflow Step: Manager Approval
There are a number of ways to configure an approval step for different departments. One way is to use the Assignee field and allow the user to choose the user account. In this walkthrough, we're going to configure conditional routing based on the value of the Department dropdown field.
Important: you won't be able to specify the next steps until they've been created so you'll need to come back to finish the configuration of this step.
Add an Input User Step: User Modification
In this step, we'll assign the form to the form submitter by selecting the User (Created by) field.
If you don't see the User (Created by) field you'll need to make sure that you have the "Require user to be logged in" setting enabled in the Form Settings.
The editable fields will be the Date From and Date to fields.
Notice the next step goes back to the previous step creating the review/modification loop.
Add another User Input Step: HR Processing
This is the step when the HR user enters the number of vacation days remaining and optionally add comments.
Next Steps: The Vacation Requests Extension
Vacation Requests can be managed with standard forms but the Vacation Requests Extension provides some additional features to make them easier to manage.