Não é muito complicado e estou aprendendo bastante com ele mas agora estou com a seguinte dúvida (sei que outras virão):
No cadastramento de clientes tem um campo caractere chamado TextCGC_CPF, e, também um campo lógico (LJuridica), e atualmente ele aceita qualquer valor digitado;
Quero validar o CNPJ ou CPF, basendo-me também no campo lógico, para acessar as funções, ou para CNPJ ou para CPF;
No preambulo da rotina constei:
#include "hmg.ch"
#xtranslate VALID <condition> [ MESSAGE <message> ] ;
=> ;
ON LOSTFOCUS _DoValid ( <condition> , <message> )
DEFINE WINDOW Novo_Cliente ;
AT 0,0 ;
WIDTH 460 ;
HEIGHT 446 ;
TITLE cTitulo ;
MODAL ;
NOSIZE
DEFINE STATUSBAR
STATUSITEM "Manutenção no "+cTitulo
END STATUSBAR
@ 0,0 FRAME Dados_01 WIDTH 451 HEIGHT 175 FONT 'ARIAL' SIZE 9
@ 20,175 CHECKBOX Pessoa_Juridica ;
CAPTION 'JurÃdica' ;
WIDTH 63 ;
HEIGHT 30 ;
VALUE lJuridica ;
FONT 'ARIAL' SIZE 9
@030,250 LABEL Lb_CGC_CPF;
VALUE 'CNPJ/CPF' ;
WIDTH 60 ;
HEIGHT 30 ;
FONT 'ARIAL' SIZE 9
@ 020,310 TEXTBOX TxtCGC_CPF;
HEIGHT 25 ;
WIDTH 130 ;
FONT 'ARIAL' SIZE 9;
TOOLTIP "Digite o CNPJ ou CPF do Cliente";
MAXLENGTH 20 ;
ON LOSTFOCUS CriaMascara();
ON ENTER Novo_Cliente.TxtNOME.SetFocus ;
VALID CONF_CNPJ(Novo_Cliente.TxtCGC_CPF,"") ;
MESSAGE ("CNPJ não confere !")
Do jeito que está acima, não compila e está dando o seguinte erro:
F_clientes.prg(177) Error E0030 Syntax error "syntax error at '@'"