Aplicación multidioma

vForum público de la plataforma de desarrollo Velneo

Moderador: vCoaches

Responder
Avatar de Usuario
amadis
vLeader
vLeader
Mensajes: 1312
Registrado: 22 Sep 2005, 16:08

Aplicación multidioma

Mensaje por amadis »

Tenemos que crear una aplicación multidioma. Todos los textos de todos los formularios tienen que estar en el idioma de la empresa que entra. Tenemos varias opciones pero son muy costosas. ¿Alguien se ha planteado alguna vez esta posibilidad? ¿A alguien se le ocurre algo?...

Gracias por vuestra ayuda de antemano y felices fiestas a todos...
vSaludos...

Amadís
Axos Soluciones Visuales
Software Gestión Distribución

Web: http://www.axosvisual.com
Avatar de Usuario
Agustin
vCoach
vCoach
Mensajes: 2953
Registrado: 21 Sep 2005, 06:17

Mensaje por Agustin »

Algo dificil tu problema . La única solución que yo le veo hasta que en Velneo salga la versión multiidioma es que con condiciiones de visibilidad de los textos. tendrás que traducirlos todos y en una opción de inicio, guardarte en una variable el idiima elegidol Un cartel será visiible si ha seleccionado su idiioma previamente.
FELICES FIESTAS A TODOS
SC
Veni, vidi, vinci
Panta rei.
https://cagonmimantu.wordpress.com/
Avatar de Usuario
Adelo Herrero
vAdviser
vAdviser
Mensajes: 714
Registrado: 21 Sep 2005, 14:42

Mensaje por Adelo Herrero »

vamos a ver si digo una tonteria para empezar el día :wink:

Tienes la traducción de los campos en ficheros de texto que se podrían llamar ..."idioma.txt" con un formato similar a xml
<FOR_CLI>
CAMPO1
CAMPO2
CAMPO3
</FOR_CLI>
<FOR_F_PAGO>
CAMPO1
CAMPO2
</FOR_F_PAGO>

También necesitarás un chorro de variables globales del tipo:
$NOMBRE_CAMPO_1$, $NOMBRE_CAMPO_2$ ...

En el oninit del formulario tienes un proceso en el que:
1.- Abres el fichero del idioma (según empresa)
2.- vas a la etiqueta del formulario que estás abriendo y asignas a las variables el valor correspondiente.

Como es lógico, en el formulario, los nombres de campos serán las variables globales.

Que digo yo, que no lo he probado, pero supongo que funcionaría.
Por lo menos, si lo pruebas nos dices algo ¿vale? :P
Avatar de Usuario
Adelo Herrero
vAdviser
vAdviser
Mensajes: 714
Registrado: 21 Sep 2005, 14:42

Mensaje por Adelo Herrero »

Aclaración (por si acaso):

Ficha de empresa: Le decimos el nombre del fichero .txt que ha de leer, p.e. aleman.txt

De esta forma, si añadimos un nuevo idioma, solamente necesitamos crear otro fichero de "nombres de campo" o "literales en formularios, informes, etc." traducido y nuestro proceso será "transparente". Lo malo, es que si añadimos un campo nuevo en un formulario, necesitaremos actualizar cada fichero de idiomas, pero claro, no se puede tener todo.

Jo, ahora estoy intrigado, mmm voy a ver si algun cliente necesita una aplicación multiidioma y así lo pruebo :lol:
Avatar de Usuario
Fran
vCoach
vCoach
Mensajes: 6599
Registrado: 21 Sep 2005, 08:23

Mensaje por Fran »

Buenos dias:

Varias cosas:

1.- El sistema que propone Adelo funciona bien:

En su día hice algo parecido, pero guardo los textos en una tabla, en lugar de utilizar un txt. Se trataba de una opción de ofertas multi-idioma dentro de un CRM desarrollado completamente en inglés. La aplicación se usa en varios paises europeos y los clientes de cada pais demandan las ofertas en su idioma natal... así que hubo que romperse la cabeza para hacerlo.

En mi caso los textos están en una tabla y el idioma se selecciona a la hora de confeccionar (o imprimir, para los informes impresos también se puede utilizar) la oferta. Esto es así porque, p. ej., un comercial alemán puede hacer una oferta a un cliente holandés y no sirven los textos en alemán.

