After further experimentation, I can not find any solution to the problem you want to solve. Macro substition will not work. Well it does if you define lcOrder before issuing the CREATE SQL VIEW, but then you get the substitution and the order can not be changed.
About all I can suggest is to create the view without an order. Then *USE* the view and index on whatever fields you want. Unfortunately, you have to create the index tags every time you open the table.
The ability to parameterize the ORDER BY of a SQL VIEW is a great Wish List item, however. Since you brought this up, you could click on the KB [purple book] and add this to the Wish List. If not, I will gladly submit this.
Mark McCasland
Midlothian, TX USA