Ir para conteúdo
  • Cadastre-se

dev botao

Ainda sobre caracteres acentuados


  • Este tópico foi criado há 2809 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

 

Ola pessoal, 
 
Pesquisei tudo que pude sobre o assunto mas ainda me sobram algumas dúvidas.
 
Antes de 1/7/16 somente o campo "Natureza de Operação" não poderia ter caracteres acentuados.
Agora nenhum campo mais pode ter acento? Nem Razão Social, nem Descrição do Produto, nem Dados Adicionais?, etc. É isso mesmo?
Gostaria de saber como os colegas estão tratando este assunto.
 
----
 
Ao usar a função "Retirar Acentos do Xml" no AcbrMonitorPlus, muitos dados ficam errados, como por exemplo: Razão Social, Endereço, Cidades (Tatuí vira Tatu), Estados (So Paulo), etc.
Eu não programo em Delphi, mas na linguagem que uso, tenho uma rotina que troca os caracteres acentuados pelos correspondentes não acentuados.
Segue abaixo o código para sugestão de implementação no Acbr: 
 
Recebo a linha de texto na variável &cStringIn e devolvo o texto reformatado na variável &cStringOu
 
-* Código da Procedure *-
 
&cStringOu = trim(&cStringIn)
&cFilterIn = "ÁÉÍÓÚáéíóúÀÈÌÒÙàèìòùÂÊÎÔÛâêîôûÄËÏÖÜäëïöüÃÕãõÇçÑñº/\&"
&cFilterOu = "AEIOUaeiouAEIOUaeiouAEIOUaeiouAEIOUaeiouAOaoCcNno--e"
&Fx = len(&cStringOu)
For &ff= 1 to &Fx  
   &cPedIn = substr(&cFilterIn,&ff,1)
   If StrSearch(&cStringOu,&cPedIn) > 0
      &cPedOu = substr(&cFilterOu,&ff,1)
      &cStringOu = StrReplace(&cStringOu,&cPedIn,&cPedOu)
   EndIf
EndFor
 
-* Fim do Código *-
 
Não fica perfeito mas melhora bem. O problema é chamar a procedure para cada linha do Xml nos nossos sistemas. Se for aceito e implementado no Acbr já serve para todos. Espero que sirva.
 
Obrigado e abraços a todos
Link para o comentário
Compartilhar em outros sites

  • Fundadores

Em ACBrUtil já existe uma função para remoção de acentos...

Não compreendo o problema... o ACBrMonitorPLUS responde caracteres acentuados, em ANSI ou UTF8... configure conforme a sua linguagem...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

Em 02/08/2016 at 17:54, Daniel Simoes disse:

Em ACBrUtil já existe uma função para remoção de acentos...

Não compreendo o problema... o ACBrMonitorPLUS responde caracteres acentuados, em ANSI ou UTF8... configure conforme a sua linguagem...

 
Boa noite
 
Obrigado Daniel pela resposta
 
Revisei todo o meu código e constatei o seguinte:
 
1- Meu sistema gera o arquivo EntNfe.txt acentuado com codificação Ansi.
2- O AcbrPlus está configurado para receber o arquivo EntNfe.txt em Ansi e a opção "Retirar acentos do Xml" está desmarcada.
3- O AcbrPlus versão 0_3_03_3 recebe e processa o arquivo e gera o Xml acentuado de forma correta.
4- O AcbrPlus versão 0_3_07_4 recebe e processa o arquivo porem retira todos os caracteres acentuados e gera o Xml incorretamente.
    Esse problema também acontece com a versão 0_3_07_2
 
Em anexo os arquivos
 
------
 
Sobre a rotina de "Retirar acentos do Xml" em qualquer versão do AcbrPlus, ela retira o caracter acentuado e assim o texto fica com erro de ortografia. Melhor seria que a rotina fizesse a substituição do caracter acentuado pelo mesmo sem acentuação conforme a sugestão que enviei anteriormente.
 
Obrigado e um abraço

ArqIni.txt

Nfe Acbr 0_3_03_3.xml

Nfe Acbr 0_3_07_4.xml

Link para o comentário
Compartilhar em outros sites

Bom dia,

não sei se ajuda, mas eu fiz um teste rápido no ACBrMonitorPLUS, última versão compilado aqui por mim.

Carregando o arquivo ini que o colega anexou acima, de cara me chamou atenção que na caixa "Comandos a Processar" aparece "?" no lugar dos caracteres acentuados...

Exemplos:

NaturezaOperacao=Venda de Produ??o Pr?pria

Logradouro=Avenida Independ?encia

OBS: marcando a opção ANSI ao lado da pasta de Entrada, os caracteres acentuados sumiram.

Att

Ricardo

Editado por RicardoVoigt
OBS
Link para o comentário
Compartilhar em outros sites

Boa tarde,

Obrigado Ricardo pelo comentário.

Fiz novos testes com as versões do ACBrMonitorPLUS que tenho aqui.

Com a versão 0.3.03.4, marcada a opção ANSI, o Acbr lê meu arquivo Ini e produz acentos no Xml

Com a versão 0.3.05.4, e até a atual 0.3.07.4 mesmo marcada a opção ANSI, o Acbr NÂO produz acentos no Xml

 

---- Trecho da caixa "Comandos a Processar" - a palavra com caracteres estranhos é "Produção"

NFE.CriarNFe("[infNFe]
versao=3.10
[Identificacao]
NaturezaOperacao=Venda de Produ��o Adquirida de Terceiros

----

Abraços e obrigado

Link para o comentário
Compartilhar em outros sites

  • Moderadores
15 minutos atrás, Mauricio Bragaia disse:

...
Com a versão 0.3.05.4, e até a atual 0.3.07.4 mesmo marcada a opção ANSI, o Acbr NÂO produz acentos no Xml

Boa tarde!
E a opção [  ] Retirar acentos do XML está marcada?

 


logoacbr.pngConheça o Portal do Projeto ACBr

Ajude o Projeto ACBr crescer - Assine o SAC ACBr
Assine um dos planos de longa duração do SAC ACBr, obtenha Descontos Especiais, Parcele no Cartão e ainda ganhe Brindes Exclusivos. Saiba mais aqui

Conheça o ACBrLib, o ACBr de forma nativa para qualquer linguagem de programação. Saiba mais aqui

 

 

 

 

Link para o comentário
Compartilhar em outros sites

solivam,

o problema relatado neste tópico é nos acentos que foram perdidos ao gerar uma NF-e (arquivo XML) a partir de um arquivo INI.

o problema que vc relatou está na impressão do DANFE. São informações fixas no layout do relatório. Veja este outro tópico recente, com o mesmo problema ao gerar o PDF do DANFE.

Aparentemente, os 2 problemas tem a ver com essas "tranqueiras" de ansi, unicode, utf-8 e tal...

Att

Ricardo

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2809 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...