Skip to main content

Hi all,

We're working with a List view interface where users use the relatively new manual sorting feature to create a list of approx. 30 materials that make 1 product. I've added an automation to copy these materials over to another product, which works fine except for the sorting.

When running test runs with the automation, I noticed that the automation's 'Sort list' step, when set to sort by the 'Manual sort' field, gives a different result than the List view (or data view).

In data view, I've copied the 'Manual sort' values into a single line text field and applied the same sorting to that field instead of the 'Manual sort' field. This results in yet another different sorting (which seems most logical to me, placing 'bXa' above 'bXWV' in an ascending list).

I've attached images of the automation setup and the different results in data view. I hope this helps clarify the issue. Any help would be greatly appreciated!

Did you find a solution? How does the manual order work ? 

 


@Titouan_Parand Hm I just tried this out sorting by the Manual Sort field seems to work fine (screenshots below), and so I think my dataset might just be different

Any chance you could invite me to a duplicated copy of your base with some example data where this problem’s reproducible?  I’m wondering if it’d be possible to use a script to solve this maybe


I had to sort my records using two manual orders: one from a relation and one from the concerned list. AI solved my problem, and since the use case isn’t that important, I can’t spend much time on it. In case it helps, here’s the sort:
 

// 5) Trier: Tag.order (via lookup) -> Feature.order
targetFeatures.sort((a, b) => {
const aTagOrder = a.getCellValueAsString(FIELD_FEATURE_TAG_ORDER) || "";
const bTagOrder = b.getCellValueAsString(FIELD_FEATURE_TAG_ORDER) || "";

if (aTagOrder !== bTagOrder) {
return aTagOrder < bTagOrder ? -1 : 1; // strict Unicode comparison
}

const aOrder = a.getCellValueAsString(FIELD_FEATURE_ORDER) || "";
const bOrder = b.getCellValueAsString(FIELD_FEATURE_ORDER) || "";
return aOrder < bOrder ? -1 : 1;
});