Anterior Sumário Próximo OpenBASE! o Banco de Dados inteligente. Fale conosco!

FKEYORDER()

Propósito

Alterar a chave de um arquivo para leitura seqüencial.

Sintaxe

FKEYORDER (<exp.C1>, <exp.C2>)

Argumentos

<exp.C1>

representa o nome do arquivo do banco de dados em uso.

<exp.C2>

representa o nome da chave para leitura seqüencial.

Utilização

Altera a chave corrente para um leitura seqüencial executada pelas funções FLOCATE (), FCONTINUE (), FLLOCATE (), FLCONTINUE (), FSTART () e FLSTART (), para que os registros sejam acessados na ordem da chave especificada por <exp.C2>.

Para que a leitura seja feita pela ordem de inclusão dos registros, basta que <exp.C2> seja uma cadeia com valor "0".

Utilizada na construção de programas ou procedimentos com independência de dados e aplicação. Dispensa abertura de arquivo (USE), necessitando apenas que exista um banco de dados em uso.

Similar ao comando SET ORDER TO.

Exemplos

O exemplo a seguir mostra-nos a utilização desta função.

DATABASE bdemp1 33 a 2

DECLARE vet_reg[3] = SPACE(12)

DECLARE vet_buf[3] = SPACE(10)

vet_reg[1] = "id2_func"

vet_reg[2] = "par_depe"

vet_reg[3] = "dat_depe"

arquivo = "tab_depe"

** Determina que a leitura será na ordem da chave par_depe

ret = KEYORDER (arquivo, "par_depe")

IF ret # 0

  ? FDBMESS (ret)

  QUIT

ENDIF

ret = FLOCATE (arquivo, vet_reg, vet_buf)

DO WHILE ret = 0

  ** Exibe valores dos campos

  ? " Grau de parentesco ", vet_buf[2]

  ? " Data de nascimento ", vet_buf[3]

  ?

  ** Continua a leitura seqüencial ate o fim do arquivo

  ** (ret # 0)

  ret = FCONTINUE (arquivo,vet_reg,vet_buf)

ENDDO

Consulte

SET ORDER, FLOCATE(), FLCONTINUE(), FSTART() e FLSTART().

Anterior Sumário Próximo OpenBASE! o Banco de Dados inteligente. Fale conosco!