Senhores, Estou fazendo um relatorio e tenho algumas situações como por exemplo: Gostaria que conforme fosse a marcação num Radio Set ele organizasse por um determinando campo, porem quando faço isso tenho que escrever todo o for each por conta de um Break BY. Como faço isso de forma mais economica e inteligente ? André.
André, Com query dinâmica acho que você consegue isso. É um saco do ponto de vista da segurança, mas se você não está preocupado com isto funciona.
Exemplo fuleiro mas funciona: Código: def var orderColumn as char. assign orderColumn = 'city'. def var queryText as char. assign queryText = 'FOR EACH Customer BY ' + orderColumn. DEFINE VARIABLE qh AS HANDLE. CREATE QUERY qh. qh:SET-BUFFERS(BUFFER customer:HANDLE). qh:QUERY-PREPARE(queryText). qh:QUERY-OPEN. REPEAT WITH FRAME y: qh:GET-NEXT(). IF qh:QUERY-OFF-END THEN LEAVE. DISPLAY cust-num name FORMAT "x(30)" city FORMAT "X(20)". END. qh:QUERY-CLOSE(). DELETE OBJECT qh. Se você mudar na segunda linha de 'city' para 'name', por exemplo, vai ver que a ordenação muda. O resto do código é igual.