Como eliminar pontos e traços de um campo

Como eliminar pontos e traços de um campo

Postby rogerio » Wed Sep 23, 2009 7:05 pm

Olá a todos

existe um campo de livre formatação onde o usuário podia cadastrar livremente códigos assim:

64.718.749.100-53
18.166.002.268-890
27.089.276-1
43.394.650.200-99
16.109.650-6

Agora preciso atualizar o sistema e mudar automaticamente o conteúdo desses campos para somente dígitos, assim:

6471874910053
18166002268890
270892761
4339465020099
161096506
Existe alguma função que me permita fazer isso?

[]'s

Rogerio
User avatar
rogerio
 
Posts: 83
Joined: Wed Nov 09, 2005 11:22 pm
Location: São Lourenço da Serra - SP - Brasil

Re: Como eliminar pontos e traços de um campo

Postby Lautaro » Wed Sep 23, 2009 7:30 pm

Rogerio,

a la rapida se me ocurre esto :

Code: Select all  Expand view

   yvar := strtran(strtran(xvar,".",""),"-","")
 


atte.,

Lautaro Moreira
User avatar
Lautaro
 
Posts: 322
Joined: Fri Oct 07, 2005 2:44 pm
Location: Osorno, Chile

Re: Como eliminar pontos e traços de um campo

Postby lailton.webmaster » Wed Sep 23, 2009 7:31 pm

Valor:= remove("12.123123-123123")

alert( valor ) // saida 12123123123123

function remove(var)

var := StrTran( var, ".", "" )
var := StrTran( var, "-", "" )

return var
lailton.webmaster
 
Posts: 603
Joined: Sun May 04, 2008 8:44 pm

Re: Como eliminar pontos e traços de um campo

Postby rogerio » Wed Sep 23, 2009 9:02 pm

Obrigado a todos pela resposta.
Mas achei que existisse alguma função que retornasse apenas os números, pois o usuário pode ter colocado qualquer sinal, além de , . - .


[]'s
User avatar
rogerio
 
Posts: 83
Joined: Wed Nov 09, 2005 11:22 pm
Location: São Lourenço da Serra - SP - Brasil

Re: Como eliminar pontos e traços de um campo

Postby Lautaro » Wed Sep 23, 2009 9:36 pm

Rogerio :
Code: Select all  Expand view


.......
.......

local cxvar
local cyvar

 cxvar :="123.1234.455-55"

 cyvar := solonumeros(cxvar)

 ......
 ......

return

function solonumeros(cxvar)

 local nveces
 local ctemp
 local cchar

 for nveces = 1 to len(cxvar)
      cchar:=substr(cxvar,nveces,1)
     if cchar $ "01234567890"
        if nveces == 1
           ctemp:=cchar
        else
           ctemp+=cchar
        endif
     endif
 next nveces

return ctemp

 


deberia funcionar.

atte.,

Lautaro Moreira
User avatar
Lautaro
 
Posts: 322
Joined: Fri Oct 07, 2005 2:44 pm
Location: Osorno, Chile

Re: Como eliminar pontos e traços de um campo

Postby rogerio » Wed Sep 23, 2009 10:02 pm

Perfeito Lautaro

era isso mesmo.

obrigado.

[]'s

Rogerio
User avatar
rogerio
 
Posts: 83
Joined: Wed Nov 09, 2005 11:22 pm
Location: São Lourenço da Serra - SP - Brasil


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: VictorCasajuana and 12 guests