pesquisa com textbox numerico

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

kamix
Usuário Nível 1
Usuário Nível 1
Mensagens: 7
Registrado em: 22 Fev 2006 21:23

pesquisa com textbox numerico

Mensagem por kamix »

pessoal sou novo e queria saber se alguem pode me ajudar.

estou tentando buscar um arquivo no dbf so que a pesquisa faco com um textbox numerico porque o dbf esta com o codigo em numerico mas nao acha nunca nehum codigo

tipo assim

@ 090,460 LABEL LabelCodigo VALUE "CODIGO" WIDTH 250 HEIGHT 35 FONT "ARIAL" SIZE 20 BOLD
@ 120,460 TEXTBOX TextBoxCodigo ;
VALUE "" ;
NUMERIC;
WIDTH 230 HEIGHT 50 ;
FONT "ARIAL" SIZE 30

clientes->(dbseek(form1.textboxcodigo.value))

nunca encontra nada se alguem pudem me ajudar
Visitante

Mensagem por Visitante »

Valores numericos são ideais para calculos.
Eu faço assim:
set soft on
index on idnumero tag 1 to ( basespriv) + "atletas.cdx" // Caracter (06)



@ 35 , 70 TEXTBOX Text_Numero WIDTH 120 HEIGHT 24 maxlength 06 on enter VerificApelido(CadastroAtletas.Text_Numero.Value)

Function VerificApelido(Apelido)

private Capelido := alltrim(left(Apelido , 6))
private Oalias := alias()
private Teste := len(Capelido)

&oalias->(dbgotop())
&oalias->(DbSetOrder(1))

if teste < 6
Capelido := strzero(val(Apelido),6)
CadastroAtletas.Text_Numero.value := Capelido
endif

if (Capelido =='000000')
CadastroAtletas.Text_Numero.setfocus()
Msgbox( 'Codigo ' + Capelido + ' ou Branco, não são válidos para Cadastro' )
endif

if dbseek(capelido,.t.)
CadastroAtletas.Text_Numero.setfocus()
Msgbox( 'O Atleta de numero '+Capelido+' ja esta Cadastrado!' )
endif
Avatar do usuário
Antonio
Usuário Nível 3
Usuário Nível 3
Mensagens: 347
Registrado em: 14 Ago 2003 17:33
Localização: Sao Paulo - SP
Contato:

Mensagem por Antonio »

O ideal é usar um CAMPO tipo Caracter para isso, e ajustando Set Soft ON. Indexar pelo campo e estabecer este Campo como Indice de Ordem na Pesquisa. Eu utilizo assim:



@ 35 , 70 TEXTBOX Text_Numero WIDTH 120 HEIGHT 24 maxlength 06 on enter VerificApelido(CadastroAtletas.Text_Numero.Value)



Function VerificApelido(Apelido)

private Capelido := alltrim(left(Apelido , 6))
private Oalias := alias()
private Teste := len(Capelido)

&oalias->(dbgotop())
&oalias->(DbSetOrder(1))

if teste < 6
Capelido := strzero(val(Apelido),6)
CadastroAtletas.Text_Numero.value := Capelido
endif

if (Capelido =='000000')
CadastroAtletas.Text_Numero.setfocus()
Msgbox( 'Codigo ' + Capelido + ' ou Branco, não são válidos para Cadastro' )
endif

if dbseek(capelido,.t.)
CadastroAtletas.Text_Numero.setfocus()
Msgbox( 'O Atleta de numero '+Capelido+' ja esta Cadastrado!' )
endif
Antonio Carlos
Harbour 3.2 (20180213)
Hwgui 2.20 3b | PostGresql 9.5 | ADO/ODBC
Responder