How to show each student a history of their test scores for each subject?

Good day Glide Community,

I’m building an app for my school’s students, which allows them to see the Calendar of Events (which works) and their personal test scores (which only shows info for a specific user if that user is signed in). I have a separate worksheet for each Form/Grade and Subject. I have set up the Google Sheet to display the user in the specific Worksheet in they do the same Subject and are in the same Grade (only testing this for the first extra worksheet (Form 1 English A) to see if it is working)
The StudentID worksheet would hold all of the student details, while the grades would be stored in the other worksheets (according to form and subject).

However, I am new to Glide and have watched the videos on Relations, but I am having trouble getting Glide to show what I want. For each student, I would like them to see cards for each subject that they are enrolled in (Uses checkboxes in Google Sheets) and when they click on that card’s subject it takes them to a page which has a history of that subject’s test scores.
This part of the App is under the StudentID tab at the bottom.

Can someone help me out?
If you would like, I have made a copy of the app and sheet for anyone to add their email and test any changes out,

App Link

Copy of Spreadsheet

Thanks for Reading,
William

do you collect the users email in the tasks if you do you can relate it to the email they used in thier profile and you can use a link ti screen linking to the relation and filter by subject

Thanks! I’ve been working on it and seem to be getting somewhere, and I’ve gotten it to show marks, but I haven’t gotten it to show marks for the particular student, the inline list just goes down the column I’ve set it to, so it shows 78 and 91(as seen in the photograph) but I don’t know how to get it to display those 3 marks horizontally in a list (78, 82 and 54)

i dont know any way to do this any idea @Jeff_Hager

It needs to be an array column. Call the columns Score 1, Score 2, etc. Not very convenient for data entry, but it works.

2 Likes

Ok, I have it set up here, but when I go to Inline List, it says that (Sheet Name) doesn’t have a relation column. I’ve also tried to create that but I do not know what two matching items that it would use.

You can just create the inline list from that sheet and then filter by signed in user.

My apologies, I was thinking of something else. Please disregard.

Actually, I used the array columns in my quest to make it show the history of test scores. However, I had to rewatch their Youtube videos on Relations. I made a single relation relating the StudentID name to the Form/Subject’s worksheet’s name. (I had to take everything off of that table except the name and Test scores, otherwise, it would show me data I didn’t intend to show. Then I added a Relation component for that single relation on the tab I wanted it to show up in. Inside that view, I added a table that I set up to show 5 test scores.

Thanks to everyone who chipped in and tried to help though!
Screenshot Table

2 Likes

@William_Pyke I liked your problem statement so i start my own digging
I came up with the below app just an idea implementation. I am figuring out how to show data by Signed-In and how to show only unique subjects on the subjects screen. Let me know if you are to achieve them.

https://skillful-cat-3516.glideapp.io/

2 Likes

Cool! I would love to check it out, but it seems like it is password protected, can you share it or make the app public with email? I know under features you can set a filter by Email is signed-in user.

Looks like you can just copy the app.

Thanks, I was viewing it on my phone, so I didn’t realize that option was there.

1 Like

I do like the implementation of your app.
I have a separate sheet for each subject (so I dont have extra subject entries for each test). I’m using a Filter formula which automatically puts the student into the SubjectSheet if they have a checkbox under that and the teacher can then input test results data. When a student is deleted from the StudentID Sheet, the student will be deleted from the other sheets and the student below that student will take the place. The problem is that the test data remains (because that was entered manually by the teacher) and i was wondering how to make the row match with the student, so when the student is deleted the other student does not inherit the other student’s test scores.

I would suggest instead of deleting user you can have a Boolean for offboarded students. So if the Boolean is true student is active. Then only show active students or only let active students login. This will be helpful for record keeping for audit or analysis purpose also.

1 Like

I tend to shy away from any situation where a sheet is dynamically built from formulas and editable in the app. It’s too easy to get into trouble if you ever resort your primary sheet or delete records. I prefer using a script to add missing records, such as students, to another sheet.

Here’s some info on a script that I use to add students to other sheets. If a name is not in the associated sheets, then the student name will be added. In my case I also use RowID and save the rowid in the associated sheets. This way if a students name is changed, the rowid won’t change and it won’t break any relations or erroneously add another record to the other sheets.

1 Like