@ 70,410 TEXTBOX cod_merc;
WIDTH 60 ;
MAXLENGTH 10 ;
on enter (F_cod_merc(Prodt_1.cod_merc.value))
******************************************************
PROCEDURE F_cod_merc() // validação de codigo de produto
******************************************************
local _Pode:=.T.
IF Prodt->(DBSEEK(Prodt_1.cod_merc.value))
MSGINFO("Codigo Já Cadastrado!","Verifique")
CancelarProdt()
_Pode:=.F.
Endif
RETURN _Pode
Editado pela última vez por Pablo César em 14 Nov 2012 12:13, em um total de 1 vez.
Razão:Mensagem editada para colocar a tag [ code ]<br>Veja como utilizar esta tag: http://www.pctoledo.com.br/forum/faq.php?mode=bbcode#f2r1
Nesse seu caso, ao invés de usar "On Enter" utilize "On LostFocus". Mas também terá que validar quando este for vazio. Uma outra sugestão: você deveria utilizar o Upper() para o Seek. Assim tanto faz se o usuário digitar maiúsculas ou minúsculas ou mixto.
A sua função F_cod_merc, não precisa retornar valor algum, a não ser que seja necessário em algum outro lugar que precise atribuir a uma variável (por exemplo) ou até mesmo fazer uma condição. Mas nesses casos, tais Eventos, apenas irão chamar a função. Não funciona como no Clipper. Se você quer que o cursor retorne ao TEXTBOX quando este for inválido, é só adicionar o SetFocus, mas antes você poderia zerar o valor do TEXTBOX para que o usuário digite novamente ou não zerar para que possa corrigir. Vai de você a forma que quiser fazer. Qualquer dificuldade, poste a suas tentativas que faremos correções no caso que não consiga.
Um clip-abraço !
Pablo César Arrascaeta Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
@ 70,410 TEXTBOX cod_merc;
WIDTH 60 ;
MAXLENGTH 10 ;
on lostfocus(F_cod_merc(Prodt_1.cod_merc.value))
******************************************************
PROCEDURE F_cod_merc() // validação de codigo de produto
******************************************************
IF Prodt->(DBSEEK(Prodt_1.cod_merc.value)) .or. empty(Prodt_1.cod_merc.value)
MSGINFO("Codigo Já Cadastrado!","Verifique")
CancelarProdt()
Endif
RETURN
Obrigado
Editado pela última vez por Pablo César em 14 Nov 2012 20:47, em um total de 1 vez.
Razão:Mensagem editada para colocar a tag [ code ]<br>Veja como utilizar esta tag: http://www.pctoledo.com.br/forum/faq.php?mode=bbcode#f2r1
boa noite professores!
pelo que percebo. Se a gente usar o LOSTFOCUS funciona, mas, gera loop do sistema por várias vezes. Não existe nada que realmente a gente possa tratar o TAB/TEXTBOX agora na hmg 3.4.4?
Grato, MICROVOLUTION - 16 anos Evoluindo Com Você!
Você já leu a Bíblia hoje?
João 3:16 - Porque Deus amou ao mundo de tal maneira que deu seu Único Filho para que todo aquele que nEle crê não pereça mas tenha a Vida Eterna!