Cumulative Update 3 for Microsoft Dynamics AX 2012

Se acaba de publicar hace unos minutos la última actualización acumulativa para Microsoft Dynamics AX 2012: Como de costumbre, recordar que estas actualizaciones son acumulativas por lo que la última ya incluye el contenido de las anteriores, que ya incluyen desde el lanzamiento oficial de la versión AX2012 casi 700 hotfixes.
Leer Más >>

Manejar Enumerados de Dynamics AX en SQL Server (SSIS, SSRS, SSAS, …)

Manejar los valores de campos de tipo BaseEnum de Microsoft Dynamics AX en la base de datos (ya sea en T-SQL, en SSRS, SSIS, SSAS, ...) puede ser complicado si se intenta hacer manualmente. El valor de los enumerados se guarda en la base de datos como el número del elemento pero cuando hay que presentar ese valor al usuario (en un informe, un cubo, etc...) hay que mostrar la descripción, el Label del campo, no el número que hay en la tabla, pero este valor no está disponible en AX de manera inmediata así que ¿Cómo hacerlo? Afortunadamente, Microsoft ha solucionado ese problema para su propia integración con informes de Reporting Services y esa solución es fácilmente adaptable a nuestros requerimientos: Durante la instalación de las Extensiones de Bussines Intelligence de Microsoft Dynamisc AX se actualiza automáticamente, dependiendo de la configuración elegida, la tabla del sistema SRSANALYSISENUMS con los valores y descripciones, por idioma, de todos los enumerados utilizados en todas las tablas que pertenecen a una Perspectiva. Si a posteriori se quiere relanzar esta configuración para añadir nuevas tablas o nuevos idiomas, es posible hacerlo utilizando el Asistente para proyecto de SQL Server Analysis Services y seleccionando la opción Configurar: Suponiendo que esta configuración ya está realizada, y suponiendo que lo que queremos es "traducir" las cadenas de texto en el idioma que corresponda a su valor numérico desde SQL Server Integration Services (el procedimiento se puede aplicar a otras áreas como SSAS o vistas de SQL por ejemplo) he optado por crear un procedimiento almacenado que realice la consulta de una manera reutilizable:

[cc_tsql]CREATE PROCEDURE [Staging].[ax_EnumValues] ( @enumName NVARCHAR(60), @languageId nvarchar(7) = NULL ) AS IF @languageId IS NULL SELECT ENUMITEMVALUE, ENUMITEMLABEL, LANGUAGEID FROM SRSANALYSISENUMS WHERE ENUMNAME = @enumName ELSE SELECT ENUMITEMVALUE, ENUMITEMLABEL, LANGUAGEID FROM SRSANALYSISENUMS WHERE ENUMNAME = @enumName AND LANGUAGEID = @languageId GO[/cc_tsql] Procedimiento almacenado EnumValues De esta manera en SSIS se puede incluir una transformación de tipo Lookup (Full cache para que se ejecutare sólo una vez para cada valor del enumerado que se utilice): y utilizar este procedimiento almacenado como origen de datos del Lookup: El idioma se puede pasar al procedimiento directamente o se puede incluir en el Data Flow para hacerlo configurable, como es este caso. De manera que esta transformación añada una nueva columna conteniendo la descripción que buscábamos en el idioma que viene de los datos e incluso podríamos añadir diversas columnas para cada idioma si, por ejemplo, nuestro cubo estubiera traducido: Espero que sea útil 🙂

Leer Más >>

Configurar Firewall en instalaciones Microsoft Dynamics AX 2012Microsoft Dynamics AX 2012 Firewall Setup

Complementando el artículo que publiqué hace unas semanas, recopilando los datos para configurar la seguridad de instalaciones Microsoft Dynamics AX 2012, el siguiente cuadro detalla la información necesaria para configurar el Firewall de Windows en cada una de las máquinas implicadas en una de estas instalaciones.
Componente Equipo Configuración del Firewall Notas
Setup Permitir conexiones HTTP salientes Para acceder a la documentacion disponible durante el wizard de instalación, es necesario tener acceso a Internet desde el equipo que ejecuta el setup.
Base de Datos Servidor SQL Server Excluir el puerto utilizado por SQL Server (1433 por defecto) Más información en la guía de instalación de SQL Server.
Application Object Server (AOS) Servidor AOS
  • Excluir el puerto TCP/IP utilizado por el AOS (2712 por defecto). La instalación crea una regla de entrada automáticamente para este puerto (Dynamics AX 6.0 -MicrosoftDynamicsAX (RPC)).
  • Excluir el puerto de los servicios WSDL utilizado por el AOS (8101 por defecto). La instalación crea una regla de entrada automáticamente para este puerto (Dynamics AX 6.0 -MicrosoftDynamicsAX (WSDL)).
  • Excluir el puerto del endpoint de los servicios utilizado por el AOS (8201 por defecto). La instalación crea una regla de entrada automáticamente para este puerto (Dynamics AX 6.0 -MicrosoftDynamicsAX (NetTCP)).
