When you have long forms (from an audit for example), is it maybe a good practice to break the form into several tables?
Then maybe allow the user to select which part of the form he will fill first, and maybe even fill part of it and return later?
I ask this because in an audit of a large area for example, you may check item 1, 2 and 3 and take photos of those in an area… then move to the next area and check same items and take more photos of those items, etc.
If it’s a single table, I gather the user would have to go scroll up and down on the form (and imagine if it’s dozens of items) or go back and forth among pages if it’s separated in pages.
As AppSheet doesn´t have tabs as far as I know (if it had, maybe we could put each page of a form on a tab, each tab a different section), I am thinking if maybe best practice would be to have each different lenghty section of a form on a different table. Then a master table for each single audit/form, with links to the different sections?
I suppose the sections should be “partof” of the main form (which can maybe have a header, where you get timestamp, who is performing the audit, etc)?
I would say you have two options to do it. If you want to keep everything in the same table, you could “split” it with slices and then create as many form views for these slices as you need.
Another solution would be related tables… like one main data table and then multi child tables.
What I would do for this is add Show columns and set them as page headers where you want to split your form into different sections. This will split your form into several pages that will be much easier to manage and add data to. I had a similar app that was very long and tedious to scroll up and down and when I added page breaks it made the app a million percent better, easier to use.
But when I go to the Form View, to insert a Event Action to that view… if the view is of the Form type view, event action is set to FORM SAVED and I can´t change it to ROW SELECTED.
When you open the record from the table (list) view, it will then open the detail view. You will see those action buttons there and you can choose the action button which will open the form from the correct slice.
Because all entries are ging to fill the same record, you will see them as one row in the table view. When you click that record, you will see details from that record (you can choose what columns to show). Then you will have an action button which will call the next slice and user can fill those questions in that 2nd slice. When he saves it, you won’t show that action buttons anymore. Instead… you will show the next action button and so on.
@Aleksi_Alkio hi Aleksi… I created a test app to test this in a less complex setting…
So I had a table with a timestamp, unique ID, a chosen letter (A to D) and a chosen number.
Clicking save takes me to another slice, where I can add photos (which are put on table “Question1”) and when I save I am taken to table Question2 where I can add more photos (saved on Table Question2)
Anyway… it seems the problem is that the action button is the SAVE button. Each time I click save to go to another slice, it creates a new row, so all 3 slices (main, question1 and question2) are not same row and are not connected.
The most similar sample app I found was the Dynamic Form Action, but it’s also based on the SAVE form and it doesn´t continue the form (in the same row)…
@Aleksi_Alkio more precisely " Then you will have an action button which will call the next slice and user can fill those questions in that 2nd slice."
only action button I can choose is the save event… under VIEWS tab.
I was able to create a Menu View where each image is an action.
But I was not able to create an action button inside a FORM, taking me to another slice. Only thing I get is the save button in the end, which opens a new row when going to the next slice.
That is… the Gallery views and others have Event Actions caled ROW SELECT where I can associate those to going to an action (like going to another view)
The Form View however, under Event Action has ONLY “Form Saved” to associate with an action. And thus, it SAVES and creates a new row.
Stephen… this is good solution when the form is not huge and you can just go forward. If you need to go back and forward, it won’t help… maybe it’s even worse solution. Well… we don’t know for example how many fields there is. I was expecting he has a lot:-)
But you have the detail view with a menu to different slices that correspond to different parts of the form, correct?
Ok, you are in the detail view. You click on the first menu button. It takes you to the PART 1 of the form… which is a FORM view.
The form view always ends with a SAVE. Which opens a new entry.
That’s the problem I am seeing and I don´t know yet how to (or if it’s possible) get around.
For when I finished PART 1 of the form, I have to click SAVE. And I can even attach an action to go back to the MENU after clicking on Part 1 Save, so I can click now on PART 2… and go to part 2 of the form…
@Aleksi_Alkio Aleksi… can I have a child table for a child table? I guess it would be a grandchild table lol
This is related to another question I made here in the community, about adding an irregular number of photos to a question.
So it was suggested to me to use a child table to add photos. So I can add as many photos as I want to a form.
It is working, however, there is a single problem: the photos added to an entry in the parent table can be seen by in any part of that entry where I have the parent/child link to the photos table.
What that means is that if I have a form with 4 questions that need photos, I can add as many photos as I want, but they will be seen by all 4 questions, I did not find a way to tell which photo belongs to each question.
Returning to THIS question about breaking a form however, I suppose that if EACH question that requires a photo is it’s own CHILD TABLE, then you could add a link from each “question form” to the photos child table.
Err… that is, if the child table can have multiple parents… can it?