I’m creating a marketplace, and when the user wants to gift something to someone, they input their recipients’ details through text/number submission - this data is submitted to the corresponding columns, but in an entirely new row, rather than on the relevant existing row.
Are you using a form button to submit the recipients details? If so, the form button is designed to always write to a new row. If you want to edit an existing record, you need to enable editing and click on the pencil at the top right of the screen to edit the record. Or you need to add entry fields on the detail screen.
If you still prefer to use a form button, then you will need to also write some sort of unique identifying information from the item detail you are viewing. The form will need to write to it’s own separate sheet. In the data tab you will then need to create a relation column to link the item to the item in the form response sheet. Then create lookup columns that use the relation to pull back any data you need from the form sheet into the item sheet.
@Jeff_Hager. Regarding the form button workaround, would this work if you have data from an inline list? Here’s my use case:
I have a form button where a user can add a new task each day. Throughout the day, that same user can create multiple tasks (for each new task, the user would select the Add Task form button which as you pointed out, Glide will write to a new row). Right now, I display their tasks via inline list.
Throughout the day, the user can go into each task and update the task status via choice option (In progress, complete, etc).
At the end of the day, the user select a button which shows them the list of all the tasks they have submitted for that day along with a few text entry fields where they can comment and fill in some additional info based on how the day went. In this view, the user can also manually update the status of each task(s) if they didn’t do it earlier that day.
Step #3 is where I’m stuck on. I’m trying to figure out what is the best way to do this (via form, create another tab?)
Best way to do what? Add comments? Change status? If you are displaying a list of tasks, then I would think you could open each task to display it’s details and make any changes via the edit button or entry fields.
Or are you talking about how to display the list? A link to screen button should suffice. If you wanted to could filter the view where date is within Today, so only today’s tasks show.
Thanks @Jeff_Hager. I’m trying to find the best way to display the list of tasks along with additional text entries in one display form/screen. I’d like to avoid having the user click on each task to update the status and then having to open up another form/text entry to enter the day’s feedback/summary that’s applicable to tall the tasks for that day. Would be great if they can do all their updates in one form vs having to go into each detail display and doing multiple submits.
Are you saying that you want a list with editable fields on the list items so you don’t have to go into the details of each list item? If so, your office are pretty limited and you can only do a checklist with a checkbox on each list item. Your best bet it to have the user tap on each list item to open it’s details, then add a choice commonest and text entry component so they can make changes without having to click on the edit pencil to go to the edit screen. Nothing to submit. They simply make their changes to each task and hit the back button to go back to the list.
@Jeff_Hager Do you know of any way to insert data into a new row without using the form button?
I am creating a multi page survey. I use a button which increments a counter to move between pages. On the last page, I don’t want the user to have to push the “Add” button on the top right. Instead I want then to push a regular style button to compete the survey.
Thanks @SantiagoPerez. I was not aware of the “add row” action. However, either I don’t know how to use it properly or it does not suit my application:
I created a new tab with “Details” layout and include an “add row” button on the page. The page now shows the first record in my spreadsheet, with any entries overwriting that record. This then gets copied into a new row when I hit the button. What I am hoping to do rather is present the user with a blank entry which gets populated into a new row when the button is pushed.
Ok. I am trying to understand your case. After the user fills all the info you want all that to go to another tab, right? At the same time you want the user to navigate to said tab?
Can you show us screenshots of what you want to achieve?
You can use the Set Columns action and the clear value option for those user-specific columns.
As far as I can see you can only set one action per button. Since I am already using my button for the Add Row Action, is there some trick to performing this second action as well?
@ThinhDinh thanks again for your advice on this thread. I’ve used it several times with great success. Now I am encountering a new application that I am struggling with.
I want to create a multi-page survey without using the form button from within the Details page of a list item. I create a sheet to house the data temporarily in user-specific columns. When the user submits, I use the Add Row action to transfer the data to the main sheet and the Set Column action to reset the user-specific columns on the temp sheet.
However, I also want to pass some context to the survey from the original list item. I can’t use the Set Column action as that only allows me to set values on the list item’s sheet and not the temp sheet. I can’t use the Add Row action on the temp sheet because that does not allow me to set values for user-specific columns.
You can create a relation to the temp sheet from the item sheet to set values, I have done that several times. Do you only have 1 row in the temp sheet?
Yes, I only have one row in the temp sheet. I created an “Index” column and entered “1”. On the list item’s sheet, I then created an Index column and entered “1” in every row. I created a list relation between them - but it still didn’t work. Any thoughts on what I am doing wrong?