cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
jtillinghast
Frequent Visitor

Beginner Design Question: Building Quick Gradebook/Scoring Form

Hi, all-- forgive a beginner's question, but I am trying to build a quick peer-review gradebook for one of our teachers. We want to have a form which lists the class roster, and gives a dropdown 1-5 scoring list for each student. I want to write this back to an Excel sheet that will store the student's name and score. I've tried two things so far:

1) I made a gallery which pulled the roster, and lets us select a student and enter a score. This is great except that I have to hit submit each time, rather than being able to add all of the scores at once and hit submit. 

2) I tried to create a custom form where each data card had two controls: the number box and a label containing the students name. I can get the score to pass to the form, but I can't get the student's name to write back.

 

Any suggestions on how to approach this would be much appreciated! Thanks--

9 REPLIES 9
Delid4ve
Impactful Individual
Impactful Individual

1: I've not checked this is possible, but I'm pretty sure it is..
On the gallery I'm assuming when you select an item it takes you to a form to enter the score..
What about, within the gallery adding a dropdown for the score, removing the arrow to navigate to the form and instead having 1 confirm button on the screen thats set to Patch gallery.allitems back to your list. Like I say I don't know if this is possible. Another way would be to set the dropdown in the gallery on change property to patch the list(this definitely works as I use this method in my app).

2:is the score and student name in the same list? If so it should be a case of setting the form data source to your list and the item property to gallery.selected. It all depends on how the data is stored tho

Delid4ve
Impactful Individual
Impactful Individual

Just thought about this aswell.. are you using the form on submit function..
From experience, this doesn't show errors on updating fields and you would be better off using the patch function with a filter. It may be that on the data card for student name the update function is wrong, especially if you are using student name but it is stored in the list as an ID number for student from a different list, in this case you would have to set the update property to a lookup(listname,studentname = datacardvalue.text,ID)

Thanks for your help! I'm following your suggestions, and I created a gallery with a dropdown menu. Question: will this create new entries for each score, or will this replace/update the score each time? I'm concerned that it seems like there will only be one master column in my Excel table for "Score," and that value will get replaced with each update. Perhaps I'm not familiar enough with Patch.

 

On another note, I added the drop down menu to the Gallery control, and I set the Items field to = ThisItem.Score (name of column in data source). I have an error that "The property expects table values, but this rule produces incompatible Text values." 

 

Thanks again for your help!

Take a step back, we need to get your data structure right first.

Looking at your post im assuming you want to grade multiple subjects/exams.

1st step, your going to need three lists.

list 1: Students. for starters just create 1 column with their name, you can add other bits later.

list 2: subjects. again, for starters 1 column with the subject name in.