El Firewall de Windows debe estar activado en el equipo. Cada instancia de AOS utiliza un puerto diferente. NOTA: Por defecto, cada vez que se instala una instancia de AOS en un equipo, el número de puerto TCP/IP y los puertos de los endpoint de sus servicios se incrementan en uno. Por ejemplo, la segunda instancia de AOS en un equipo debe ser asignada al puerto TCP/IP 2713 por defecto.
Cliente Equipo cliente Excluir Ax32.exe. El cliente utiliza un puerto TCP para conectar al AOS.
Business Intelligence Reporting Server Excluir el puerto utilizado por el directorio virtual de Reporting Services si no es el 80.
Intelligence Components Analysis Server
  • Excluir el puerto utilizado por Analysis Services (2383 por defecto).
  • Si se utiliza el SQL Server Browser, debe excluir también el puerto 2382.
Más información en la guía de instalación de SQL Server.
Debugger Equipo de desarrollador Excluir AxDebug.exe y sus aplicaciones de destino como Ax32.exe y AxServ32.exe. El depurador utiliza un puerto TCP asignado dinámicamente.
Enterprise Portal Servidor web
  • Activar Web Server (HTTP).
  • Excluir el puerto utilizado por el sitio de Enterprise Portal si no es el 80.
Si no se activa el Web server en el Firewall de Windows, sólo se podrá acceder al sitio desde el servidor local.
Servidor de ayuda Servidor web Excluir el puerto utilizado por el sitio de Help Server, si no es el 80.
Enterprise Search Servidor web Excluir el puerto utilizado por el sitio de Búsqueda, si no es el 80.
Web Services Servidor web Excluir el puerto utilizado por el sitio de los servicios web, si no es el 80. Aplicaciones externas utilizan este puerto para consumir los servicios web de Microsoft Dynamics AX basados en IIS.
Se recomienda obtener información actualizada en la siguiente página de TechNet.

If you use Windows Firewall to help protect your computers, Microsoft Dynamics AX components require the settings in the following table. For updated detail, see this page on TechNet

Component Computer Firewall Setting Notes
Setup Any Allow outbound HTTP connections To access the documentation that is available from the Setup wizard, you must be able to connect to the Internet from the computer where you are running Setup.
Database or Model Store Database Server Exclude the port used by SQL Server (1433 by default) For more information, refer to the SQL Server documentation.
Application Object Server (AOS) AOS Server
  • Exclude the TCP/IP port used by the AOS (2712 by default)

Setup automatically creates the inbound rule "Dynamics AX 6.0 -MicrosoftDynamicsAX (RPC)" for the TCP/IP port.

  • Exclude the services WSDL port used by the AOS (8101 by default)

Setup automatically creates the inbound rule "Dynamics AX 6.0 -MicrosoftDynamicsAX (WSDL)" for the WSDL port.

  • Exclude the services endpoint port used by the AOS (8201 by default)

Setup automatically creates the inbound rule "Dynamics AX 6.0 -MicrosoftDynamicsAX (NetTCP)" for the services endpoint port.

Windows Firewall must be enabled on the computer. Each AOS instance must use a different port number. NOTE: By default, each time you install an additional AOS instance on a computer, the TCP/IP port number and the Services endpoint port numbers increment by one. For example, the second AOS instance on a computer would be assigned to TCP/IP port 2713 by default.
Client Client Workstation Exclude Ax32.exe. The client uses a TCP port to connect to the AOS.
Business Intelligence Components Reporting Server Exclude the port used by Reporting Services virtual directories, if other than port 80.
Business Intelligence Components Analysis Server
  • Exclude the port used by Analysis Services (2383 by default)
  • If you are using SQL Server Browser, you must also exclude port 2382.
For more information about configuring access to Analysis Services through Windows Firewall, refer to the SQL Server documentation on MSDN.
Debugger Developer Workstation Exclude AxDebug.exe and its target applications, such as Ax32.exe and AxServ32.exe. The debugger uses a dynamically allocated TCP port.
Enterprise Portal Web Server
  • Activate Web Server (HTTP)
  • Exclude the port used by the Enterprise Portal Web site, if other than port 80.
If you do not activate the Web server in Windows Firewall, you will only be able to view the site from the local server.
Help Server Web Server Exclude the port used by the Help Server web site, if other than port 80.
Enterprise Search Web Server Exclude the port used by the Search web site, if other than port 80.
Web Services Web Server Exclude the port used by the services web site, if other than port 80. External applications use this port to consume the IIS-based Microsoft Dynamics AX web services.
Leer Más >>
Windows 8 Hyper-V y Microsoft Dynamics AX

Windows 8 y Microsoft Dynamics AX Hyper-V Virtual Machine

