Cria índice temporário com expressão de filtro.
Sintaxe
IndRegua( cAlias, cIndice, cExpress, [ xOrdem] , [ cFor ], [ cMens ], [ lExibir ] ) -> nil
Argumento | Obrigat. | Tipo | Descrição |
cAlias | Não | C | Alias da tabela que o índice será criado. |
cIndece | Sim | C | Nome do arquivo para criação do índice. |
cExpress | Sim | C | Expressão do índice. |
xOrdem | Não | C | Indica se a ordem será crescente ou decrescente. |
lExibir | Não | L | Indica se exibirá o diálogo de progressão. |
cFor | Não | C | Expressão de filtro. |
cMens | Não | C | Mensagem do diálogo de progressão. |
Descrição
Esta função cria um índice temporário para o alias especificado podendo ou não ter um filtro e tambem podendo ser decrescente se o parâmetro xOrdem for especificado como “D”. Durante a criação do índice um diálogo com uma barra de progressão será criada podendo esta ser omitida.
Exemplo
User Function Exemplo()
Local cArquivo
Local cChave
Local cFor
Local nIndex
DbSelectArea(“SA1”)
cArquivo := CriaTrab(,.F.)
cChave := “A1_NOME”
cFor := “!Empty(A1_NOME)”
IndRegua(“SA1”,cArquivo,cChave,,cFor)
DbSelectArea(“SA1”)
nIndex := RetIndex(“SA1”)
#IFNDEF TOP
DbSetIndex(cArquivo+OrdBagExt())
#ENDIF
DbSetOrder(nIndex+1)
.
.
.
DbSelectArea(“SA1”)
RetIndex(“SA1”)
FErase(cArquivo+OrdBagExt())
Return
CriaTrab
RetIndex