Off the top of my head, I'd create another field, calculated to say If ( Not IsEmpty (SortOrder) ; 0 ; 1 ). Then I'd sort by this field first, then the sortOrder field.
This would fill in a 0 if the user puts a number in the sort order field. The 0 would cause the portal and report to sort these to the top.
That's my first thought. But I think it will work.
Thanks for the quick reply Jeremy