Como digo funciona bien para formularios e informes.

2.- Rejillas, búsquedas, localizadores, etc:

Pero si quieres que toda la aplicación sea multi-idioma, no te basta con cambiar los formularios y los informes. Tienes que poder cambiar los textos de todos los objetos (Localizadores, búsquedas, rejillas, etc) y esto es otra historia.

Como sabes los textos de las búsquedas, rejillas, localizadores, no son variables.

Puedes solventar el título de las rejillas añadiéndolas como retornos e indicando el texto en el idioma correcto. Esto implica que no podrás disparar búsquedas directamente desde los menús, tendrás que utilizar siempre procesos.

Si embargo los nombres de las búsquedas y localizadores no tienen solución. Están prefijados y no puedes cambiarlos en ejecución... en mi caso tengo la suerte de que la matriz de la multinacional es americana y el idioma oficial es el inglés. Por lo tanto escribo todo en inglés y problema resuelto, pero tu caso sería distinto.

3.- Menús del Irunner:

Pero además tienes otro problema de difícil solución: Los menús, mensajes de error, preguntas, etc del Irunner.

Todos estos textos están en castellano e incluidos dentro del EXE, con lo cual no podrás cambiarlos dinámicamente. Si te curras la aplicación para que los forms, rejillas e informes sean multi-idioma el ejecutor, hoy por hoy, no lo será.

En su día (previo permiso por escrito de Atica Software, S.L.) traduje al inglés una copia del Irunner de la versión 6.1.10. Esto lo hice con un editor de recursos y cambiando las cadenas a pedal. Lo necesitaba para poder cambiar la versión del motor a mi cliente y me puse a hacerlo.
El resultado de la aventura sigue funcionando hoy en día, pero la traducción no pudo ser completa... digamos que al 98%.

Determinadas cosas no pueden ser traducidas ni utilizando esta técnica:

- Nombres de los meses en los objetos calendario.
- Texto "Fichas" de la toolbar de las rejillas.
- Texto de los botones en los cuadros de diálogo estandard (aunque no se si esto varía en función del idioma del windows que ejecuta la aplicación).
...

La única opción que te queda es traducir el Irunner a tantos idiomas como vayas a manejar en la aplicación... árdua tarea, pero posible. A cada cliente le instalarias el Irunner adecuado según su idioma.
Tendrías que obtener permiso de Velneo para ello, ya que hacerlo sin permiso es ilegal.

Resumiendo: Con la versión actual puedes "simular" un comportamiento multi-idioma con mucho trabajo ( créeme que es mucho ) pero no será, ni mucho menos, un multi-idioma real.

Una vez soltado este tostón creo que lo mejor sería esperar a la versión 7. De todas formas es decisión vuestra el emprender el desarrollo o no.

Por mi parte puedo aportar el Irunner de la versión 6.1.10 en inglés. Se lo tendrías que pedir a Velneo, ya que yo tengo permiso para utilizarlo pero no para distribuirlo.
Un saludo,

Francisco Javier Pérez Novo
EfeUno Consultores de Gestión y Software, S.L.
fjpnovo@efeuno.org
http://www.efeuno.org
(+34) 91 519 44 86
Skype: Fran-EfeUno

Google Maps:
40.447943147972445, -3.6719655990600586
Avatar de Usuario
Agustin
vCoach
vCoach
Mensajes: 2953
Registrado: 21 Sep 2005, 06:17

Mensaje por Agustin »

Me arrepiento de haber mandado un post tan chapucero y me quito el sombrero ante las otras soluciones.
Lo dicho, con gente de este nivel uno no hace más que aprender. Soys un Crack
SC
Veni, vidi, vinci
Panta rei.
https://cagonmimantu.wordpress.com/
Avatar de Usuario
amadis
vLeader
vLeader
Mensajes: 1312
Registrado: 22 Sep 2005, 16:08

Mensaje por amadis »

Sólo me queda decir: esperemos que la versión 7 salga pronto... Gracias a todos y felices fiestas...
vSaludos...

Amadís
Axos Soluciones Visuales
Software Gestión Distribución

Web: http://www.axosvisual.com
Responder