In my attendance app it works great, but it consumes a lot of rows.
Basically I have an attendance table that has the following columns (Student ID, Date ID, Class ID, Attendance Status( Present/Absent/Tardy))
So the issue is the attendance table grows very quickly for example (30 students x 10 classes x 180 days in a school year) = 54,000 records
Is there a better way to structure an attendance tracker to be more efficient? But building the table this way I can display all the classes a student was present, what students attended a class, etc.
I considered making a row a specific week or use an array to store the data but I wanted to see if anyone had any good ideas before I went down that rabbit hole. I feel like using those techniques there is a trade off on what I can query / display in reports etc. Thanks in advance.
It is complicated… but the main idea is to create a JSON file for each student and operate this data with JavaScript. You can have almost unlimited rows.
Thanks for the idea this is neat. Does you solution store the json data in a glide table? or somewhere else? I would like to stay in the glide ecosystem.
Your data is small. It can be stored in Glide for a bigger one… Over a few million rows… you would have to use Google sheets… they would not be connected.
In My app, I use Google sheets, that’s why there is a slight delay… but I can do it in glide… it will be instant.
Over here, I have one that is totally inside Glide.
No, in the text column…
Here is another example… the whole App was translated into 67 languages… check how fast it switches when you change language…
How about storing only absentees daily in a comma-delimited list? It would likely just cost you 10 classes x 180 days = 1800 rows, though I don’t know how you intend to show the result on the front end. You might also have to store a table of class IDs and which students are in each class.
Yes that is the part where I think there is a tradeoff. I will have to come up with some way to parse that data so I can present it in a report that shows all the students that attended the class. Also being able to look at a report list and then dive into the student or the roster record .
There are still other options to improve your table structure, but you have to evaluate and discard one by one, such as using an array to store the data (it’s ok to save data, but kind of hard when you need to parse and retrieve specific data).