jueves, 9 de mayo de 2013

Rendimiento en AX 2012: "Rendimiento VS Información extra en pantalla"

Después de un año sin escribir ninguna entrada en el Blog, hoy me he animado a hablar de uno de los temas que más nos “ocupan” a las personas que trabajamos en implantación de Microsoft Dynamics AX2012.
 
Los que llevamos implantando hace años AX, hemos podido ver la evolución del producto desde que lo adquirió Microsoft, la progresión en cada nueva versión ha sido vertiginosa.

En la versión de AX2012 podemos ver una nueva evolución, dónde a nivel de infraestructura se ha incrementado la complejidad, igual que el número de componentes que intervienen dentro del funcionamiento e instalación del sistema.
 
Además los formularios se han diseñado para explotar visualmente el sistema y volcar datos (consultas, KPIs, Factbox, etc…) mientras vamos navegando por los diferentes formularios y en tiempo real.
 
Todo esto conjuntamente, provoca que el nuevo AX necesite y consuma muchos recursos de HW y aun así  la sensación sea de lentitud cuando lo comparamos con otras versiones anteriores.

Después de haber implantado varios proyectos de AX2012 durante este pasado año, he sacado la siguiente conclusión y es que en la mayoría de los casos es preferible “un buen rendimiento VS información extra en pantalla”. Con esta premisa mi recomendación es que prime siempre la optimización del rendimiento.
 
A continuación explicaré dos pequeños trucos que permitirán mejorar la  sensación de lentitud que muchos usuarios experimentan mientras navegan por AX2012.

   1.       Configuración de rendimiento del cliente.  
       [Administración del Sistema>Configurar>Opciones de rendimiento del cliente]

Desactivar la opción de cuadros informativos. Esto proporcionará mayor rapidez en la carga de todos los formularios, ya que deshabilitará los cuadros de consultas que muestran a la derecha de formularios, de forma estándar.





 2.       Configuración de rendimiento del Servidor AOS.
        [Administración del Sistema >Configurar>Configuración del Servidor]

Modificar los parámetros para permitir que el clúster pueda ser más grande. Esto permitirá poder mejorar más el rendimiento en algunos casos, aunque consumirá más recursos.

El Cache de tabla:   pasa de 32 a 96.

El Cache global:       pasa de 100.000,00 a 500.000,00

 

Espero que os sea de utilidad, espero vuestros comentarios y feedback si lo probáis.

miércoles, 1 de febrero de 2012

Creando un report básico en AX 2012

Vuelvo después de unos días sin postear nada, cuesta volver a la rutina y coger de nuevo el ritmo del día a día, pero ya estoy de nuevo aquí.
Después de unas cuantas peticiones,  preguntando detalles sobre los reports,  hoy intentaré explicar los pasos para crear un report básico en AX 2012.
Tal como comentaba en el post de Reporting de la semana pasada, en AX 2012 desaparecen los reports nativos y únicamente se pueden implementar SSRS reports.
Esto supone más complejidad a la hora de hacer un report básico, aunque nos dará más potencia en reports más complejos.
Los pasos para crear un report básico son los siguientes:
1.       Crear una Query dentro de AX.
a.   Tendremos que crear una query dentro del AOT en AX.
b.   Incluiremos las tablas y seleccionaremos los campos que queremos que aparezcan en el report.
2.       Crear un nuevo report en Visual Studio.
a.   Desde el Visual  Studio crearemos un nuevo proyecto.
b.   Seleccionaremos la plantilla “Report Model”, del nodo de Microsoft Dynamics AX.
c.   Crearemos el  nuevo report seleccionando la Query del paso 1.
d.   Para el nuevo report podremos aplicar un “Estilo” y  un “Layout template”. Esto nos permitirá darle un formato automático. Al estilo de los reports nativos de AX.
3.       Añadir agrupaciones y aplicar ordenación.
a.   Podremos añadir los campos de ordenación.
b.   También campos agregados (sum, count,…).
4.       Filtros.
a.   Podremos crear parámetros dentro del report en Visual Studio.
b.   También crear filtros.
5.       Preview.
a.   Desde Visual Studio, podremos previsualizar el report creado, realizando la query sobre AX.
b.   Esto permitirá testearlo y hacer cualquier retoque.
c.   Dentro de este paso, el report sólo se podrá visualizar desde el Visual Studio y no desde AX
6.       Guardar y hacer deploy.
a.   Una vez finalizado el desarrollo, deberemos guardar el report en el Visual Studio.
b.   Se deberá hacer deploy desde el Visual Studio, esto permitirá visualizar el report dentro de AX en el nodo del AOT  “SSRS report”.
c.   Se podrá crear un nuevo Menú Item de tipo Output dentro del AOT, haciendo referencia al report. Después lanzar el report desde cualquier Menú de AX.
Espero que con este post, os llevéis una idea  general, del coste en realizar un report sencillo en AX 2012 y que conozcáis a grandes rasgos los pasos que implica.  Ahora toca adaptarnos al cambio :-).

