Desloca a tabela para outro registro.
Sintaxe
SKIP [nRegistros] [nArea | ALIAS Alias]
Argumento | Obrigat. | Tipo | Descrição |
nRegistros | Não | N | Número de registros a ser deslocados |
nArea | Não | N | Número da área de trabalho |
Alias | Não | Nome da identificação da área de trabalho |
Retorno | Descrição |
NIL | Sem retorno |
Descrição
Este comando é utilizado para deslocar para outro registro a partir do registro atual.
O parâmetro especifica quantos registros lógicos devem ser deslocados a partir do corrente. Se for positivo desloca em direção ao final da tabela, se for negativo ao início da tabela e, caso seja omitido, irá para o próximo registro (o padrão é 1). Caso passe do início da tabela, posiciona no primeiro registro e seta BOF, caso passe do final da tabela, posiciona no registro LASTREC + 1 e seta EOF.
O padrão é ser utilizado para a tabela corrente, mas pode ser especificada outra área de trabalho para executá-lo através do número “nArea” ou nome “ALIAS Alias“.
Exemplo
Este exemplo mostra como o SKIP pode passar do final da tabela e do início da tabela
DBUSEAREA( .T.,”dbfcdxads”, “dadosadv609sa1990.dbf”,”SSS”, .T., .F. )
DBGOBOTTOM()
EOF() // retorna .F.
SKIP
EOF() // retorna .T.
DBGOTOP()
BOF() // retorna .F.
SKIP -1
BOF() // retorna .T.
Este exemplo mostra como o SKIP pode deslocar 10 registro em relação ao registro corrente
DBUSEAREA(.T.,”dbfcdxads”, “dadosadv609sa1990.dbf”,”SSS”, .T., .F. )
DBGOTO(100)
SKIP 10
RECNO() // retorna 110
SKIP -10
RECNO() // retorna 100
Este exemplo mostra como o SKIP pode ser executado em outra area de trabalho.
DBUSEAREA(.T.,”dbfcdxads”, “dadosadv609sa1990.dbf”,”SSS”, .T., .F. )
DBGOTO(100)
DBUSEAREA(.T.,”dbfcdxads”, “dadosadv609sa1110.dbf”,”XXX”, .T., .F. )
SKIP 10 ALIAS “SSS”
SSS->RECNO() // retorna 110
SKIP -10 ALIAS “SSS”
SSS->RECNO() // retorna 100