>> I do not see any way to break this behavior in the browse settings to have them run independently.
Any thoughts?
so fundamentally the sort order is linked to the locator. They are, as you say, not "separate functions". By determining the sort order you determine what column the locator is working on.
(Of course you can put the browse on a memory form, and offer the user all sorts of filter fields, which are outside the locator, but that's outside the scope of this discussion.)
Now in your example you got a bit tricky. You set the locator to work across multiple columns, so that even though the sort order changed, the "fields being located on" did not. That was pretty cunning.
So what I've done is make the class equally cunning. If you change the sort order but remain "inside" the list of fields you were locating on, then the locator is preserved. So if you set the locator across first name and last name, and then locate, then you can swap between these columns fine. However if you then sort on a field outside this list then the locator is cleared.
This is in 8.58
cheers
Brice