Booking form for charter service

Hi everyone. I want to create a booking form for my school transport charter app. It seems that a multistep form is the way to go - the booking also needs 3 steps.
So: the parents log on and select Booking. (SInce access will be controlled by the Users table they can only see their own and their own childrens’ records.) That will automate step 1.
In step 2 they should select their child(ren) for the booking. That also works correctly.
In step 3 they should indicate (for each child) whether on the bus or not for each trip direction - going home or back to school. A lot of other fields are then calculated / looked up - school to pick up at, time to pick up, where to drop off, ETA for drop-off (calculated according to last pick-up time and travel time to destination), etc.

Now my questions are:

  1. Is this the best way to to this?
  2. If a calculated field needs to be changed (times changed, drop off somewhere else), can it be done in the mobile app? The driver will use the app for info about the schedule but can edit it.
  3. All the information from the booking form is written to the Trips table. The booking form details come from the User table and the related Children table but are also written to the Trips table. I’m sure this can be done with a Button block but is it possible in the Free plan?

You can have a look at a demo Google Sheets form at Sheets booking form example

Thanks
Herman

1 Like

It depends on your preference. If it helps users to separate steps better, then go for it.

It might be confusing if they have only one child and have to go through step 2 to select from a choice component that has only 1 choice.

Does it have to be done for all children who have been registered? Calculated fields can not be changed, you would have to have an “overwrite column” for the driver to do that I guess.

It’s possible to do it like that with form submissions. For example:

Trip ID User ID Child ID Date Direction Pickup Location Drop-off Location Pickup Time Drop-off ETA On Bus
TRIP001 U123 C456 2025-06-26 To School 123 Main St Lincoln School 07:15 07:45 Yes
TRIP002 U123 C456 2025-06-26 Homeward Lincoln School 123 Main St 15:30 16:00 Yes
TRIP003 U789 C321 2025-06-26 To School 45 Oak Ave Lincoln School 07:25 07:55 No
TRIP004 U789 C321 2025-06-26 Homeward Lincoln School 45 Oak Ave 15:30 16:10 Yes
TRIP005 U555 C999 2025-06-26 To School 88 Pine Rd Lincoln School 07:10 07:40 Yes
2 Likes

Thank you. I will try it out.
Regarding step 2, maybe I can put in an IF statement for a Count field for no. of children to show or hide that Choice?

1 Like

Yeah but if you do that, then on entry to the form (after step 1’s button is clicked), you will set the children’s ID to the right field in the form (custom form), or use special values to save that ID when the form is submitted (native form).