Insert Multiple Rows Per Day

Hi All,

I am trying to build an app which allows a parent to add data for their children. Now, each parent may have 1 → many children. My flow would be something like:

  1. Parent registers. Adds their children to the app on a sheet.
  2. Each day, parent logs a record for each child who made their bed.
  3. I would like it to be a single button which (ideally) you could select all those children who made their bed and log the records to a sheet

I’ve outlined the proposed data structure below. I think this is stretching the current capability of Glide but wondering if a similar thing can be achieved with Zapier or equiv. Would love to hear if anyone has has overcome similar challenges.

Thanks in advance!

Sheets effectively

  1. Parents - log of all users
  2. ParentChild - log of users and their children
  3. Datalog - log of children who made their bed

Sheet 1
Richard, richard@email

Sheet 2
richard@email, Max
richard@email, Emily

Sheet 3
richard@email, Max, 1/1/2021, Yes
richard@email, Emily, 1/1/2021, Yes
richardATemail, Max, 2/1/2021, Yes
richardATemail, Emily, 2/1/2021, Yes
richardATemail, Max, 3/1/2021, No
richardATemail, Emily, 3/1/2021, Yes

1 Like

Hi Richard. And welcome to the forum. I think you’ll find this is a great community.

There are a couple of approaches: One is, as you’ve shown, to create a new ROW in Sheet 3 for each entry. But that will quickly fill your app with lots of data-light rows. You want to minimize the number of rows because of the way you pay for Glide apps (or not). Also, a little data-density will make it run more efficiently.

I think the way I’d go about it is to create a form that builds a single ROW entry in sheet 3, either for each day - with multiple tasks - or for each task to be logged. Here’s an example that creates a single row per user per day.

You’d need to build out N-number of columns for each task, but the shot above shows what it would end up looking like in Glide table. You’d need to choose an artificially high number for N to account for the bigger families.

Then, create form for each task, with a relation to Sheet 1, where you’ve got each user’s kids in the User’s row. I’d have to play with it a bit to see what’s the best way to pull those kid’s names into the form… but this should get you started.

2 Likes

Do you have an upper limit of how many children a parent can register in the app? I’m thinking you can have multiple “child name” columns in the same row then use a choice component to sequentially populate those columns.

1 Like

Thanks @ThinhDinh and @belzoni for the hints. Thats certainly given me a different angle to think about. I do take the point of making it more data dense. A row for each “parent” per day and a column per child might be the way to go as I think I could just have the upper limit set to something like 5 children.

One of the enhancements I’m going to look at is to be able to extend the detail of the children, probably initially just be gender so that I can run an inter family competition eg boys vs girls so I would need to capture that somewhere. I think this might be able to be achieved by relations but I’ll need to check.

Anyhow, thats definitely given me some food for thought so I’ll have a crack and see how I get on and let you both know. Really appreciate it, thanks!

Richard

2 Likes

I’ll throw in a suggestion too. Maybe kind of a hybrid of the other options. You’ll have to use a custom form for this as it will have to update the sheet in real time. What I would maybe do is still write one row per task, but you could probably have a checklist of children. The checklist would be attached to the ParentChild sheet and the check box would be attached to a user specific column in the ParentChild sheet. You could check off each child the task pertains to, then pull that into the sheet you are using for your form through a relation and a joined list. This way you could have a comma delimited list of children in your DataLog that you can then split and use for a relation back to the ParentChild sheet.

That’s a rough example and has some limitations. I would check out this thread and maybe take a look at @Roldy’s example where he saves the selections.

2 Likes

Brilliant, thanks @Jeff_Hager. I’ll take a look!

2 Likes

Hi All,

Just a quick update. I’ve grabbed a bit of time tonight and I think i’m making some progress with the example shown by @Roldy in the thread @Jeff_Hager suggested. A bit of black magic going on there for me, so a bit of learning to do but I think thats going to get me what I need. I’ll post a further update once i’ve fleshed it out further (hopefully in the next couple of days)

Once again, I really appreciate the help so far. :pray:

Richard

3 Likes