How can I make related rows editable inline?

Hi,
I have a detail view that looks something like this (simplified version):

The rows of Leftovers (table that belongs to Batches) are autopopulated - there is one for every row in another “MaterialTypes” table. The user should only be able to edit the quantity of each row, and nothing else. But to do this at the moment, they need to click the row which takes them to a detail view for the Leftovers entry, and then click the edit button on that page. There are two problems with this: firstly this process is far too complicated for my users - they will get it wrong or just skip it entirely, and secondly it wastes too much time.

What I want is for Quantity of each row to be editable inline directly on the batch page without having to go anywhere else. I’m pretty sure I’ve seen this behaviour on a sample app before but I haven’t been able to find it today.

Bonus question: how can I remove the little view row arrow (">") on the right of each row. I tried setting the “view ref” system behaviour to do not display, and even giving it a false behaviour, but it won’t go away. I would also like to get rid of “View All”.

Bonus bonus question: how can I change the width of the columns displayed here? I would like the material name column to be wider so the user can see the full name of the material type.

Thanks!

Hi @Alex_Baker ,

Please explore if following workarounds help.

You may enable Quick Edit(Beta) in the inline table view of “Leftover”. The user can then go to entire table view by tapping “view All” and change the quantity in table view. You may make only quantity column editable to those certain users by using Editable_if property.

However I believe , this Quick Edit feature is still in Beta even though I tested that it works. You may verify if one can use it in production apps with the AppSheet support team

I believe you can create an event action on your inline table view with an expression something like

LINKTOFILTEREDVIEW(“LeftOvers_Inline”, [Ref Column in Child Table]=[_THISROW].[Ref Column in Child Table])

Please set this action as a 'Row Selected" event action in your inline view of Leftovers.

This action ensures that the user cannot go to the detail view from the inline table view.

However since the workaround needs “View All” in the step 1 described above, eliminating “View All” is not addressed here.

You may use "Save and Verify"option of the editor.

2 Likes

@Alex_Baker
Just in case you need this pic.

4 Likes

Thanks for the quickedit hint - this did almost exactly what I wanted… for a few seconds! Weirdly, as soon as I changed the view from menu to ref, the option to quickedit immediately disappeared. When I changed it back to menu, it was still gone. So I really don’t know what’s going on with this option. I suppose it’s because it’s experimental? Could you quickly check and see if that happens for you too?

Edit: actually it goes away when I save the app. Doesn’t matter what I change, even if I just create a new view and set it to quick edit, the option just goes away as soon as I save.

Thank you for the updates.

The quick edit is very much working for me. I had also tested it before suggesting the option to you yesterday. I am sharing some screenshots.

image

In the screenshot above,

  1. Order details(2) is equivalent to your LeftOvers(5)
    Edit: Hope you are enabling the Quick Edits option in the inline table view for Leftovers.Theinline table view name may be something like “Leftovers_Inline” in you case.

  2. When I tapon “View All” , I get the following view.

  1. In the screenshot above, the encircled icon isfor the quick edits

When I tap on the "QuickEdits"icon, I get the following screen.Here I can change the non-greyed out columns such as Product ID, Quantity etc. User cannot change column “Total” because it is a computed column.

  1. One needs to save after making the Quick Edit changes though.

Hope this helps.

2 Likes

One option is when you click one record from your inline view, it opens a form view with only that one column, user adds the value and click Save. This is doable with a Slice & LINKTOROW() if you save it as an Event Action.

3 Likes