Basic Order and Order Lines Functionality (Best / Common Practices?)

Seeking to create a basic Order and Order Lines functionality in the UI.

I figured this was going to be fairly simple and straight forward but doesn’t look to be the case. Ironically when I looked for a template on this the youtube video for the Field Sales template shows this but the template itself lacks this. I looked around at the usual suspects for a how-to video on this but didn’t find one (perhaps me using the wrong search string).

Orders have 1 or many Order Lines
Order Lines have 1 Product

The UI side of “how do you do this in Glide?” is the challenge. Trying to make this as user friendly UX/UI as possible with minimal steps.

What’s considered the best and simplest practice in 2025 for this?

  • I can see custom workflow functionality to add row (order) add row (order line) and navigate.
  • I can see custom forms (and custom forms with a form?)
  • I can see some kind of active user UUID being a temporary relation and then replacing them with UUID from order (Germanic levels of overengineering)

What kind of form trickery is required to not make this a UX/UI nightmare of moving from screen to screen?

Here’s what I do for any app I develop that requires orders and order items:

3 Likes

A very sincere thank you Bob! Very insightful as always.

My use case is a bit different than the shopping cart model. Mine is building a purchase order with order lines or sales order with order lines from a product catalog. Trying to avoid the constant clicking through form after form to add lines.

I set off with the idea of creating a new order with an order lines datagrid within it that the user can create lines on the fly but only selecting existing products. This works but has some challenges. I think I’m going to have to go down the custom form route (we share a dislike for this) to make this work well…

I initially went down the two-step form process of: creating a new order via Form > submit (workflow action go to edit screen) and then add the lines within a data grid on an ‘Edit Form’ screen. Editing to create an order with an order lines datagrid within it leads to a situation of bad UX where the user expects the datagrid changes to also be cancelled (not the case and not possible). You can neither suppress nor customize the cancel button’s action on edit form screen unfortunately. Also broken for a legitmate edit situation so a second (or the same custom form) is required.

Side-notes:

  • super cool that dropdowns work within datagrid now - not sure when the improvement was made
  • super-uncool that deleting items on a datagrid seems to require selecting the row on a checkbox on the left and using the delete key rather than two clicks with the UI or a button

I would use a form container if you don’t want too many clicks. It lives on top of the same screen, so you don’t have to go in and out of forrms constantly.

Or, if you need a custom form, a custom collection pointing to a helper row would work the same way on the front end.