jueves, 26 de enero de 2012

Novedades técnicas: los Modelos

Ayer finalicé la formación técnica en la Microsot Academy en Amasterdam y ya estoy de vuelta a casa en Barcelona, mis compañeros volvieron a casa ya el lunes. Con Development I y II, se completa el curso de Software Architect cerrando así la visión general técnica de AX 2012.
Por el momento, mi intención es continuar actualizando este blog, mientras vea que hay movimiento, nuevos miembros y comentarios.  Motiva mucho ver que la gente se interesa.

Sobre el tema técnico hay mucho que comentar, así que iré creando nuevos posts para tratar por separado cada uno de ellos y con la idea de no dejar de banda temas funcionales que han quedado en el tintero, iré alternando funcional y técnico.
Hoy quiero comentar uno de los nuevos conceptos que podemos encontrar a nivel técnico, además nos sorprenderá a las personas que llevamos tiempo trabajando con AX. Hablaremos de los modelos.
En todas las versiones AX aparecen las capas, de las que ya conocemos su funcionamiento y finalidad. Pero ahora aparece el modelo,  un nuevo concepto que nos permitirá añadir un nivel más a la hora de estructurar el "dónde" trabajará nuestro equipo de programadores.

¿Qué es un modelo?
Un modelo es una agrupación lógica de objetos dentro de una capa. Significa que dentro de un modelo podremos incluir todas aquellos objetos  modificados o creados, por uno o varios programadores.
El  modelo está pensado para grandes desarrollos o implementaciones, donde varios programadores pueden estar  trabajando en un mismo entorno y en una misma capa.

AX 2012, nos permitirá gestionar los modelos:
  • Crear nuevos modelos.
  • Seleccionar con qué modelo queremos trabajar.
  • Exportar todas las modificaciones de un modelo.
  • Eliminar un modelo.
  • Importar el modelo.
  • Traspasar modificaciones de un objeto de un modelo a otro.
El modelo nos resultará de gran utilidad para aglutinar cambios, exportarlos  y poder ser traspasados fácilmente de un entorno a otro.

¿Qué diferencia hay entre el  proyecto y el modelo?
El proyecto está pensado para contener conceptualmente, unidades más pequeñas, los diferentes desarrollos o GAPs.

Cuando lo que queremos es realizar un GAP o varios pequeños GAPs lo adecuado será utilizar un proyecto.

Además el proyecto también permite albergar objetos modificados en varias capas, el modelo sólo contendrá modificaciones realizadas en una capa.
También hemos de pensar que un proyecto, puede contener objetos que a su vez se encuentran dentro  de uno o varios modelos.
Un ejemplo totalmente inventado, para ver diferentes posibilidades:
En un desarrollo con varias fases:
  • El equipo del partener trabajará en la capa VAR.
  • Creando un modelo por fase y área: Modelo Fase I Finanzas, Modelo Fase II Finanzas, Modelo Fase I Trade, Modelo Fase II Trade, ....
  • Creando varios proyectos: Proyecto GAP 0001, Proyecto GAP 0002, Proyecto GAP 0003, ...
  • El cliente final trabajará en la capa CUS.
  • Creando dos modelos: Modelo reports, Modelo cubos.
  • Creando varios proyectos: Proyecto Report 01, Proyecto Report 02, Proyecto Cubo 01, Proyecto Cubo 02.
Espero que este nuevo concepto haya quedado claro, si os quedan dudas, preguntarme e intento poner otro ejemplo.

martes, 24 de enero de 2012

Reporting en AX 2012..... Conclusiones

Hoy abrimos una nueva etapa en el Blog, puesto que este será el primer post encarado más a la figura técnica. Hoy quiero compartir las primeras impresiones que he podido extraer del nuevo reporting de AX 2012.
A estas alturas creo que nadie se sorprenderá, si anunciamos que en esta nueva versión desaparecen los Reports nativos de AX.  Pasando de un motor de reports ya antiguo y con limitaciones, a utilizar SQL Server Reporting Services (SSRS).
En AX 2009 ya se podía utilizar el reporting SSRS, pero realmente en la mayoría de casos se seguía utilizando los reports nativos de AX, que por otro lado la mayoría de reports estándar se mantenían en esta tecnología.
En AX 2012 se incorporan 710 reports ya predefinidos (según nos comentaron en el curso). Así que podremos utilizarlos como base para cualquier customización.
Para los que llevamos ya tiempo trabajando con AX, a lo primero que tendremos que adaptarnos es a entender que el desarrollo de reporting ya no se realizará íntegramente en el ERP, sino que trabajaremos en diferentes entornos: MorphX, Visual Studio, Excel, Word...


