Tag: Events

HOWTO: Eventos en AX 2012 para minimizar conflictos

Como se puede adivinar de algunos de mis anteriores post,  soy un fiel defensor de uno de los grandes olvidados de AX 2012: Los eventos En mi afán de evangelizar a favor de uso, he dado con un ejemplo muy evidente de sus ventajas. A estas alturas supongo que casi todo el mundo conoce la posibilidad de añadir nuevas opciones al menú Add-Ins del entorno de desarrollo de AX 2012 y anteriores. Es realmente fácil, sólo hay que crear una nueva clase con un método main al uso, un menú ítem que apunte a esa clase, y añadir el menú ítem al menú estándar SysContextMenu. Con esto conseguimos que nuestro menú ítem se muestre al hacer click-derecho sobre los elementos del AOT, por ejemplo (Startup Project es el nuevo add-in): SysContextMenu Add-In Sin embargo, para hacerlo realmente bien es necesario alguna modificación más. En mi ejemplo, el nuevo add-in sirve para convertir el proyecto seleccionado en el proyecto de inicio para el usuario actual. Es simple, pero nos sirve como ejemplo de un add-in que solo debe mostrarse cuando hacemos click derecho en un proyecto, y no en cualquier otro tipo de elemento del AOT. Para eso, como muestra la documentación, debemos modificar el método verifyItem de la clase SysContextMenu, que es un infierno de if-else in switches para determinar si el elemento debe mostrarse o no, dependiendo de la clase que lo llama, el tipo de elemento y un larguísimo y desastroso etcétera.
(más…)