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: 3108
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: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

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, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (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: 8028
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 2 vezes
Curtiram: 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