import.css=/download/attachments/6062824/tecnologia.css

Localiza um registro com determinado valor da expressão de chave de índice.

Sintaxe

DBSeek( < xExp >, [ lSoftSeek ], [ lLast ] )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

xExp

qualquer

Indica o valor da chave que será encontrada do tipo caracter.

X


lSoftSeek

lógico

Indica se, verdadeiro (.T.), posiciona no primeiro registro com expressão de chave maior que o valor procurado; caso contrário, falso (.F.) (Valor padrão).



lLast

lógico

Parâmetro de compatibilidade. Deve ser informado o valor nulo ( NIL ).



Retorno

Nome

Tipo

Descrição

lRet

lógico

Retorna verdadeiro (.T.), se encontrar um registro com o valor especificado; caso contrário, falso (.F.).

Observações

Exemplos

O exemplo abaixo utiliza a RDD "TOPCONN", mas a função pode ser utilizada com qualquer uma das RDDs válidas.

Exemplo 1

//Este exemplo apresenta o uso da DBSeek para localizar um registro caractere
user function test

local cRdd   := 'TOPCONN'
local cTable := 'MYTABLE'
local aStru  := {{"CPOC","C",10,0}}
local nHdl   := tcLink()

dbCreate(cTable, aStru, cRdd)
dbUseArea(.T., cRdd, cTable, (cTable), .F., .F. )
dbCreateIndex('MYINDEX', 'CPOC')

for i := 0 to 6
dbAppend(.F.)
(cTable)->CPOC := chr(65+i)  //Insere caracteres de A à F
dbCommit()
next

dbGoTop()
conout( dbSeek("C") ) // deve retornar .T. e reposicionar no recno() 3

dbCloseArea()
tcUnlink(nHdl)

return


Exemplo 2

//Este exemplo apresenta o uso da DBSeek para localizar um registro numérico
user function test

local cRdd   := 'TOPCONN'
local cTable := 'MYTABLE'
local aStru  := {{"CPON","N",10,0}}
local nHdl   := tcLink()

dbCreate(cTable, aStru, cRdd)
dbUseArea(.T., cRdd, cTable, (cTable), .F., .F. )
dbCreateIndex('MYINDEX', 'CPON')

for i := 1 to 15 step 2
dbAppend(.F.)
(cTable)->CPON := i
dbCommit()
next

dbGoTop()
conout( dbSeek(10, .T. ) ) // deve retornar .F. e reposicionar no recno() 6 respeitando o comportamento da lSoftSeek
conOut( recno() )

dbCloseArea()
tcUnlink(nHdl)

return