list 3: Grades. 4 columns in this 1, Subject,Grade,student,date.  Set all the column types as numbers except the date, which will be of type date (we will be populating this with the ID from each of the students and subjects lists, and assuming the grade is also a number (if its not then use whatever field type is necessary, keep away from lookup, we can set the choices within powerapps)

 

get started with that and ill post further.

Delid4ve
Impactful Individual
Impactful Individual

Within power apps we are going to need the following screens:

Screen 1: screen to choose what to do - this can have buttons on it with the onselect property set to navigate to each of the next

screen 2: screen to input results for each student for a given subject.

screen 3: screen to view results for a specific student

You can add screens later in order to add new subjects and students and view results by subject.(by then you should have a fairly decent understanding.

 

Screen 1

Each button should have its on select property set to:

Navigate(ScreenName,ScreenTransition:none)

 

Screen 2 - im going to set this up for a single subject, you can change this later if required by moving the dropdown to the gallery and changing your formulas slightly, but at the moment i assume you only want to input for 1 subject but multiple students.

 

Add a dropdown at the top of the screen and set its items property to Subjects on the advanced tab.(the name for your subjects list)

Set its value property to SubjectName (the column name in your list)

Add a date picker also to the top of the screen.

 

Add a gallery.  Set its items property on the advanced tab to Students (the name of your list which contains the students)

Now go to the properties tab and click data, you can now choose ust a simple 1 line gallery and set this to student name.

This should now populate with your students names.

Select the first gallery item so that the section box comes up around it, add a new control, dropdown.  You should see this dropdown get populated in each gallery item (for each student).

Select the dropdown in the first gallery item and on the advanced tab set its items property to [1,2,3,4,5,6,7,8,9,10] (this assumes your grades are 1-10)

Now set the on change property of the drop down to the following:

 

If(IsEmpty(Filter(Grades,Date=DatePickerName.Selected.Value And Subject = LookUp(Subject,SubjectName=SubjectDropdownName.Selected.Value,ID And Student = Thisitem.ID))),Patch(Grades,Defaults(Grades),{Student:Thisitem.ID,Grade:GradeDropdown.Selected.Value,Subject:LookUp(Subjects,SubjectName=SubjectDropdown.Selected.Value,ID)}),Patch(Grades,{ID:LookUp(Grades,Student=Thisitem.ID And Date=Datepickername.Selected.Value And Subject=LookUp(Subjects,SubjectName=SubjectDropdown.Selected.Value,ID),ID),{Grade:GradeDropdown.Selected.Value}))

 

Its not very clean but it will show you how im referencing things, there are better ways to achieve it but this wil help you understand a few functions.  So above we first ask a question wi the If function, that question is: For my selected date, subject and student does a record already exist in the grades table (IsEmpty) .

We then give it something to do for true, so my record doesnt exist so im going to add it (patch).  The defaults part of the patch function will automatically give the record an ID number.

then we give the function a false value. So my record does exist, so im going to update it.  We lookup the ID number for the row using the values we have, and then ammend the grade to the new value. (remember, if we put in a wrong grade and we change it we dont want to create a new record, just ammend the one already created.

 

Doing it this way saves having multiple screens and allows you to enter all the grades without having to confirm or submit anything.

 

Screen 3

 

Add a dropdown and set its items property to Students (listname of your students), change the value property to StudentName

Add a gallery and Set its item property to 

Filter(Grades,Student=Lookup(Students,StudentName=Dropdownname.Selected.Value,ID))

Select the first gallery item and insert a label.

Set the label text property to:

Lookup(Subjects,ID=ThisItem.Subject,SubjectName)

Add another label and set its text property to Thisitem.Grade

 

Probably a few mistakes in their as i havnt tested and had a few beers 🙂 youll have to ensure any names are correct such as dropdown/datepicker names and column/list names but it should give you the foundation of your app to move forward.

Once you get used to the syntax and functions it gets easy.  You could also add in a column for the user that submitted the grade, you can reference the logged in user using User().FullName.

 

Hope this helps.

Delid4ve
Impactful Individual
Impactful Individual

Apologies, ive just posted (waiting approval) but just realised you are using excel as your source, not sharepoint.  I havent had any experience with excel but you should just be able to modify parts of what i have posted to do what you want.  Based on wat you are tring to achieve though, i believe using  database would be a better option going forward and a sharepoint site (private to your organisation) would be a better option for scalability if this is going to be used on a regular basis and throught school years etc.

jtillinghast
Frequent Visitor

This is a little simpler than a full grade book. The end result is that we want to be able to run averages, plot trends over time, etc. I have a data table right now that has five columns: student name, timestamp, submitter ID, score, and a text field for comments. My original plan was to record every entry as a running list of records, so that we could just query the list for assignments matching last name. I have a separate table which is just all the names in the class.
jtillinghast
Frequent Visitor

And yes, I might be better off with a database. Since this is my first power apps run and I'm not very experienced in SharePoint, I wanted to stick with a data source I was comfortable operating, but perhaps that was too limiting?
Delid4ve
Impactful Individual
Impactful Individual

SharePoint sounds scary, I could never understand it for a long time. Now I find uses for it everyday.
I have posted a full breakdown of what you need to do, but for some reason it has gone to waiting approval, maybe because it has code snippets in it. Should show up soon, I hope.
As you have already got your data sources into powerapps from excel you should be able to convert my post for SharePoint into excel format.
Your going to need 3 tables in excel.
1 for students which you have with an ID number
1 for subjects/assignments with an ID number
1 to keep track of grades.
The grades table should have the student ID, subject ID, grade and date
This way you can keep a list of all grades for each student in each subject.
Obviously your excel file has to always be available, whereas the SharePoint way would always be online.
You could always use Microsoft flow to collect data every time a grade is added and automatically produce and email a certificate, generate reports for each student or subject.
Since discovering SharePoint, flow and powerapps it has opened my eyes to how much I can automate and save myself endless time. Watch out my my post to go live, sure it will get approved soon.

Helpful resources

Announcements

Copilot Cookbook Challenge | Week 3 Results | Win Tickets to the Power Platform Conference

We are excited to announce the "The Copilot Cookbook Community Challenge is a great way to showcase your creativity and connect with others. Plus, you could win tickets to the Power Platform Community Conference in Las Vegas in September 2024 as an amazing bonus.   Two ways to enter: 1. Copilot Studio Cookbook Gallery: https://aka.ms/CS_Copilot_Cookbook_Challenge 2. Power Apps Copilot Cookbook Gallery: https://aka.ms/PA_Copilot_Cookbook_Challenge   There will be 5 chances to qualify for the final drawing: Early Bird Entries: March 1 - June 2Week 1: June 3 - June 9Week 2: June 10 - June 16Week 3: June 17 - June 23Week 4: June 24 - June 30     At the end of each week, we will draw 5 random names from every user who has posted a qualifying Copilot Studio template, sample or demo in the Copilot Studio Cookbook or a qualifying Power Apps Copilot sample or demo in the Power Apps Copilot Cookbook. Users who are not drawn in a given week will be added to the pool for the next week. Users can qualify more than once, but no more than once per week. Four winners will be drawn at random from the total qualifying entrants. If a winner declines, we will draw again at random for the next winner.  A user will only be able to win once. If they are drawn multiple times, another user will be drawn at random. Prizes:  One Pass to the Power Platform Conference in Las Vegas, Sep. 18-20, 2024 ($1800 value, does not include travel, lodging, or any other expenses) Winners are also eligible to do a 10-minute presentation of their demo or solution in a community solutions showcase at the event. To qualify for the drawing, templates, samples or demos must be related to Copilot Studio or a Copilot feature of Power Apps, Power Automate, or Power Pages, and must demonstrate or solve a complete unique and useful business or technical problem. Power Automate and Power Pagers posts should be added to the Power Apps Cookbook. Final determination of qualifying entries is at the sole discretion of Microsoft. Weekly updates and the Final random winners will be posted in the News & Announcements section in the communities on July 29th, 2024. Did you submit entries early?  Early Bird Entries March 1 - June 2:  If you posted something in the "early bird" time frame complete this form: https://aka.ms/Copilot_Challenge_EarlyBirds if you would like to be entered in the challenge.   Week 1 Results:  Congratulations to the Week 1 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Copilot Cookbook Gallery:Power Apps Cookbook Gallery:1.  @Mathieu_Paris 1.   @SpongYe 2.  n/a2.   @Deenuji 3.  n/a3.   @Nived_Nambiar  4.  n/a4.   @ManishSolanki 5.  n/a5.    n/a   Week 2 Results:  Congratulations to the Week 2 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Copilot Cookbook Gallery:Power Apps Cookbook Gallery:1. Kasun_Pathirana1. ManishSolanki2. cloudatica2. madlad3. n/a3. SpongYe4. n/a4. n/a5. n/a5. n/a     Week 3 Results:  Congratulations to the Week 3 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Copilot Cookbook Gallery:Power Apps Cookbook Gallery:1. Parul_Yadav_Neo1. n/a2. SpongYe2. n/a3. n/a3. n/a4. n/a4. n/a5. n/a5. n/a

Updates to Transitions in the Power Platform Communities

We're embarking on a journey to enhance your experience by transitioning to a new community platform. Our team has been diligently working to create a fresh community site, leveraging the very Dynamics 365 and Power Platform tools our community advocates for.  We started this journey with transitioning Copilot Studio forums and blogs in June. The move marks the beginning of a new chapter, and we're eager for you to be a part of it. The rest of the Power Platform product sites will be moving over this summer.   Stay tuned for more updates as we get closer to the launch. We can't wait to welcome you to our new community space, designed with you in mind. Let's connect, learn, and grow together.   Here's to new beginnings and endless possibilities!   If you have any questions, observations or concerns throughout this process please go to https://aka.ms/PPCommSupport.   To stay up to date on the latest details of this migration and other important Community updates subscribe to our News and Announcements forums: Copilot Studio, Power Apps, Power Automate, Power Pages

Your Moment to Shine: 2024 PPCC’s Got Power Awards Show

For the third year, we invite you, our talented community members, to participate in the grand 2024 Power Platform Community Conference's Got Power Awards. This event is your opportunity to showcase solutions that make a significant business impact, highlight extensive use of Power Platform products, demonstrate good governance, or tell an inspirational story. Share your success stories, inspire your peers, and show off some hidden talents.  This is your time to shine and bring your creations into the spotlight!  Make your mark, inspire others and leave a lasting impression. Sign up today for a chance to showcase your solution and win the coveted 2024 PPCC’s Got Power Award. This year we have three categories for you to participate in: Technical Solution Demo, Storytelling, and Hidden Talent.      The Technical solution demo category showcases your applications, automated workflows, copilot agentic experiences, web pages, AI capabilities, dashboards, and/or more. We want to see your most impactful Power Platform solutions!  The Storytelling category is where you can share your inspiring story, and the Hidden Talent category is where your talents (such as singing, dancing, jump roping, etc.) can shine! Submission Details:  Fill out the submission form https://aka.ms/PPCCGotPowerSignup by the end of July with details and a 2–5-minute video showcasing your Solution impact. (Please let us know you're coming to PPCC, too!)After review by a panel of Microsoft judges, the top storytellers will be invited to present a virtual demo presentation to the judges during early August. You’ll be notified soon after if you have been selected as a finalist to share your story live at PPCC’s Got Power!  The live show will feature the solution demos and storytelling talents of the top contestants, winner announcements, and the opportunity to network with your community.  It's not just a showcase for technical talent and storytelling showmanship, show it's a golden opportunity to make connections and celebrate our Community together! Let's make this a memorable event! See you there!   Mark your calendars! Date and Time: Thursday, Sept 19th Location: PPCC24 at the MGM Grand, Las Vegas, NV 

Update! June 13th, Community Ambassador Call for User Group Leaders and Super Users

Calling all Super Users & User Group Leaders     UPDATE:  We just wrapped up June's Community Ambassador monthly calls for Super Users and User Group Leaders. We had a fantastic call with lots of engagement. We are excited to share some highlights with you!    Big THANK YOU to our special guest Thomas Verhasselt, from the Copilot Studio Product Team for sharing how to use Power Platform Templates to achieve next generation growth.     A few key takeaways: Copilot Studio Cookbook Challenge:  Week 1 results are posted, Keep up the great work!Summer of Solutions:  Starting on Monday, June 17th. Just by providing solutions in the community, you can be entered to win tickets to Power Platform Community Conference.Super User Season 2: Coming SoonAll communities moving to the new platform end of July We also honored two different community members during the call, Mohamed Amine Mahmoudi and Markus Franz! We are thankful for both leaders' contributions and engagement with their respective communities. 🎉   Be sure to mark your calendars and register for the meeting on July 11th and stay up to date on all of the changes that are coming. Check out the Super User Forum boards for details.   We're excited to connect with you and continue building a stronger community together.   See you at the call!  

Win free tickets to the Power Platform Conference | Summer of Solutions

We are excited to announce the Summer of Solutions Challenge!    This challenge is kicking off on Monday, June 17th and will run for (4) weeks.  The challenge is open to all Power Platform (Power Apps, Power Automate, Copilot Studio & Power Pages) community members. We invite you to participate in a quest to provide solutions in the Forums to as many questions as you can. Answers can be provided in all the communities.    Entry Period: This Challenge will consist of four weekly Entry Periods as follows (each an “Entry Period”)   - 12:00 a.m. PT on June 17, 2024 – 11:59 p.m. PT on June 23, 2024 - 12:00 a.m. PT on June 24, 2024 – 11:59 p.m. PT on June 30, 2024 - 12:00 a.m. PT on July 1, 2024 – 11:59 p.m. PT on July 7, 2024 - 12:00 a.m. PT on July 8, 2024 – 11:59 p.m. PT on July 14, 2024   Entries will be eligible for the Entry Period in which they are received and will not carryover to subsequent weekly entry periods.  You must enter into each weekly Entry Period separately.   How to Enter: We invite you to participate in a quest to provide "Accepted Solutions" to as many questions as you can. Answers can be provided in all the communities. Users must provide a solution which can be an “Accepted Solution” in the Forums in all of the communities and there are no limits to the number of “Accepted Solutions” that a member can provide for entries in this challenge, but each entry must be substantially unique and different.    Winner Selection and Prizes: At the end of each week, we will list the top ten (10) Community users which will consist of: 5 Community Members & 5 Super Users and they will advance to the final drawing. We will post each week in the News & Announcements the top 10 Solution providers.  At the end of the challenge, we will add all of the top 10 weekly names and enter them into a random drawing.  Then we will randomly select ten (10) winners (5 Community Members & 5 Super Users) from among all eligible entrants received across all weekly Entry Periods to receive the prize listed below. If a winner declines, we will draw again at random for the next winner.  A user will only be able to win once overall. If they are drawn multiple times, another user will be drawn at random.  Individuals will be contacted before the announcement with the opportunity to claim or deny the prize.  Once all of the winners have been notified, we will post in the News & Announcements of each community with the list of winners.   Each winner will receive one (1) Pass to the Power Platform Conference in Las Vegas, Sep. 18-20, 2024 ($1800 value). NOTE: Prize is for conference attendance only and any other costs such as airfare, lodging, transportation, and food are the sole responsibility of the winner. Tickets are not transferable to any other party or to next year’s event.   ** PLEASE SEE THE ATTACHED RULES for this CHALLENGE**

Celebrating the June Super User of the Month: Markus Franz

Markus Franz is a phenomenal contributor to the Power Apps Community. Super Users like Markus inspire others through their example, encouragement, and active participation.    The Why: "I do this to help others achieve what they are trying to do. As a total beginner back then without IT background I know how overwhelming things can be, so I decided to jump in and help others. I also do this to keep progressing and learning myself." Thank you, Markus Franz, for your outstanding work! Keep inspiring others and making a difference in the community! 🎉  Keep up the fantastic work! 👏👏   Markus Franz | LinkedIn  Power Apps: mmbr1606  

Top Solution Authors
Top Kudoed Authors
Users online (5,432)