Página 1 de 1

Rotina para elininar caracteres especiais

Enviado: 25 Fev 2010 21:17
por Laudelino Scarmagnani
Pessoal, boa noite!
Preciso desenvolver uma rotina para elininar caracteres especiais. A não ser que o ACBrNFeMonitor faça isso ao gerar o arquivo .xml. Pelo que sei, não o faz!
Então, preciso de um comando que me retorne o tamanho da string que será passada como parâmetro, e retorná-la sem os caracteres especiais e substituindo os possíveis (ç po c, Ç por C, á por a, e assim por diante) e eliminar os seguite caracteres : ´, `, ¨, æ, Æ, Ø, ƒ, ½, ¼, ¡, «, », ¦, ©, ¥, ¤, ð, Ð, ß, µ, þ, Þ, ±, ¾, ¶, §, ¸, °, ·, ¹, ², ³.
Se alguém já tem a rotina e puder passar, agradeço.
Laudelino

Re: Busca de Unidades no Computador

Enviado: 25 Fev 2010 21:51
por sygecom
Eu uso essa com ACBERNFEMONITOR:

Ex:
vCIDADE:="CAÇAPAVA DO SUL"
vCIDADE=TiraAcento(Upper(ALLTRIM(vCIDADE)))

Código: Selecionar todos

**************************
FUNCTION TiraAcento(cText)
**************************
cText := StrTran(cText,"Ã","A")
cText := StrTran(cText,"Â","A")
cText := StrTran(cText,"Á","A")
cText := StrTran(cText,"Ä","A")
cText := StrTran(cText,"À","A")
cText := StrTran(cText,"ã","a")
cText := StrTran(cText,"â","a")
cText := StrTran(cText,"á","a")
cText := StrTran(cText,"ä","a")
cText := StrTran(cText,"à","a")

cText := StrTran(cText,"É","E")
cText := StrTran(cText,"Ê","E")
cText := StrTran(cText,"Ë","E")
cText := StrTran(cText,"È","E")
cText := StrTran(cText,"é","e")
cText := StrTran(cText,"ê","e")
cText := StrTran(cText,"ë","e")
cText := StrTran(cText,"è","e")

cText := StrTran(cText,"Í","I")
cText := StrTran(cText,"Î","I")
cText := StrTran(cText,"Ï","I")
cText := StrTran(cText,"Ì","I")
cText := StrTran(cText,"í","i")
cText := StrTran(cText,"î","i")
cText := StrTran(cText,"ï","i")
cText := StrTran(cText,"ì","i")

cText := StrTran(cText,"Ó","O")
cText := StrTran(cText,"Õ","O")
cText := StrTran(cText,"Ô","O")
cText := StrTran(cText,"ó","O")
cText := StrTran(cText,"Ö","O")
cText := StrTran(cText,"Ò","O")
cText := StrTran(cText,"õ","o")
cText := StrTran(cText,"ô","o")
cText := StrTran(cText,"ó","o")
cText := StrTran(cText,"ö","o")
cText := StrTran(cText,"ò","o")

cText := StrTran(cText,"Û","U")
cText := StrTran(cText,"Ú","U")
cText := StrTran(cText,"Ü","U")
cText := StrTran(cText,"Ù","U")
cText := StrTran(cText,"û","u")
cText := StrTran(cText,"ú","u")
cText := StrTran(cText,"ü","u")
cText := StrTran(cText,"ù","u")

cText := StrTran(cText,"Ç","C")
cText := StrTran(cText,"ç","c")
RETURN(cText)

Re: Busca de Unidades no Computador

Enviado: 25 Fev 2010 22:52
por Laudelino Scarmagnani
Tenho algo a mais a fazer? inclui a função e o seginte comando:
WNOME=TiraAcento(Upper(ALLTRIM(WNOME)))
Não alterou uns caracteres e outros por um caractere que não tem nada a ver.
Laudelino.

Re: Busca de Unidades no Computador

Enviado: 26 Fev 2010 10:35
por alaminojunior
Talvez precise acertar a configuração da página de códigos utilizada.

Agora, sem querer ser chato....o tópico desvirtuou-se (inclusive com participação minha). Começou com a questão do backup, passou pela questão do e-mail e está discutindo manipulação de string´s.

Re: Rotina para elininar caracteres especiais

Enviado: 26 Fev 2010 11:39
por sygecom
Separei em um novo Tópico:

Laudelino,
De uma olhada no post abaixo, talvez resolva:
viewtopic.php?f=43&t=4374