Page 1 of 1

Tabla de Fox MSDOS

Posted: Sat Sep 16, 2017 7:44 am
by Agustin
Tengo una tabla realizada en FOX MSDOS.
Si la abro en mi aplicación HMG, las letras "Ñ" me las presenta con un signo.
Si las abro con cualquier programa de Windos, por ejemplo, DbfPlus, ocurre lo mismo, pero si las abro con Word, que me permite la opción de MSDOS,
las "Ñ" se ven bien. Mi programa esta codificado como ANSI.
Tengo lo siguiente al inicio:

SET CODEPAGE TO SPANISH
SET LANGUAGE TO SPANISH
EXTERNAL HB_CODEPAGE_ES850
REQUEST HB_SETCODEPAGE
HB_SETCODEPAGE ('ES850')

Uso HMG 3.0.46

He leido todo lo que he encontrado en el foro, pero nada me funciona.

Alguien sabe como hacer que mi programa muestre las Ñ correctamente ??
GRACIAS

Re: Tabla de Fox MSDOS

Posted: Sat Sep 16, 2017 10:00 am
by BeGeS
REQUEST HB_LANG_ES
REQUEST HB_CODEPAGE_ESWIN
HB_LANGSELECT("ES")
HB_SETCODEPAGE("ESWIN")
SET LANGUAGE TO SPANISH

Prueba a poner todo esto y en ese mismo orden.
Puede que haya algún problema con la versión. A mí sí me funciona con HMG 3.4.4.
Si por casualidad te sirve, no te molestes en preguntarme para qué es cada cosa :mrgreen:

Re: Tabla de Fox MSDOS

Posted: Mon Sep 18, 2017 8:23 am
by Agustin
Gracias por contestar, pero aún no consigo ver las Ñ de la tabla.
Seguiré investigando.

Re: Tabla de Fox MSDOS

Posted: Mon Sep 18, 2017 1:23 pm
by luisvasquezcl
Hay una función hb_ansitooem(xvalue) hb_oemtoansi(xvalue) te puede ayudar

Re: Tabla de Fox MSDOS

Posted: Mon Sep 18, 2017 2:42 pm
by Agustin
Gracias Luis. He probado con ello en un combobox así : ITEMSOURCE HB_OEMTOANSI( Transpor->Nombre ) y no me presenta ningún registro. Sin la función,me los presenta pero con la Ñ mal

Re: Tabla de Fox MSDOS

Posted: Mon Sep 18, 2017 7:36 pm
by BeGeS
Agustín, lo tuyo va a ser un problema UTF-8 / ANSI.

Prueba a guardar el .PRG con formato UTF-8 y compilar nuevamente (haz una copia de seguridad antes).

No sé el editor de texto que uses. Con Notepad++ es muy sencillo. Pincha en la pestaña "Codificación" (está arriba) y lo transformas.

A la vez, probar también con esto:
REQUEST HB_CODEPAGE_ES850
HB_SETCODEPAGE( "ES850" )

... en lugar de esto otro que te dije antes:
REQUEST HB_CODEPAGE_ESWIN
HB_SETCODEPAGE("ESWIN")

Re: Tabla de Fox MSDOS

Posted: Thu Sep 28, 2017 10:06 am
by mustafa
Hola Agustin
Mira este Post
http://www.hmgforum.com/viewtopic.php?f ... afa#p51756

Saludos
Mustafa

Re: Tabla de Fox MSDOS

Posted: Thu Sep 28, 2017 3:21 pm
by Agustin
Gracias Mustafa y a todos los demás. Pruebo tu ejemplo y lo comento.
Un saludo