Safety Reporting App
Manage the reporting process across multiple user roles
Function: Inspections & Surveys
For demonstration purposes, this app allows the user to change their role. However, sample apps are read only. To experience the different roles, copy the app to your account. Then perform the following steps: 1. Click the hamburger menu button 2. Click the Users table 3. Add a new record to the Users table with the email address you used to login to AppSheet 4. Save the form 5. Click the hamburger menu 6. Click on Demo Mode - Here you can select between three different roles. Clicking a role will update your row of the Users table. This allows you to see the experience of all three roles from a single device. In a production app, you would typically limit visibility of this view to admin users only. The Safety Reporting app provides a tool for people working in construction to report, track, and mitigate accidents and incident near-misses. The demo mode gives you the ability to preview the app as it appears to employees working in three different roles: onsite safety, site lead, and safety board. People working onsite enter their jobsite and define whether the report describes an incident or an accident near-miss. The reports include a priority level, description, and place to upload an image. The site lead can review new events, see a map of all job sites, and view open maintenance tickets. Finally, the safety board dashboard allows board members to create maintenance tickets with priorities and deadlines.
Also see: tablet mode & fullscreen mode
How we built this app
This app has four primary tables: - "Reports" holds information about the safety reports coming from the field. When a new report comes in, an initial value formula sets the [Needs Review] column to True. - "Users" holds information about each user including their role. Many of the views have a show_if formula that uses a Lookup() formula to check the role of the logged in user. - "Job Sites" holds information about each job site, including its address. - "Maintenance Tickets" holds information about the maintenance tickets. The views use Show_if statements based on the the logged in user's role. The logged in user's role is specified in the User's table and accessed by a Lookup() statement. By using these formulas, the experience a user has inside the app will be customized to their role. The Site Lead and Safety Board roles both have access to a dashboard to show information specific to their roles. The Site Lead dashboard has a list of Reports where [Needs Review] is True. This view is based on a slice where the row filter condition is applied. When the Onsite Safety adds an event, the app sends an automatic email to the Site Lead. This is accomplished using a Workflow. The email is based on a template and includes a link to the app so the Site Lead can easily view the event and complete the review.
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.