Verifica ou altera a condição (crescente/decrescente) de uma ordem.
Sintaxe
ORDDESCEND([ cOrdem | nPosicao ],[ cArqIndice ], [ lDecrescente ]) –> Lógico
Argumento | Obrigat. | Tipo | Descrição |
cOrdem | Não | C | Nome da ordem a ser alterada |
nPosicao | Não | N | Posição da ordem na lista a ser alterada |
cArqIndice | Não | C | Nome do arquivo de índice |
lDecrescente | Não | L | Determina se a ordem será decrescente (.T.) ou crescente (.F.) |
Retorno | Descrição |
.F. | A ordem do parâmetro está na forma crescente |
.T. | A ordem do parâmetro está na forma decrescente |
Descrição
Esta função pode ser utilizada para apenas verificar o estado da ordem atual, se não for especificado o parâmetro lDecrescente.
Quando é especificado o parâmetro lDescend, o estado da ordem é modificado, sendo que a função retorna ao estado anterior da ordem em questão.
Para evitar conflito, no caso de haver mais de uma ordem com o mesmo nome, pode-se passar o parâmetro com o nome do índice ao qual a ordem pertence.
A ordem passada no primeiro parâmetro pode ser especificada através da sua posição na lista de ordens ativas (através do ORDLISTADD) ou através do nome dado à ordem, a função verifica automaticamente se o parâmetro é numérico ou caracter.
Exemplo
Este exemplo mostra como o ORDBAGNAME pode encontrar o nome de diferentes índices através da posição da ordem na lista:
USE Cliente VIA “DBFCDX” NEW
ORDLISTADD (“testeind1.cdx”,”NOME”) // A ordem é criada na forma crescente
ORDDESCEND() // Retorna: .F.
ORDDESCEND(,,.T.) // Retorna: .F., mas seta a ordem atual (NOME) como decrescente
ORDDESCEND() // Retorna: .T.
ORDLISTADD (“testeind2.cdx”,”NOME”)
ORDDESCEND(“NOME”,”ind1″,.F.) // Retorna: .T.
ORDDESCEND(“NOME”,”ind1″,) // Retorna: .F.
ORDBAGNAME( )
ORDNAME( )
ORDCREATE( )