SCAN INDEX
SCAN INDEX ( campo ; numero {; > ou <} )
Parâmetro | Tipo | Descrição | |
---|---|---|---|
campo | Field | → | Campo indexado onde vai procurar o índice |
numero | Integer | → | Nº de registros a retornar |
> ou < | Operador | → | >a partir do começo do índice, |
Descrição
SCAN INDEX retorna uma seleção de numero de registros da tabela. Se passa <, SCAN INDEX retorna o numero de registros a partir do final do índice (valores superiores). Se passa >, SCAN INDEX retorna numero de registros a partir do início do índice (valores inferiores). Este comando é muito eficiente porque utiliza o índice para realizar a operação.
Nota: a seleção que é obtida não está ordenada.
SCAN INDEX funciona unicamente com campos indexados. Este comando modifica a seleção atual da tabela para o processo atual, mas não há registro atual.
Se especifica um número de registros superior ao número de registros presentes na tabela, SCAN INDEX devolverá todos os registros.
Nota: Este comando não é compatível com campos tipo Objeto
Exemplo
O seguinte exemplo envia cartas aos 50 piores clientes e aos 50 melhores clientes:
SCAN INDEX([Clientes]TotalVencido;50;<) // Obter a lista dos 50 piores clientes
&NBSP;ORDER BY([Clientes]CodigoPostal;>) // Ordenar por código postal
&NBSP;FORM SET OUTPUT([Clientes];"Advertência")
&NBSP;PRINT SELECTION([Clientes]) // Imprimir as cartas
&NBSP;SCAN INDEX([Clientes]TotalVencido;50;>) // Obter a lista dos 50 melhores clientes
&NBSP;ORDER BY([Clientes]CodigoPostal;>) // Ordenar por código postal
&NBSP;FORM SET OUTPUT([Clientes];"Carta de agradecimento")
&NBSP;PRINT SELECTION([Clientes]) // Imprimir as cartas