• Este debate tiene 4 respuestas, 2 mensajes y ha sido actualizado por última vez el hace 4 años, 4 meses por Laura Nicolàs.
Viendo 5 entradas - de la 1 a la 5 (de un total de 5)

Informe al idioma del cliente



  • pedperpat
    Participante
    pedperpat

    Buenos días,

    Estoy intentando hacer que un informe salga en inglés o en español dependiendo del código idioma del cliente.

    Dicho código idioma viaja la cabecera de la factura.

     

    Estoy haciendo “CurrReport.LANGUAGE := Language.GetLanguageID(“Language Code”);” pero siempre me sale en inglés sea el cliente que sea. Si es un cliente ESP me sigue saliendo en inglés.

     

    Tengo los caption en idioma ESP, ENU y ENG, no entiendo qué es lo que ocurre.

    Espero poder resolverlo, es raro lo que ocurre. Muchas gracias por la ayuda.

    Un saludo.

    #6761

    Laura Nicolàs
    Superadministrador
    Laura Nicolàs

    Hola,

    Es raro, porque el código que has puesto es justamente el que se tiene que usar.

    – Has debugado o sacado un MESSAGE después de la instrucción para verificar que valor tienes ahora en CurrReport.LANGUAGE?
    – La la tabla Language, existe el código de idioma y el campo “ID Idioma Windows” es correcto?

    No se si afectará… pero en Business Central me he encontrado que:

    • El idioma Español (España) lo asocian con el “Windows Language ID” 3082 , que es “Spanish – Spain (Modern Sort)”
    • En la tabla Language, ESP sigue apuntando a el “Windows Language ID” 1034, que es “Spanish – Spain (Traditional Sort)”

    Yo, haciendo cosas por código, tuve que acabar poniendo esto:

    if GlobalLanguage in [1034, 3082] then

    A ver si verificando estas cosas lo acabas sacando. Ya nos dirás.

    Salut!
    Laura Nicolàs

    #6763

    pedperpat
    Participante
    pedperpat

    Buenas tardes,

    El “Windows Language ID” 3082 no me aparece, el que sí que tengo es el ID 1034.

    No sé si será por eso, ¿podría desviarlo todo para que saliese del 1034?

    En los MESSAGE me ha sacado que sí que efectivamente aparece como “ESP” el código idioma de la cabecera de la factura. Además haciendo get del cliente para sacar su “cód. Idioma”, me vuelve a sacar efectivamente que se trata de un cliente con código idioma “ESP”.

    Está correcto que aparezca en inglés ya que tengo clientes ingleses pero aparece en inglés para todo aún cogiendo el “cód. idioma” de “ESP”.

    Seguiré investigando, un saludo y muchas gracias por la pista

    #6777

    pedperpat
    Participante
    pedperpat

    Vaya, después de tanto tiempo me he dado cuenta de que lo que estaba pasando al layout iba en forma de labels, tras pasarlo a text constants se ha solucionado el problema.

     

    Los labels no son dinámicos para los idiomas y los text constant sí, por lo que se adecuan más al idioma de cada cliente.

    Ese era el motivo por el que no me cambiaba el idioma.

     

    Muchas gracias por todo y espero que si alguien tropiece encuentre este post para poder salir rápidamente de su tropiezo.

    Un saludo.

    #6820

    Laura Nicolàs
    Superadministrador
    Laura Nicolàs

    Gracias pedperpat!

    Entiendo que estás desarrollando en C/SIDE.

    En VSCODE es al contrario, con el nuevo sistema de traducciones las TextConst no funcionan pero los label sí.
    Tenemos un curso de Traducciones XLIFF, ya que el antiguo sistema (con propiedades ML) va a dejar de funcionar en vscode.

    Salut!
    Laura Nicolàs

    #6828
Viendo 5 entradas - de la 1 a la 5 (de un total de 5)

Debe iniciar sesión para responder a este tema.