Olá, amigos
Já fiz o dever de casa e pesquisei no forum, sobre o assunto acima
Já baixei os programas exemplos: converte.prg/remacent.prg já disponibilizado por colegas.
Mas não está dando certo:
a string:PAPEL HIGIÊNICO CARINHO PCT. ÇICA Ç PERF
tem como resposta:
PAPEL HIGIˆNICO CARINHO PCT. €ICA € PERF
onde vemos que a conversão estão dando errado. O que posso estar fazendo errado?
Uma coisa que me encafifou, é que meu programa é console harbour, e os caracteres especiais e acentos, ficam perfeitos, mas quando exporta para um programa feito em fivewin, ficam com caracteres estranhos e dão erro na impressora fiscal. Ambos os arquivos são dbf. Fiquei curioso.
Agora, preciso converter meus textos para compatibilizar com o aplicativo PAF de um parceiro. Sempre funcionou, agora numa nova versão do aplicativo PAF/ECF tá dando erro. O parceiro alega que a nova dll da Bematech é que está dando chabu
Remover Acentos na exportação de texto
Moderador: Moderadores
-
Marcio_Carneiro
- Usuário Nível 2

- Mensagens: 70
- Registrado em: 07 Abr 2008 15:37
- Localização: Santo Antônio de Pádua - RJ
-
Kapiaba
- Colaborador

- Mensagens: 1908
- Registrado em: 07 Dez 2012 16:14
- Localização: São Paulo
- Contato:
Remover Acentos na exportação de texto
Código: Selecionar todos
cDocXml = TIRA_ACENTUACAO( cDocXml )
cDocXml = StrTran( cDocXml , "CorreCAo" , "Correcao" )
nHandle:=Fcreate(cDestino+cFile)
Fwrite(nHandle,cDocXml)
FClose(nHandle)
Ou,
WNOME:= alltrim(TIRA_ACENTUACAO(CADCLIEN->CLIENTE))
FUNCTION TIRA_ACENTUACAO( cStr )
local cStrNew := "", nX
cAcentos := {"—","ƒ","Æ","Ç"," ","µ","…","·","‚","É","ê","ˆ","","Ò","í","Í","ó","¢","à","ä","å","“","â","ú","é","","š","ç","€","ã","Ã","á","Á","à","À","é","É","ê","Ê","í","Í","ó","Ó","õ","Õ","ô","Ô","ú","Ú","ü","Ü","ç","ù","AAO","§","¦","º","ª","€","‡","Ç","ç","'","`","ø","¡","Þ","×","Ø", chr(239)}
cLetras := {"U","A","A","A","A","A","A","A","E","E","E","E","E","E","I","I","O","O","O","O","O","O","O","U","U","U","U","C","C","A","A","A","A","A","A","E","E","E","E","I","I","O","O","O","O","O","O","U","U","U","U","C"," ","CAO",".",".",".",".","C","C","C","C","" ,"" ,".","I","I","I","I", "" }
For nX := 1 TO LEN(cAcentos)
cStrNew := StrTran(cStr, cAcentos[nX], cLetras[nX])
cStr := cStrNew
Next
Return( cStrNew )
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Remover Acentos na exportação de texto
Olá Pessoal,
Já tentou mudar a codificação antes de exportar para o FiveWin?:Marcio_Carneiro escreveu:mas quando exporta para um programa feito em fivewin, ficam com caracteres estranhos e dão erro na impressora fiscal
Código: Selecionar todos
cString := Hb_OemToAnsi( cString )Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
-
Marcio_Carneiro
- Usuário Nível 2

- Mensagens: 70
- Registrado em: 07 Abr 2008 15:37
- Localização: Santo Antônio de Pádua - RJ
Remover Acentos na exportação de texto
Deu certo Kapiaba, somente troquei uma letra que trocava espaços em brancos por A, no seu exemplo.
Jairo Maia, obrigado pela atenção. Já tinha tentado este recurso, não me lembro sera oemtoansi ou ansitoem, mas tinha dado errado.
Obrigado pela atenção de todos.
Mas fiquei na dúvida, por que um prg pode acentos/caracteres especiais e outro não?
Jairo Maia, obrigado pela atenção. Já tinha tentado este recurso, não me lembro sera oemtoansi ou ansitoem, mas tinha dado errado.
Obrigado pela atenção de todos.
Mas fiquei na dúvida, por que um prg pode acentos/caracteres especiais e outro não?
-
Kapiaba
- Colaborador

- Mensagens: 1908
- Registrado em: 07 Dez 2012 16:14
- Localização: São Paulo
- Contato:
Remover Acentos na exportação de texto
No seu MENU PRINCIPAL, fazes assim?
Código: Selecionar todos
REQUEST HB_LANG_PT
REQUEST HB_CODEPAGE_PT850
ANNOUNCE RDDSYS
REQUEST OrdKeyNo, OrdKeyCount, OrdCreate, OrdKeyGoto
REQUEST DBFCDX, DBFFPT
ANNOUNCE FPTCDX
FUNCTION MAIN()
SET DATE BRITISH
SET EPOCH TO 1950
SET CENTURY ON
SET SOFTSEEK OFF
SET WRAP ON
SETCANCEL( .F. )
SET CONFIRM OFF
SET DELETED ON
SET ESCAPE OFF
SET EXACT ON // CONTROLA O :=, = e ==
SET EXCLUSIVE OFF
SET MULTIPLE OFF
RDDSETDEFAULT("DBFCDX")
IF ISEXERUNNING( CFILENAME( HB_ARGV( 0 ) ) )
__Quit()
ENDIF
//->Defaults da Lingua Portuguesa do [x]Harbour
HB_LANGSELECT( 'PT' ) // Default language is now Portuguese
//->Como indexar corretamente campos acentuados Harbour/xHarbour
//->Este recurso e valido para Harbour e xHarbour e requer a biblioteca
//->CODEPAGE.LIB.
HB_SETCODEPAGE( "PT850" )