This week we are having the PowerApps911 annual get together. Our team is made up of people from all over and we all come together once a year for some good ole fashioned fun. One of the team building things we do is build a solution as a small team. This year, the challenge is to build something that makes the company better. Could be something we sell or something that improves an internal process.
Me and a few others are responsible for judging these solutions and grading them across a range of criteria. And to keep it fair, we want each judge to score the event on their own by assigning points to the different criteria.
And of course, we want things to be as flexible as possible so we can use it with different criteria or judges all while not having to rework the app. If this sounds interesting to you then follow along and I will give you a closer look.
Or if you want to see then there is a full video walkthrough of this app here. In the video, I dive deep into each feature and functionality, showing you how to set it up step-by-step.
Key Features of the Event Scoring App
Below you will find a list of the various screens and some of their functions.
Security
The app is configured so only the Event Organizer, and the Judges have access. The Event Organizer has full access to all functionality while the Judges can only see the Score screen, they cannot see what other judges have scored the event nor can they see a team's total, just the scores they entered.
Judges Setup
The app allows you to configure judges using Azure AD Security Groups. This simplifies the process of granting access to judges, making it easy to manage permissions. By adding someone to the group, they automatically get access to the app.
Scoring Criteria Configuration
Setting up scoring criteria is a breeze with this app. You can define the criteria and their descriptions, as well as the maximum points available for each category. This ensures that all judges have a clear understanding of the scoring metrics.
Team Management
The app lets you manage teams by listing all team members and adding any relevant comments. This is particularly useful for keeping track of who is on which team, especially during large events.
Both the Criteria and Teams screen are just simple Galleries and Forms, easy data = easy screen.
Scoring
This screen is kind of complicated to build so it is easy to use for the users. I had to go through a few testing passes with Nicola to get it to her liking. 😻 You start by choosing a team and click Start. This loads the criteria, and any past scores you entered into a collection. This part had to be very dynamic, if someone adds a new criteria everything must work, no hard coding. We do this with collections and a gallery to make an editable grid. All fields automatically update using OnChange so no saving required. There is also validation to make sure you don't award too many points.
Once you are done scoring a team you hit Submit and it is pushed back to the data source, which is Dataverse for this app. Lots of little details shown in the video, this screen took the most time to build for me.
Results Reporting
Now we need to know who won. This screen is made up of a Chart control and then and HTML control. Making the HTML table in the bottom right also dynamic was very tricky, required nested Concat functions and a lot of elbow grease. 😎 In no shock to anyone who has been to the site before, the dogs won by a lot!
Mobile Version
Because I am a judge, and I want to score from my phone, I built a simple one screen app for scoring only. I built it in less than 10 minutes but literally copying and pasting from the desktop scoring screen and then just resizing. 🤩 Not beautiful but super easy!
Get the App
You can download this app and start using it for your own events. Just head over to our YouTube library and sign up to get access to the solution package. It includes all the necessary tables, security roles, and both versions of the app.
Need Help?
If you need any assistance with this app or any other Power Apps project, PowerApps911 is here to help. Just scroll down to the contact form on our website and get in touch. Whether it's training, consulting, or mentoring, our team is ready to support you.
Comments