marcio1361303176 Posted May 23, 2005 Report Share Posted May 23, 2005 Amigos Estou precisando fazer uma rotina de validação onde se o usuario informar o nome com espacos em branco a mais o sistema faça a critica ! Exemplo Correto seria MARCIO EDUARDO ERRADO MARCIO EDUARDO No segundo caso há muto espaço em branco entre o primeiro e o segundo nome ! marcioe@uai.com.br marcioe@ligbr.com.br Quote Link to comment Share on other sites More sharing options...
kapiaba Posted May 23, 2005 Report Share Posted May 23, 2005 o COMANDO ALLTRIM não resolve?? Bad Boy - São Paulo. kmt_karinha@pop.com.br - 1 GB de Espaço. FW 2.3C CLIPPER 5.3B BLINKER 7.0 WORKSHOP.EXE Quote Link to comment Share on other sites More sharing options...
marcelo Posted May 23, 2005 Report Share Posted May 23, 2005 Ola Da forma como o Karinha postou, limpa os espaços no começo e fim do nome.Voce deve criar uma função: Tcondido(wnome) Function Tcontido(wnome) wret=.t. If " "$alltrim(wnome) carac='Espaco Em Branco" wret=.f. endif if !wret Alert('Caracter Invalido &carac) ENDIF RETURN wret . Voce pode testar todos os caracteres que voce não deseja no nome. Yrece Quote Link to comment Share on other sites More sharing options...
conpete Posted May 23, 2005 Report Share Posted May 23, 2005 Marcio O Capiaba tem razão . O alltrim resolve grande parte do seu problema entretanto você deve trabalhar os espaços internos criando uma função para eliminar os mais de um espaço tanto nas entradas como nas pesquisas Mangueira Quote Link to comment Share on other sites More sharing options...
macs Posted May 23, 2005 Report Share Posted May 23, 2005 Tente usar este bloco de código: FOR nCont := 1 TO LEN( ALLTRIM( xValor ) ) IF Empty( SubStr( Alltrim( xValor ), nCont, 1 ) ) IF EMPTY( SubStr( Alltrim( xValor ), nCont, 2 ) ) lRetorno := TELA_ERRO( "Nome do cliente com espacamento duplo !" ) BREAK ENDIF ENDIF NEXT Márcio Augusto Cezar FWH 2.6 PELLES 3.00.4 marcio.cezar@gmail.com Quote Link to comment Share on other sites More sharing options...
Adelson (ADS e TI) Posted May 24, 2005 Report Share Posted May 24, 2005 Amigo....se quiser apenas dar um alerta vc usa "SubStr" se quiser trocar espaços use "StrTran" mas não consigo ver uma utilidade para avisar o usuario sobre isso. EX: REDEFINE GET oGet1 var Z ID 103 OF oDlg VALID V_SPACO() ... STATIC FUNCTION V_SPACO() z=alltrim(z) oGet1:refresh() x=LEN(z) FOR Y=1 TO X IF SUBSTR(z,y,2)=" " msginfo("Espaços indevidos entre nomes","Mensagem") RETURN (.F.) ENDIF NEXT Y RETURN (.T.) A&F Soft WorkShop, Pelles, FWH 2.5 (fevereiro), xHarbor Comercial (fevereiro) Quote Link to comment Share on other sites More sharing options...
marcio1361303176 Posted May 24, 2005 Author Report Share Posted May 24, 2005 obrigado amigos já resolvi Valeu a todos Usei a ideia do marcelo marcioe@uai.com.br marcioe@ligbr.com.br Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.