Las primeras conclusiones que he podido sacar son, que el desarrollo puede llegar a volverse más complejo, pero que ya no estaremos limitados. Además al haberse eliminado los reports nativos de AX, nos obligan a aprender a utilizar una tecnología realmente potente, que nos permite explotar directamente los datos del sistema, generar cubos, traspasar la información a Excel/Word...
También coge mucha importancia la customización de los “rol centers”, utilizando los diferentes elementos de reporting que con SSRS podemos desarrollar a modo de cuadro de mando: KPIs, Presentación gráfica de cubos,... Estoy convencido que tendrá una gran acogida por parte de los clientes, ya que en la versión AX2009, se dejó bastante de lado.
En otro post, explicaré a grandes rasgos los pasos que se deberán seguir para realizar el desarrollo de un informe simple, a modo así de ejemplo del coste en desarrollar un nuevo informe.

viernes, 20 de enero de 2012

Distribución y comercial AX 2012: ¿Qué hay de nuevo?

Tal como comentaba en el post anterior, las novedades y modificaciones en esta área, son superficiales.
A continuación comentaré algunas de las novedades de AX 2012 que podemos encontrar a nivel funcional en el apartado de Distribución y Comercial:
1.       Acuerdos comerciales:
a.   Crear acuerdos comerciales a partir de un diario. Si bien esta no es una novedad de AX 2012, ya que en versiones anteriores ya la podíamos encontrar, sí que es una novedad el que todos los precios y descuentos deben ser generado desde un diario forzosamente. No podremos crear directamente el precio o descuento en la tabla de acuerdos comerciales, deberemos crear un diario de precios y registrarlo.   Además este diario se ve integrado con workflows, pudiendo pasar por un circuito de aceptación antes de ser registrado.
Aunque por un lado, aumenta el control en el mantenimiento de precios, por el otro perdemos agilidad e incluso se podría entender como una limitación.


b.   Contratos de venta/compra.  En esta versión, aparece esta nueva funcionalidad que podríamos asemejar al concepto de un “Pedido Marco”, son los contratos.   Desde los contratos de venta o compra, podemos establecer y configurar los acuerdos comerciales, las cantidades, fecha de vigencia, e ir generando los pedidos de venta y compra, de forma periódica.


c.   Redondeo de precios psicológicos. Funcionalidad que permite la automatización del redondeo de los precios, configurando las reglas y el formato del redondeo.



2.       Pedidos de venta:
a.   Entregas planificadas. Una nueva funcionalidad, que nos permitirá dentro de los pedidos de venta, establecer para una misma línea de venta diferentes fechas de entrega. En el pedido podremos visualizar, la línea padre y las líneas hijas por cada fecha de entrega planificacada.
b.   Añadir líneas. Esta funcionalidad es mejorada en AX 2012 con respecto a versiones anteriores. El formulario de añadir líneas, que se llama desde el pedido de venta, ahora mostrará dos Tabs, uno con todos los artículos y otro mostrando sólo los artículos vendidos anteriormente al cliente. En este formulario podremos ver su disponible y de forma sencilla informar de las cantidades del pedido, para después crear todas las líneas conjuntamente dentro del pedido.
c.   Crear líneas de venta sin artículo. Podremos crear líneas de pedidos, sin informar del artículo, tan sólo con la categoría. De esta manera podremos generar pedidos sin movimientos de inventario, rápidamente y sin necesidad de utilizar artículos de servicios genéricos.
d.   Copiar desde un diario, en pedido de venta/compra.  La funcionalidad de copiar en pedidos de venta y compra, se ve ampliada permitiendo copiar desde diarios.
e.   Poder calcular el BOM desde los pedidos de venta y transferir el precio a la línea de venta.

3.       Ordenes de transferencia:
a.   Nuevo tipo de transacción “Scrap” (deshecho).  Este nuevo tipo será utilizado para las roturas.
b.   Tiempos de entrega en pedidos de transferencia.

4.   Permitir primero facturar una venta y posteriormente contabilizar el albarán.  En esta nueva versión se permitirá registrar la factura de venta y posteriormente contabilizar el albarán.
5.   Pedidos de compra:
a.   Gestión de cambios “Change Managerment”, funcionalidad que permite guardar la información detallada de todas las modificaciones que sufre un pedido de compra.
b.   Workflow de compras.
6.       AX 2012 permite guardar diferentes versiones de costes de inventario.

Distribución y Logística..... conclusiones

