Hi @Nathan, I've got another solution for you to try which should address the multiple column scenario you've described. I'll first state though that perhaps this isn't exactly what you're looking for, but hopefully it'll serve a similar purpose (sorting by a variety of columns). And rest assured that we are actively seeking a better way to dynamically sort and filter lists. In the meantime...
In my test app I have two tables. Inventory and OrderBy.
and
You'll notice in the OrderBy table there are two columns, one is Order By and the other is Inventory. The latter, Inventory, has the following expression pattern. =Filter(Inventory,"ORDER BY Inventory[Name]")
and =Filter(Inventory,"ORDER BY Inventory[Name] DESC")
for example.
Basically this table will contain all of the sort types you would like to present to the user. Likely each column will have an ASC and DESC expression, one per row.
Now here's my app in builder.
I use a Rowlink/picklist that the user can select which type of sort they want to use, and this is the OrderBySelection variable. This Rowlink references the OrderBy table from above.
Next is a hidden content box (visibility =FALSE) named OrderBy. It has the following expression and properties. =IF($[OrderBySelection]="",Findrow(OrderBy),$[OrderBySelection])
Lastly, my list source is as follows. =$[OrderBy][Inventory]
Now let's see it in action.
Now granted it's not as simple as other lists where you just click the column header to sort, however, this should still achieve the same goal.
Let us know how this goes for you!