Allow "natural sort" in more places

Hi, I have a table called (for simplicity) Product with a field ID_Number.

When I am looking at a widget of the Product table, I can do a natural sort on ID_Number with no problem. But when I am in another table that references the Product table (say, the Transaction table, which has a column Product that references the product ID_Number), I cannot do a natural sort. It seems like natural sort is disabled regardless of whether Transaction.Product is a formula column or not.

I would really love it if natural sort were available for the Transaction.Product column.

Thanks very much for considering my feature request!

Hello,

Does this sample illustrate your case well? I can’t understand the issue. (N.B. : this document is world-writable, so feel free to edit it to reflect your problem if it doesn’t already).

Thank you so much for the fast reply!

I should have clarified that ID_Numbers are alphanumeric, not strictly numeric. (In my personal use case they are a string, followed by a dash, followed by a number.) I have updated your example to reflect my use case.

You may define a formula column in your Transactions table with this formula:

x = $Product.ID_Number.split("-")
ord(x[0]) * 2**16 + int(x[1])

Then sort by this column instead of ID_Number. I just updated the sample.

Thanks! I appreciate the workaround, but would like to keep my feature request open, as it would be very nice for this to be supported natively. Right now it feels unintuitive that I can use natural sort in some places but not others.

Thank you again very much for the quick reply!

I just thought about it, but the fact ID_Number can have a natural sort is due to it’s type: Text. So if you add a Product_ID column with the formula below, but explicitly defining the Text type (not Any), you’ll have the option to make this natural sort.

$Product.ID_Number

Oh, thanks! That’s really good to know, and fixes some of my issues. I still wish it were possible to do a natural sort on a column of type Reference that references a column of type Text but I’ll take this for now. :slight_smile:

1 Like

The request makes sense. Thank you, Darcey! Noted it.