Boa tarde. Estou com um problema um tanto quanto frustrante nas mãos. Tenho uma query estática e em determinadas situações preciso alterar a ordem das tabelas no OPEN-QUERY pois os índices não se adequam. Até este ponto, consegui chegar não sem nenhum problema. O que fiz foi criar duas consultas, cada uma com uma ordem específica na definição das tabelas, mais ou menos assim: DEFINE QUERY qry-01 FOR table-01, table-02, table-03 SCROLLING. DEFINE QUERY qry-02 FOR table-02, table-01, table-03 SCROLLING. Na definição do browse, também estático, está a query qry-01 e os devidos campos no DISPLAY. DEFINE BROWSE brw-01 QUERY qry-01 NO-LOCK DISPLYA (campos)... O evento OPEN-QUERY() executa uma procedure com um QUERY-PREPARE. O que tive que fazer, uma vez que não posso usar query e browser dinâmicos, foi criar uma condição que executa o QUERY-PREPARE para a qry-01 ou qry-02 e depois executo o comando: QUERY brw-01:QUERY = QUERY qry-01 ou QUERY brw-01:QUERY = QUERY qry-02 O que acontece depois disso é que as colunas definidas no browse somem. Então tenho que adicioná-las manualmente uma a uma novamente (uma vez que elas vêem de 3 tabelas diferentes em ordens alternadas). Isso dá trabalho, mas dá pra fazer ainda dentro do evento. Só que nem todos os campos do banco estão definidos com label e format corretos, e eu preciso alterar o label, format e font destas colunas re-inseridas no browse após a substituição da query. E isso tem que acontecer em algum momento depois do EVENTO open-query e não pode ser por intervenção do usuário. Tentei ROW-DISPLAY e ROW-ENTRY, no primeiro dá erro dizendo que o WIDGET referido não existe. Alguém tem alguma idéia?