Un problema conocido de todos los profesionales que trabajamos con Microsoft Dynamics AX, ya sean consultores o profesionales técnicos, es la necesidad de manejar muchas máquinas virtuales para diferentes entornos, versiones, clientes, etc... Si no fuera poco el problema del espacio que ocupan, también resulta confusa para muchos usuarios la elección del sistema de virtualización que utilizar sobre todo en portátiles utilizados para trabajo cotidiano y presentaciones sin acceso a un servidor. Hace tiempo publiqué un artículo de cómo hacer funcionar las máquinas virtuales Hyper-V que nos entrega Microsoft en un equipo sin Windows Server. Este problema se ha solucionado con el nuevo Windows 8, que nos permite ejecutar directamente las máquinas Hyper-V que nos entrega Microsoft directamente, sin ninguna transformación. Para ello tenemos que ir al Panel de Control y buscar la opción Turn Windows features on or off: Windows 8 Hyper-V y Microsoft Dynamics AX
Desde aquí activamos la funcionalidad Hyper-V con todos sus sub-nodos (**). Windows 8 Hyper-V y Microsoft Dynamics AX Y ya tenemos disponible el Hyper-V Manager en el escritorio: Windows 8 Hyper-V y Microsoft Dynamics AX Desde este Hyper-V Manager, los pasos para hacer funcionar la máquina virtual son los mismos que en un servidor Windows Server 2008 R2 con Hyper-V activado: Seleccionar el nodo del servidor, click derecho y Import Virtual Machine: Windows 8 Hyper-V y Microsoft Dynamics AX En el asistente de importación, seleccionar la carpeta donde está la máquina virtual descargada y descomprimida. Esta carpeta es la que incluye el fichero config.xml Windows 8 Hyper-V y Microsoft Dynamics AX Si todo va bien, el asistente encontrará la máquina virtual en la carpeta y nos mostrará el nombre de la misma: Windows 8 Hyper-V y Microsoft Dynamics AX En las opciones de importación, dependerá de cuántas veces queramos importar esta misma máquina virtual en este equipo. Si sólo la pensamos importar una vez, dejar la primera opción; Si se pretende importar varias veces (varias copias), seleccionar la primera o la segunda opción la primera vez, y la tercera opción para las siguientes copias. Windows 8 Hyper-V y Microsoft Dynamics AX La máquina virtual viene configurada de Microsoft para utilizar 8Gb de RAM. Como mi equipo no tiene suficiente RAM para asignar esa cantidad a la máquina virtual da este aviso. En mi caso lo he solucionado reduciendo la cantidad de memoria asignada a 5Gb y dejando dos y pico para el Windows 8 que hace de host. Windows 8 Hyper-V y Microsoft Dynamics AX A partir de aquí ya podemos conectar a la máquina virtual importada: Windows 8 Hyper-V y Microsoft Dynamics AX Y pulsar el botón Start para iniciarla: Windows 8 Hyper-V y Microsoft Dynamics AX Y a funcionar!! Ya podemos ir a hacer demos con nuestro flamante Windows 8: Windows 8 Hyper-V y Microsoft Dynamics AX

BONUS!!

Si en la pantalla que comentaba al principio del artículo (marcado con **) además de Hyper-V activamos la opción .NET Framework 3.5 (includes .NET 2.0 and 3.0) podremos instalar también el software Mouse without Borders que comentaba hace unos días con nuestro nuevo Windows 8!! Windows 8 Hyper-V y Microsoft Dynamics AX
Leer Más >>
Mouse Without Borders

Microsoft The Garage: Mouse Without Borders

Creo que merece la pena comentar la existencia de esta aplicación. Se puede descargar de forma gratuíta y forma parte del proyecto "The Garage" de Microsoft. Mouse Without Borders Mouse Without Borders permite utilizar el mismo teclado y ratón en varios PC's, extendiendo esta funcionalidad de "consola única" con funcionalidades extra como arrastrar y soltar, copiar y pegar y muchas optras opciones de un PC a otro. Utiliza varios PC's (yo lo utilizo con 3 portatiles) como si fuera un sólo equio con esta sencilla aplicación. Vale la pena probarla. DOWNLOAD: Microsoft download from The Garage: Mouse Without Borders EDITADO: Como describo aquí, se puede hacer funcionar esta aplicación en Windows 8!!
Leer Más >>

AX TIP: Error en el Role Center de la MV Demo de Dynamics AX 2009

La máquina virtual demo de Microsoft Dynamics AX 2009 da un error al ejecutar el Role Center:

Esto es porque la dirección a la que está apuntando la instalación de Dynamics AX (http://sharepoint/)no es accesible por el navegador. Se puede solucionar cambiando esta dirección en la configuración de AX pero siempre me ha resultado mas facil hacerlo de esta forma para mantener los accesos directos que vienen en la máquina demo: Abrir el fichero hosts situado en c:\Windows\System32\drivers\etc y añadir una línea, si no existe ya, que apunte la dirección sharepoint al equipo local, de esta manera: Ahora el sistema ya puede direccionar la dirección indicada y el Role Center es accesible tanto a través del navegador: Como directamente en Microsoft Dynamics AX: Existen otros accesos directos en la máquina virtual que tampoco funcionan hasta que se realiza esta configuración. Saludos!
Leer Más >>