2) Si la tabla no se puede tocar, se podrían volcar los datos a un cursor y hacer el report sobre el cursorEdgar, creo que no te conviene complicarte. Cambiar el CodePage de tola la aplicación y de todo lo que hagas por una sola tabla, que es la que origina el problema, no vale la pena. Yo intentaría solucionar lo de la tabla.Se me ocurren 2 opciones:
1) Migrar los datos de la tabla a una con la misma estructura pero CP 1252. ¿Es posible? ¿Es necesario mantener esa vieja tabla tal cuál? ¿Se sigue actualizando con alguna app vieja de FoxPro 2.6?
El 8 de septiembre de 2013 10:24, Edgar Acevedo <aper...@gmail.com> escribió:
Fernando:Muchas gracias por tu interés en mi caso. Te explico el detalle del problema a la vez que contesto algunas de tus preguntas:
1- Tengo una tabla hecha en Foxpro DOS 2.6 (ignoro que CodePage tenga, asumo que es el 850 - International DOS).
2- Cuando genero el reporte con el REPORT FORM ... TO FILE ... ASCII el archivo de texto plano me queda así:
===========================================================
C¢digo Apellidos Nombres
===========================================================
10416 CASTA¥EDA GONZALEZ RAéL ANDRES
10474 PE¥A ESTRADA SERGIO RAéL
10476 QUIEJ ZAPàN MOIS S
10615 IBARRA RUIZ OSCAR RADAMES
10646 CASTRO VILLAGRµN OSCAR REN
10672 FAILLACE LIMA EDGAR ARMANDO
10691 URRUTIA MEL NDEZ GONZALO ARMANDO
10714 MONTENEGRO LEIVA JULIO C SAR
10731 DÖAZ ALONZO ENRIQUE NAPOLEàN
10771 ARMAS CUELLAR DE LàPEZ ELSA MARINA
10789 CAMPOS LEIVA REYES3- Como podrás notar, en lugar de la letra Ñ, puso el signo ¥, en lugar de la Ú puso é, en lugar Á puso µ. Y no digamos con la É, que como podrás ver en los nombres MOISÉS, RENÉ, MELÉNDEZ, CÉSAR (subrayados) de una vez la omitió.
4- Ahora bien, la cosa se compone bastante (pero NO totalmente) si utilizo el siguiente comando antes de generar el reporte: SET NOCPTRANS TO CODIGO, NOMBRE, APELLI
Es decir, le indico a VFP que NO TRADUZCA el CodePage de los campos CODIGO, NOMBRE y APELLI. Te muestro un ejemplo de como queda usando el SET NOCPTRANS:
===========================================================
C¢digo Apellidos Nombres
===========================================================
10416 CASTAÑEDA GONZALEZ RAÚL ANDRES
10474 PEÑA ESTRADA SERGIO RAÚL
10476 QUIEJ ZAPÓN MOISÉS
10615 IBARRA RUIZ OSCAR RADAMES
10646 CASTRO VILLAGRÁN OSCAR RENÉ
10672 FAILLACE LIMA EDGAR ARMANDO
10691 URRUTIA MELÉNDEZ GONZALO ARMANDO
10714 MONTENEGRO LEIVA JULIO CÉSAR
10731 DÍAZ ALONZO ENRIQUE NAPOLEÓN
10771 ARMAS CUELLAR DE LÓPEZ ELSA MARINA
10789 CAMPOS LEIVA REYES5- Te digo que el arreglo NO es total ya que el título del campo CODIGO, como podrás ver, todavía lo escribe como
C¢digo en lugar de Código La razón es muy simple de deducir: El título "Código" es una etiqueta y no un campo. El SET NOCPTRANS arregló el problema de los campos pero no el de los títulos (que son labels) porque ese no es su trabajo.
Claro que lo que me queda es quitar las tildes de los títulos (labels) pero ... ¿ y las "eñes" ?. Por ejemplo si quisiera poner como título: COMPAÑIA.
Es decir, hasta ahora ya arreglé el problema de las tildes y eñes de los campos de la tabla con el SET NOCPTRANS, pero no se me ocurre como corregir ese problema con los títulos (labels) del REPORT FORM. De momento me he salvado como "gato panza arriba" ya que afortunadamente pued prescindir de todas las tildes de los títulos y además ningún título lleva eñe. Pero ni modo, me ha quedado la duda existencial: ¿Habrá solución con los labels del REPORT FORM?.Solución a medias:
Cambié el CodePage en el CONFIG.FPW (CODEPAGE=850) y ¡ Voilá ! se arreglan los labels del REPORT FORM en los archivos planos (ya aparecen las tildes y eñes) pero la visualización de tildes y eñes (en los Grids por ejemplo) se arruina (porque debe estar en 1252).
Siguiendo tu sugerencia, ¿Es posible cambiar a conveniencia el CodePage entre 850 y 1252 sobre la marcha y sin recurrir al CONFIG.FPW?
Saludos,
Edgar Acevedo.