Después de un par de días sin postear, ya estoy de vuelta con más cosas interesantes sobre AX 2012. En el curso, hoy ya hemos finalizado toda la parte de logística, incluyendo  la parte de almacenes avanzados.
Así que ya tengo una visión completa de todas las novedades que nos podemos encontrar en esta nueva versión en el área de Comercial y Logística. Además he aprovechado que viajo con dos expertos en Trade & Logistics Juan y Jon, para contrastar mis apuntes.
Lo primero que voy a compartir, es la conclusión a la que he llegado, que creo es bastante próxima a la realidad. Así como en el apartado de Finanzas, el cambio ha sido profundo, desde la base y realmente nos encontramos con un producto evolucionado, en el apartado de Logística nos encontramos con una funcionalidad muy similar a la versión AX2009.
Los formularios y los puntos de acceso, han cambiado pero la funcionalidad es muy similar, podríamos decir que el cambio ha sido superficial.  Lo que no se significa que a nivel de estructura de tablas y a nivel técnico sea igual, cosa que intuyo se complica.
En breve, publicaré un post explicando las novedades de Trade y también tengo en cola: hablar de la consolidación entre empresas, de las estructuras organizativas (Entidad jurídica), del intercompany y evidentemente la semana que viene de toda la parte técnica J.
Para poner un poco prioridad a estos temas, espero que me digáis cual os motiva más y por orden de votación iré posteando.
Os dejo una foto preciosa de Amsterdam…..

martes, 17 de enero de 2012

Gestión de cobros en AX 2012 (Gestión de impagados)

Ya llevamos 8 días de formación y cada día estamos viendo muchas cosas, en muy poco tiempo. Veréis que en los posts voy a ir saltando de un área a otra, ya que hay mucho que contar  y creo que así será más ameno  

Hoy hablaremos del módulo de “Collections Management”, Gestión de cobros. En AX 2012 nos encontramos con una Gestión de cobros, evolucionada que nos permitirá llevar un control más exhaustivo de los impagados y  generar las notificaciones al cliente.

El módulo de “Gestión de cobros”, nos permite:
·         Imprimir los extractos de cuentas de clientes.
·         Cartas de cobro.
o   Configurar y crear cartas de cobro.
o   Procesar las cartas de cobro.
o   Enviar cartas de cobro.
·         Intereses.
o   Configurar código de interés.
o   Cálculo del interés.
·         Lista de cobros.
·         Condonar, restablecer o invertir interés y cuotas.
·         Crear transacciones de cancelación.
·         Procesar pagos NSF.

El sistema nos permite generar los extractos de cuenta, que son documentos con información del saldo del cliente. Donde se muestra el saldo pendiente y las transacciones del cliente durante un periodo determinado.


La nueva funcionalidad de cartas de cobro, permite tomar acciones para los impagados. Generar cartas de cobro, que serán enviadas al cliente.
Permitiendo crear varios tipos de carta de cobro,  que serán utilizadas dentro de la secuencia que hayamos configurado.

Las cartas de cobro, funcionan de manera secuencial, según se haya configurado , por ejemplo:
1.      Carta de cobro 1: Primer aviso.
2.      Carta de cobro 2: Segundo aviso.
3.      Carta de cobro 3: Último aviso.
La carta 2 se enviará después de la carta 1 y la carta 3 después de la carta 2.

Además se permite tener configuradas más de una secuencia y será en el perfil del registro del cliente donde parametrizaremos que secuencia utilizar, para cada caso. Se podrá seleccionar una configuración distinta por cliente o grupos de cliente, en el perfil de contabilización.


El procesamiento de las cartas de cobro permitirá imprimirlas y enviarlas por e-mail.

También encontramos una nueva funcionalidad de notas de interés, que permite generar y cobrar intereses, configurando cuando y como se calcula el interés. Para facturas pendientes de cobro o para facturas cobradas pero ya pasada la fecha de vencimiento. El sistema nos permite crear y registrar notas de interés, controlando su cobro.

Este módulo, nos permite llevar la gestión de cobros sobre las transacciones vencidas. Así como la asignación de agentes de cobro, ya sean empleados o contratistas.

Desde el formulario de cobros, se podrá hacer el seguimiento, crear casos, marcar transacciones como conflicto o seguimiento, enviar e-mails, procesar documentos NSF (No hay fondos suficientes). También consultar las transacciones y saldos de cliente.


Para finalizar, quiero comentar algo que vimos en la formación y que considero una buena utilidad, poder exportar a Excel el formulario de gestión de cobros y desde el mismo Excel poder actualizarlo cuando se desee.

Esto da la posibilidad, de modificar el Excel para aprovechar su potencia y mejorar las consultas,  ya sabemos que a todos los managers les encanta poder trabajar con Excel :-), esta funcionalidad es general para toda la aplicación.

A mí entender este módulo, aunque es mejorable, nos proporciona una gestión de impagados básica, que a dia de hoy, es una de las necesidades y preocupaciones principales en las empresas de todos los sectores, incrementada por los tiempos de crisis que corren.