4D v16.3ORDER BY |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
ORDER BY
ORDER BY
ORDER BY ordena (reordena) os registros da seleção atual de tabela para o processo atual. Quando tiver realizada a ordenação, o primeiro registro da nova seleção atual se converte no registro atual. Se especificar os parâmetros Campo e > ou <,a caixa de diálogo padrão de Ordenar não é mostrada e a ordenação se define por programação. Pode ordenar a seleção em um nível ou em vários níveis. Para cada nível de clasificação, um campo é especificado em Campo e a ordem de clasificação em > ou <. Se passar o símbolo "maior que" (>), a ordem é ascendente. Se passar o símbolo "menor que" (<), a ordem é descendente. Se só for especificado um campo (ordenação de um nível) e for indexado, é utilizado o índice para a ordem. Se o campo não estiver indexado ou se houver mais de um campo, a ordem é executada sequêncialmente (exceto no caso de índices compostos). O campo pode pertencer a tabela da seleção que estiver sendo reordenada ou a uma tabela 1 relacionada com tabela por uma relação automática ou manual. Neste caso, a ordem é sempre sequêncial. Se os campos ordenados estiverem incluídos em um índice composto, ORDER BY utiliza o índice para a ordem. Para ordenações múltiplas (ordenar em vários campos), pode chamarORDER BY tantas vezes quantas seja necessárias e especificar o parâmetro opcional *, exceto para a última chamada ORDER BY, que inicia a operação de ordenação real. Esta funcionalidade é útil para a gestão de ordenações multi-critérios em interfaces de usuário personalizadas. Não importa como tenha definido uma ordenação, se a operação de ordenação real for tomar algum tempo para ser realizada, 4D mostra automaticamente uma mensagem que contém um termômetro de progresso. Estas mensagens podem ser ativadas e desativadas utilizando os comandos MESSAGES ON e MESSAGES OFF. Se for mostrado o termômetro de progresso, o usuário pode clicar no botão Deter para interromper a ordenação. Se a ordenação for realizada corretamente, a variável OK assume o valor 1. Se o usuário clicar em Cancelar, ORDER BY termina sem efetuar a ordenação, e a variável OK assume o valor 0 (zero). Nota: Este comando não é compatível com campos tipo Objeto O exemplo a seguir mostra a caixa de diálogo Ordenar para a tabela [Produtos]: ORDER BY([Produtos]) O exemplo a seguir mostra a caixa de diálogo Ordenar para a tabela padrão (se tiver sido definida): ORDER BY O exemplo a seguir ordena a seleção atual de [Produtos] por nome em ordem ascendente: ORDER BY([Produtos];[Produtos]Nome;>) O exemplo ordena a seleção atual de [Produtos] por nome em ordem descendente: ORDER BY([Produtos];[Produtos]Nome;<) A linha seguinte ordena a seleção de [Produtos] por tipo e preço em ordem ascendente para ambos os níveis: ORDER BY([Produtos];[Produtos]Tipo;>;[Produtos]Preço;>) O exemplo ordena a seleção atual de [Produtos] por tipo e preço em ordem descendente para ambos níveis: ORDER BY([Produtos];[Produtos]Tipo;<;[Produtos]Preço;<) O exemplo a seguir ordena a seleção atual de [Produtos] por tipo em ordem ascendente e por preço em ordem descendente: ORDER BY([Produtos];[Produtos]Tipo;>;[Produtos]Preço;<) O exemplo a seguir ordena a seleção atual de [Produtos] por tipo em ordem descendente e por preço em ordem ascendente: ORDER BY([Produtos];[Produtos]Tipo;<;[Produtos]Preço;>) O exemplo a seguir realiza uma ordenação indexada se o campo [Produtos]Nome está indexado: ORDER BY([Produtos];[Produtos]Nome;>) O exemplo a seguir ordena a seleção atual de [Produtos] por nome em ordem ascendente: ORDER BY([Produtos];[Produtos]Nome) O exemplo a seguir realiza uma ordenação sequêncial, sem importar se os campos estão indexados: ORDER BY([Produtos];[Produtos]Tipo;>;[Produtos]Preço;>) O exemplo a seguir realiza uma ordenação sequêncial utilizando um campo relacionado: SET FIELD RELATION([Employee]Company_ID;Automatic;Do not modify) O exemplo a seguir realiza uma ordenação indexada em dois níveis se um índice composto for especificado no banco [Contatos]Sobrenomes + [Contatos]Nome: ORDER BY([Contatos];[Contatos]Sobrenome;>;[Contatos]Nome;>) Em um formulário de saída mostrado em modo Aplicação, você lhe permite aos usuários ordenar uma coluna em ordem crescente simplesmente clicando no cabeçalho da coluna. Se o usuário mantém pressionada a tecla Shift enquanto clica em outros cabeçalhos de colunas, a ordenação é realizada em vários níveis: MULTINIVEL(->[CDs]Titulo) `Botão do cabeçalho da coluna título Cada botão chama ao método de projeto MULTINIVEL passando um ponteiro ao campo da coluna correspondente. O método de projeto MULTINIVEL é o seguinte: ` Método de projeto MULTINIVEL
Ver também
|
PROPRIEDADES
Produto: 4D HISTÓRIA
Modificado: 4D v11 SQL ARTICLE USAGE
Manual de linguagem 4D ( 4D v16) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||