Ayuda con DBSEEK()

Fórum sobre Banco de Dados e RDDs para Clipper/[x]Harbour.

Moderador: Moderadores

gburgardt
Usuário Nível 1
Usuário Nível 1
Mensagens: 2
Registrado em: 04 Mar 2015 14:11
Localização: Argentina

Ayuda con DBSEEK()

Mensagem por gburgardt »

Hola tengo problemas para poder buscar un valor en una tabla

Código: Selecionar todos

STATIC FUNCTION nroref1(nro_ref)
local vmensaje:= space (maxcol())
// alert ('llego a la funcion con '+nro_ref)
 
USE respop VIA "DBFCMX" NEW 
ordSetFocus("nroref")
cmxSetScope(0)
cmxSetScope(1)
DBGOTOP()
nr:=IF(respop->(DBSEEK(nro_ref)),respop->nroref,'-') 
alert(nr)
IF !(nr == '-')
   vmensaje:='el numero ingresado existe'
ENDIF 
 
 @ maxrow(),00 SAY vmensaje
RETURN !Empty(vmensaje)

Y me da este error "Workarea not indexed"
Cualquier ayuda es bienvenida muchas gracias
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Ayuda con DBSEEK()

Mensagem por alxsts »

Olá!

Seja bem-vindo ao fórum gburgardt!

Não conheço o driver "DBFCMX". Não seria "DBFCDX" ?

Troque a linha

Código: Selecionar todos

USE respop VIA "DBFCMX" NEW
por

Código: Selecionar todos

USE respop VIA "DBFCDX" NEW
[]´s
Alexandre Santos (AlxSts)
gburgardt
Usuário Nível 1
Usuário Nível 1
Mensagens: 2
Registrado em: 04 Mar 2015 14:11
Localização: Argentina

Ayuda con DBSEEK()

Mensagem por gburgardt »

No the DBFCMX line is correct, because i using in others parts of code and works fine
I need only find a record with for example id = 999999 in dbf file but i dont know how
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Ayuda con DBSEEK()

Mensagem por JoséQuintas »

Código: Selecionar todos

cmxSetScope(0) 
cmxSetScope(1) 
dbGoTop()
Why?
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
janio
Colaborador
Colaborador
Mensagens: 1846
Registrado em: 06 Jul 2004 07:43
Localização: UBAJARA - CE

Ayuda con DBSEEK()

Mensagem por janio »

A mensagem de erro é AREA NÃO INDEXADA!

Ao que parece o índice não existe.

Primeiro vc deve criar o índice, assim:

USE respop NEW exclusive VIA "DBFCMX"
INDEX ON nroref TAG CHAVE1
Use
(Isto é necessário fazer apenas uma vez)

Depois:

Código: Selecionar todos

STATIC FUNCTION nroref1(nro_ref)
local vmensaje:= space (maxcol())
// alert ('llego a la funcion con '+nro_ref)
 
USE respop VIA "DBFCMX" NEW 
ordSetFocus("nroref")
DBGOTOP()
nr:=IF(respop->(DBSEEK(nro_ref)),respop->nroref,'-') 
alert(nr)
IF !(nr == '-')
   vmensaje:='el numero ingresado existe'
ENDIF 
 
 @ maxrow(),00 SAY vmensaje
RETURN !Empty(vmensaje)
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Ayuda con DBSEEK()

Mensagem por Itamar M. Lins Jr. »

Rsrsrsrs!
Tem que perguntar isso p/ quem fez o RDD!.
cmxSetScope(0)
// que comando é esse por exemplo ?

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Responder