lcFileFrom = 'reports.bak\xxxx.frx' lcFileTo = 'reports\xxxx.frx' SELECT *,SPACE(13) AS cOrder ; FROM (lcFileFrom) ; INTO CURSOR Temp READWRITE REPLACE cOrder WITH '1'+TRANSFORM(RECNO(),'@L 999999') FOR INLIST(ObjType,1,2,3,4,9,10) REPLACE cOrder WITH '2'+TRANSFORM(999999 - HPos,'@L 999999') FOR INLIST(ObjType,5,6,7,8) REPLACE cOrder WITH '3'+TRANSFORM(RECNO(),'@L 999999') FOR ObjType > 20 SELECT * ; FROM Temp ; ORDER BY cOrder ; INTO TABLE (lcFileTo) USE ALTER TABLE (lcFileTo) DROP COLUMN cOrder USE IN (JUSTSTEM(lcFileFrom)) USE IN (JUSTSTEM(lcFileTo)) USE IN TempAlex