Olá pessoal, alguém pode informar pra mim, como posso acrescentar nessa rotina, um modo de atualizar os prefixos dos telefones em lotes..
CLEAR
*
cAnt := "286"
cNovo := "3286"
*
USE FISICO
GOTO TOP
*
WHILE (.NOT. EOF())
IF SUBSTR(FONE,1,3)==cAnt
cFone := STUFF(FONE,1,3,cNovo)
? FONE, cFone
REPLACE FONE WITH cFone
END
SKIP
END
QUIT
Ex. eu indicar vários prefixos antigos e vários prefixos novos relacionados aos antigos....fazer com que a rotina leia e deduza se for tal, mudar para tal, se não achar tal tentar o proximo e assim por diante !!
fico no aguardo
Obrigado
Atualizar prefixo de telefone em lote
Moderador: Moderadores
-
Dudu_XBase
- Membro Master

- Mensagens: 1071
- Registrado em: 25 Ago 2003 16:55
use uma matriz assim ficará assim...
// matriz contendo os prefixos a serem alterados
aPrefixo := {}
// primeiro lote
aadd(aPrefixo,{"286","3286"}
// segundo lote de exemplo
aadd(aPrefixo,{"256","3256"}
// veja q quando adiciono na matriz a primeira posição é o prefixo antigo e a segunda novo...
USE FISICO
GOTO TOP
WHILE (.NOT. EOF())
// localizo na matriz dos prefixos novos realizando uma pesquisa
// na matriz
npos := ascan(aPrefixo,{|x|,x[1]=SUBSTR(FONE,1,3)})
// localizado prefixo para alteração
IF nPos > 0
cFone := STUFF(FONE,1,3,aPrefixo[nPos,2])
? FONE, cFone
REPLACE FONE WITH cFone
END
SKIP
END
QUIT
// matriz contendo os prefixos a serem alterados
aPrefixo := {}
// primeiro lote
aadd(aPrefixo,{"286","3286"}
// segundo lote de exemplo
aadd(aPrefixo,{"256","3256"}
// veja q quando adiciono na matriz a primeira posição é o prefixo antigo e a segunda novo...
USE FISICO
GOTO TOP
WHILE (.NOT. EOF())
// localizo na matriz dos prefixos novos realizando uma pesquisa
// na matriz
npos := ascan(aPrefixo,{|x|,x[1]=SUBSTR(FONE,1,3)})
// localizado prefixo para alteração
IF nPos > 0
cFone := STUFF(FONE,1,3,aPrefixo[nPos,2])
? FONE, cFone
REPLACE FONE WITH cFone
END
SKIP
END
QUIT
________________________________________________________________________________________________________
(Aow Saudade) Clipper 5.2e, Blinker 7, RDD SIXNSX, DBFCDX /Xharbour 1.0, Rdd Mediator (Mysql) Free , RDD Sqlrdd (Sql Server) Comercial
(Hoje) C# Python Sql Server e Oracle
