miércoles, 7 de agosto de 2013

Poner el idioma de los web services en español

Con la arquitectura por capas que presenta navision, es posible que se genere alguna discordancia por configuraciones distintas en diferentes capas.
La que vamos a ver en este post es la referente a la configuracion de la capa de los web services. Es posible que instalemos la capa del servidor de navision en español y la capa de los web services los instalemos en ingles.
Esto puede parecer algo banal en principio, pero se puede convertir en un autentico quebradero de cabeza cuando trabajamos por ejemplo con fechas, en los web services las tratamos en formato mm/dd/aa y en el cliente clasico como dd/mm/aa.
No solo afecta en esto, tambien los calculos de fechas se ven afectados al tener que tratar con un lenguaje u otro.
Por ejemplo para calcular 1 semana en un idioma es 1S y en otro es 1W.

Para solucionarlo hay que seguir los siguientes pasos:

Instalamos el paquete de idioma español, esta en el cd de instalacion en la ruta Installers\ES\Server, con esto se instala el idioma. Una vez instalada se creara en el servidor dentro de la carpeta C:\Program Files (x86)\Microsoft Dynamics NAV\60\Service (La carpeta de los web services, la ruta puede variar) una carpeta es-ES y ESP.


 


Cuando se instalan los web services se configura en el servicio una cuenta de ejecucion que tiene que tener que ser un usuario con permisos en navision.

En la tabla 2000000073 se crea una entrada con el usuario de los web services y el idioma que queremos, que en nuestro caso es el español.


Vereis en muchas webs diferentes codificaciones, pero la que a mi me ha funcionado es la 1034.

Para finalizar, microsoft recomienda ejecutar la instruccion GLOBALLANGUAGE(1034); al menus una vez.
¿Que quiere decir esto? pues muy sencillo, crear una codeunit con una funcion que contenga la instruccion. Publicarla y ejecutarla desde nuestra aplicacion que consume los web services.

Con esto tendremos ambas capas en español.

No hay comentarios:

Publicar un comentario