SORT
 Copia para um (.dbf) classificando
------------------------------------------------------------------------------

 Sintaxe

     SORT TO <xcArquivo> ON <idCampo> [/[A | D][C]]
        [, <idCampo2> [/[A | D][C]]...]
        [<abrangência>] [WHILE <lCondiçao>] [FOR <lCondiçao>]

 Argumentos

     TO <xcArquivo> é o nome do arquivo destino para os registros
     classificados e pode ser especificado literalmente ou como expressao
     caractere entre parênteses.  A menos que especificada, a extensao
     assumida é (.dbf).

     ON <idCampo> é a chave de classificaçao e deve ser uma variável
     campo.

     /[A|D][C] define como o <xcArquivo> deve ser classificado.  /A
     classifica em ordem ascendente.  /D classifca em ordem descendente.  /C
     classifica na ordem de dicionário, a qual nao diferencia maiúsculas ou
     minúsculas do campo caractere especificado.  A menos que seja
     especificado algo em contrário, a ordem assumida é ascendente.

     <abrangência> é a porçao do arquivo corrente a ser classificada.  O
     assumido é ALL (todos).

     WHILE <lCondiçao> especifica o conjunto de registros obedecendo à
     condiçao a partir do registro corrente até que a condiçao seja falsa.

     FOR <lCondiçao> especifica o conjunto condicional de registros
     dados dentro da abrangência.

 Descriçao

     SORT copia registros a partir da área corrente para outro arquivo
     classificado.  O Clipper classifica os campos caractere de acordo com o
     valor ASCII de cada caractere dentro do string a menos que /C seja
     especificado.  Esta opçao faz com que o arquivo corrente seja
     classificado na ordem de dicionário--nao importando se os carcateres
     estejam em maiúsculas ou minúsculas.  Campos numéricos sao
     classificados em ordem numérica, campos data sao classificados em ordem
     cronológica, e campos lógicos sao classificados mantendo .T. como valor
     mais alto.  Memos nao podem ser classificados.

     SORT executa o maior número de operaçoes possível em memória, caso esta
     nao seja suficiente ele cria um arquivo temporário com um nome
     aleatório.  Este pode ter até o tamanho do arquivo fonte.  Note que o
     SORT usa três handles de arquivo: um para o fonte, um para o temporário
     e outro para o destino.

     No ambiente de rede, o arquivo a ser classificado deve antes ser
     travado com FLOCK() ou aberto EXCLUSIVE.

 Notas

       Registros marcados: Se DELETED está OFF, registros
        marcados sao enviados ao arquivo destino retendo seu estado de
        marcados.  Se DELETED está ON, estes registros nao sao copiados para
        o arquivo destino.

       SET EXACT: Nao tem efeito na classificaçao com SORT.

 Exemplos

     O exemplo seguinte copia um subconjunto de registros classificados de
     um arquivo de mala direta para outro arquivo do qual será emitida uma
     listagem:

     USE MegaList INDEX Zip
     SEEK "900"
     SORT ON LastName, FirstName TO Invitations WHILE Zip = "900"
     USE Invitations NEW
     REPORT FORM RsvpList TO PRINTER

 Arquivos:  Biblioteca CLIPPER.LIB.
 To download this example - click here.

See Also: INDEX USE ASORT() FLOCK()