USE MyTable SET ORDER TO MyIndex DO SomethingThatMightChangeOrder *and go on from here PROCEDURE SomethingThatMightChangeOrder LOCAL cMyTableIndexOrder SELECT MyTable cMyTableIndexOrder = SET('ORDER') SET ORDER TO SomeOtherTagMaybe *Do some stuff SELECT MyTable IF ! EMPTY(cMyTableIndexOrder) SET ORDER TO (cMyTableIndexOrder) ELSE SET ORDER TO ENDIF RETURN