You for starters try adding number() around your expression in the sort function. If that doesn’t work, I would list out the value you’re trying to sort on to verify it’s what you think it is.
number() is not defined according to error message. parseInt() also has no effect.
I removed the square brackets, same result.
I think it’s not the data input, it’s the sorting algorithm that needs to be changed.
Sorry, my bad for recommending the number(), that is the DQL variant to convert to numbers. parseInt() should on the other hand (or the sneaky way of dv.func.number().
As you’ve established the default sorting algorithm seems to be the pure alphanumeric order, and getting dataview to shift to natural sort order could cause some controversy, so I do believe changing the sorting input to be numeric is the way forward.
And as hinted at before I think the next step is to verify what value your actually sorting on. So I’d try adding the sorting value to your column output, with or without an attempt to convert into numbers. Report back and we can take this further discussing options.