# Populate fillable fields based on user input start and end time

**URL:** <https://community.glideapps.com/t/populate-fillable-fields-based-on-user-input-start-and-end-time/75142>\
**Category:** Ask for Help\
**Created:** [July 24, 2024, 6:57pm UTC](https://community.glideapps.com/t/populate-fillable-fields-based-on-user-input-start-and-end-time/75142 "2024-07-24T18:57:16Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![jdunsy72](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jdunsy72/32/61697_2.png) [@jdunsy72](https://community.glideapps.com/u/jdunsy72)\
**Post date:** [July 24, 2024, 6:57pm UTC](https://community.glideapps.com/t/populate-fillable-fields-based-on-user-input-start-and-end-time/75142/1 "2024-07-24T18:57:16Z")

</div>

Hello all! I want to create a shift report that our staff will complete hourly. Ideally, at the beginning of their shift, they’d enter their scheduled start and end time, and the app would populate one field for each hour within their shift. For example, 11:00 pm to 7:30 am. would populate 9 fields: 11:00 pm to 12:00 am, 12:00 am to 1:00 am…7:00 am to 8:00 am. This is a 24-hour business with shifts starting and ending at different times on a daily basis.

At the end of each shift, they submit their report and record it in one row. Any  
suggestions on how to best structure this so that it populates the hour and a field for each entry? Thanks in advance!

---

<div class="post-metadata">

**Author:** ![EvanFurniss](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/evanfurniss/32/69473_2.png) [@EvanFurniss](https://community.glideapps.com/u/EvanFurniss)\
**Post date:** [July 24, 2024, 7:02pm UTC](https://community.glideapps.com/t/populate-fillable-fields-based-on-user-input-start-and-end-time/75142/2 "2024-07-24T19:02:42Z")

</div>

You’d need to use something external like Make or Zapier to determine the number of ‘hour’ rows to create and which hours to do it for then recursively work through adding the rows via Add Rows API call.

You’d likely have a table for start and end times submissions (I’ll call it shifts) and another big table that would hold the hours with a relation back to the shift.

Then when pulling up the shift you could see all of the hours waiting to have whatever fields they need to fill in upon each hour.

Hope this helps!

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [July 24, 2024, 11:56pm UTC](https://community.glideapps.com/t/populate-fillable-fields-based-on-user-input-start-and-end-time/75142/3 "2024-07-24T23:56:05Z")

</div>

So let’s say for 11pm to 12am, you would expect them to fill that hour’s report some time just after 12am?

---

<div class="post-metadata">

**Author:** ![jdunsy72](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jdunsy72/32/61697_2.png) [@jdunsy72](https://community.glideapps.com/u/jdunsy72)\
**Post date:** [July 25, 2024, 12:12am UTC](https://community.glideapps.com/t/populate-fillable-fields-based-on-user-input-start-and-end-time/75142/4 "2024-07-25T00:12:07Z")

</div>

That’s correct. They’re to document their activities, their whereabouts, etc. on an hourly basis and is generally done shortly after the named timeframe. Some choose to document their activities as they do them but either way is okay.

---

<div class="post-metadata">

**Author:** ![FrancoisDigico](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/francoisdigico/32/75651_2.png) [@FrancoisDigico](https://community.glideapps.com/u/FrancoisDigico)\
**Post date:** [July 25, 2024, 12:18am UTC](https://community.glideapps.com/t/populate-fillable-fields-based-on-user-input-start-and-end-time/75142/5 "2024-07-25T00:18:30Z")

</div>

You could also make a JSON column in Glide data, then use it to forward to several APIs or services.

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [July 25, 2024, 12:25am UTC](https://community.glideapps.com/t/populate-fillable-fields-based-on-user-input-start-and-end-time/75142/6 "2024-07-25T00:25:58Z")

</div>

> [@dizzyaccordion JSON Trebuchet](https://community.glideapps.com/t/json-trebuchet/72744):
>
> wave Hey fellow Gliders! Part two of my Trebuchet series is live! Last week, I posted a tutorial on a new way to create inline arrays using the Trebuchet method Part 2 is a deep dive on how you can Trebuchet more than a single value by creating arrays of JSON exploding_head. Check out how to build an inventory ordering app using the JSON Trebuchet Method! :popcorn:Enjoy! [[Glide: Build an Inventory Ordering App Using the JSON Trebuchet Method] ](https://www.youtube.com/watch?v=1QbKTccN850)

I think a variation of this approach should work. You would have dynamic start and end times based on the current time of the user’s device. Let’s say it’s 12.01am, then you would have two math columns to have the “start” being 11pm, and “end” being 12am, then record them to a multiple files column.
