It’s that time of the season where vacation requests are starting to come in for summer. Whether your organization is small or large, having an approval system in place can be crucial to keep things straight and make sure not too many people are out at the same time. Below we will go over how to create a SharePoint vacation request form, creating a Power Automate flow for manager approval, and then having it display on a SharePoint calendar. Having the vacations display on an internally viewable calendar will also help self-service vacation requests so employees can plan accordingly. As a warning – For the below workflow to work as expected, the user’s manager needs to be set correctly in Azure AD.
On the SharePoint site you wish to add the request form & Calendar, perform the following steps
Click New -> List
- Name: Vacation Requests
- Description: Vacation Requests List
- Leave checked: Show in site navigation
- Change Column Name to: Vacation Requestor
- Require that this column contains information: Yes
- Click the “OK” button
- Column Name: Start Date
- Type of Information in this column is: Date and Time
- Require that this column contains information: Yes
- Date and Time format: Date & Time
Repeat the above steps for “End Date” column Select “Versioning Settings” -> enable “Require content approval for submitted items?”
Microsoft Power Automate
At this point, we will perform the rest of the work in Power Automate (Flow). This can be found in your Office 365 app launcher (Square grid in top left corner) or by going to https://us.flow.microsoft.com. Power Automate is Microsoft’s answer to the “If this; than that” question. Flows enable users to create automated workflows through many of Microsoft’s cloud products. Select My Flows -> New -> Create from template Select “Approval” tab -> Start approval when a new item is added -> click “Continue” button
- Rename to Vacation Requests
- Site Address: Select your SharePoint URL from the drop down list
- List Name: Will auto populate from the previous lists we created, select “Vacations Requests”
- In search type “Get manager” -> Select “Get manager (V2)”
- User (UPN): under Search dynamic content type “Created by” -> Select “Created by Email”
- Title: Please review: Vacation Requestor’s Vacation Request
- Assigned To: Mail
- Details: Created By DisplayName at Created
- Item Link: Link to Item
- Item Link Description: Name’s Vacation Request
- To: Created By Email
- Subject: Approved By: Approver Name
- Site Address: Use same URL as used in first step of flow
- Library Name: Select list created for vacation requests
- Id: ID
- Action: Approve
- Comments: Approved By: Approver Name
- Site Address: Use same URL as used above
- Library Name: Calendar will not display in drop down, but type in name exactly as it was created above
- Title: Created By DisplayName’s Vacation
- Start Time: Start Date
- End Time: End Date