Hello AppSheet community,
I’m currently working on a flight management app where users can generate documentation for flights and assign passengers to those flights. The app is designed to manage airline operations efficiently.
The challenge I’m facing is that sometimes there are more than 50 passengers to assign to a single flight, and entering them one by one is quite cumbersome.
Currently, I have a referenced table for passengers and another for flights. I manually reference passengers in a cell for each flight, but this process is not scalable for large numbers of passengers.
I’m looking for suggestions on how to streamline this process. Specifically, I would like to know if there are any best practices or techniques to enable bulk data entry for passengers and directly assign them to a flight.
Here’s a screenshot of how I currently do it:
Thank you in advance for your insights!
You may want to elaborate.
Some points you may want to consider are
Are there any frequent flyer passengers?
Any passengers flying on certain specific days or specific flights?
You could possibly preselect such passengers based on day of flight etc.
In short, you may need to find some pattern to preselect names to speed up the data entry.
If there is no established pattern and the list of passengers varies greatly from flight to flight , I believe you may need to continue with data entry one by one.
Thanks for your message!
To answer your points:
-
Are there frequent flyer passengers? Yes, many of them.
-
Do they fly on certain specific days or flights? Not really — these are non-scheduled flights. We usually receive the passenger list the day before the flight, and sometimes just a few hours before.
That’s why it would be ideal to have a way to copy and paste a list of passenger names directly into the app and have them automatically linked to the corresponding flight. This would save us a lot of time compared to adding passengers one by one.
If anyone has ideas or has implemented a similar bulk entry method in AppSheet, I’d love to hear how you approached it!
Okay, got it. You may want to try below.
Please create a long text type column called say [Passangers_List_Text]
You can copy paste passenger names here in this long text column. However there should be some pattern between names when being copied- either a comma(,) or an underscore(-)
Then in another enumlist type column, you could have an app formula something like
SPLIT( [Passangers_List_Text], " , ") if the names are pasted with a comma in the long test field.
This enumlist will contain the list of passenger names in AppSheet list format.
Also, alternatively if there are certain frequent flyer passengers, you could preselect them using initial value expression in the enumlist column.
Here is another idea that may help. This is more complex but will give you more flexibility in the long term because you can have actions at an individual passenger level such as check in, mark as boarded, etc.
You can keep this initial bulk selection via enumlist in your form and then use the values to populate passengers into a related table. The app will then be able to display an inline table of passengers inside of the flight record. You will only need to display the enumlist column in the form and not in the detail view.
To do this you can do the following structure changes:
- Add a “status” field (initial value=pending) and “created by” (initial value=useremail()) in your flights table. These columns will be needed for the automation to properly lookup the flight record that is being processed.
- Create a child table “manifest” that will store the passengers for each flight. The table will have a column that points back to the flight table. (you will then have 3 tables: Flights, Passengers, Manifest).
- Create an action in the Passengers table that copies a record to the Manifest table. You will populate the Flight ref column with select(Passengers[ID], and([status]=pending, [created by]=useremail())).
- Create an automation when a new Flight is added that will trigger an “action on a set of rows” that uses a copy action to copy passenger IDs from the enumlist column with a list of names to the manifest table.
- Referenced table = manifest
- Referenced rows = [your enumlist from the form]
- Referenced action = an action in your passenger table that copies a record to the manifest table
- Add a second step that has an action to set the flight status to “created”.
This is a template of this same concept you can reference that generates a checklist from a template. https://www.appsheet.com/templates/?appGuidString=1c61b9f6-ef6b-4b77-9300-6f3ce4c91d74
Below is a video that shows you how to use "execute an action on a set of rows starting at the 18 min mark. You can use these in your automations.
https://youtu.be/0uRhj__6XCE?feature=shared&t=1086
1 Like