Schedule shifts and manage timesheets for frontline workers
Function: Field Service
This app will help you sign up for shifts, clock in & clock out when you're ready, request cover when you need it, and view your timesheet. It also has the ability to create repeat shifts, create a performance dashboard and send a PDF of the user's latest timesheet.
Also see: tablet mode & fullscreen mode
How we built this app
Sign Up to Clock Out - There is a table for available shifts, booked shifts and timesheet. When a user signs up for a shift (sign-up action), their user email is recorded in the booked table with a reference to the available table. When they clock in for their shift (clock in action), their user email is recorded in the timesheet table with a reference to the booked table. Finally when the shift is over (clock out action) the end time in the timesheet table is recorded. --- Request Cover and Cover Request - After a user signs up for a shift (sign-up action), their email is recorded in the booked table and will show up in the "My Shifts" tab of the app. The request cover action is available for any booked shift that has not already started. After a user selects this option, a reference is created in a swaps table. Until the shift has been covered, the original shift owner will continue to see this shift in the "My Shifts" tab. Any swap that does not have a replacement will appear in the "Cover Requests" tab until another user covers that request (swap shifts action). The swap action will also update the capacity of the available table. --- Shift Manager - Within the "Shift Manager", the user has the ability to create a repeating shift schedule. This leverages a looping action that repeats as long as the total number of shifts required has not been added to the available table. To create this loop, there is a controls table that has a column, copies done, that starts at 0 and then increases as the new rows are added to the available table. The scheduled start date column is set within loop 1: add to available action. This action contains the necessary logic to calculate the repeating schedule. --- Summary Timesheet - The summary timesheet is a slice of the timesheet table that restricts rows to those that apply to user email. There is also the ability to export that timesheet which uses an automation to send a customized PDF to the user email. The PDF includes a table that dynamically resizes as the number of shifts increases.
This is a preview of the data sets used in the app.
This is a high-level model of both the data entities and the UI elements in the app.