Navegando por
Etiqueta: Dynamics AX

Asignar campo con valores predeterminados

Asignar campo con valores predeterminados

El título es entendible para cumplir con el objetivo. Ahora bien, no es tan simple desde el punto de vista del proceso para lograr dicho objetivo.  Básicamente, para lograrlo debemos agregar el campo necesario en el método initValue() de la tabla en cuestión. Debe ser el método de tabla para que se replique en todos los objetos que utilizan dicho campo. En este ejemplo, modificaremos el campo InclTax de tipo NoYes a marcarlo siempre (True por defecto). En la tabla…

Leer más Leer más

Guardar cambios dentro de una clase en capa USR

Guardar cambios dentro de una clase en capa USR

En Microsoft Dynamics AX 2009, no es tan sencillo almacenar los cambios realizados dentro de un objeto, sobre todo si hablamos de una clase y estamos trabajando en la capa USR. Es por eso, que debemos realizar dos pasos bien sencillos para poder guardar los cambios que hemos realizado en una clase que esté en otra capa que no sea USR. Para lograr nuestro objetivo debemos realizar estos pasos: Abrir la clase completa, seleccionar el método que deseamos guardar y…

Leer más Leer más

[AX 2012 R3 – How To] Agregar elementos a un contenedor

[AX 2012 R3 – How To] Agregar elementos a un contenedor

En Microsoft Dynamics AX un contenedor (container) se refiere a un vector (array). A diferencia de otros lenguajes, como C# por ejemplo, el vector acepta múltiple tipos de datos dentro de él, al mismo tiempo. El siguiente código demuestra cómo agregar los elementos a un contenedor: int numero = 1;str cadena = “hola”;long largo = 15684965;container contenedor;contenedor += numero;contenedor += cadena;contenedor += largo;// Imprimimos “hola”info(strfmt(“Vamos a saludar: %1”, conPeek(contenedor, 2))); De esta manera los elementos fueron agregados al vector (contenedor).

[AX 2012 R3 – How To] Obtener dimensión desde cuenta de proveedor

[AX 2012 R3 – How To] Obtener dimensión desde cuenta de proveedor

Cuando trabajamos con diario de facturas, en ocasiones, es necesario obtener la dimensión para la cuenta del proveedor y asignar el número de cuenta (AccountNum) como dimensión. Es por ello, que la siguiente línea de código puede ayudarnos a realizar esa tarea: DimensionDynamicAccount cuentaDinamica;RecId recLedgerDimension, codProv = 50123657;AccountNum numeroCuenta;// Obtenemos el número de cuenta del proveedoraccountNum = VendTable::findRecId(codProv).AccountNum;// Obtenemos la cuenta del proveedor. Si no existe el AX lo crea. Es decir, siempre retorna un valorrecLedgerDimension = DimensionStorage::getDynamicAccount(accountNum, LedgerJournalACType::Vend);// recLedgerDimension…

Leer más Leer más

[AX 2012 R3 – How To] Crear dimensiones desde un container

[AX 2012 R3 – How To] Crear dimensiones desde un container

En ocasiones no tenemos definidas las dimensiones en AX de manera directa, pero lo obtenemos de otras fuentes externas. Entonces, debemos crear un contenedor donde adicionamos los valores necesarios para convertirlos en una dimensión (generalmente hablamos de LedgerDimension). Para lograr nuestro objetivo debemos escribir las siguientes líneas de código: container offsetDim;RecId recIdResult;// Primero el valor a mostrar (Display Value).// Luego la cuenta principal (Main account, generalmente el mismo que Display Value)// Cantidad de dimensiones (número entero)// Dimensiones separadas por comas:…

Leer más Leer más

[AX 2012 R3 – How To] Convertir un tipo genérico a un tipo específico

[AX 2012 R3 – How To] Convertir un tipo genérico a un tipo específico

Muchas veces tenemos la necesidad de utilizar una variable genérica al momento de colocarlo como parámetro de manera que al utilizarlo podamos convertirlo al tipo de dato necesario para la ejecución de la aplicación/rutina con la que estamos trabajando. En esta entrada voy a poner como ejemplo el uso de tablas para poder realizar una determinada acción. En este caso, vamos a recibir como parámetro el tipo de dato Common y dentro del método vamos a convertir en la tabla…

Leer más Leer más

[AX 2012 R3 – How To] Crear un diario de factura con X++

[AX 2012 R3 – How To] Crear un diario de factura con X++

En esta entrada mostraré cómo crear un diario de factura con X++, no es muy complicado pero debemos tener en cuenta una cierta cantidad de puntos para poder hacerlo de manera correcta. El código incluye comentarios. Creación del diario de facturas desde X++ public boolean createVendorInvoiceService(){ int i; LedgerJournalCheckPost jourCheckPost; LedgerJournalTable jourTable; AxLedgerJournalTable header = new AxLedgerJournalTable(); AxLedgerJournalTrans trans; container offsetDim, offsetDimAccount; // Esta es la entrada contra la cuenta del proveedor. DimensionAttributeValueCombination davc; //Tabla con personalizaciones de campos ServiceParameters…

Leer más Leer más

[AX 2012 R3 – How To] Utilizar el objeto RecordInsertList

[AX 2012 R3 – How To] Utilizar el objeto RecordInsertList

La clase RecordInsertList consiste en una lista de elementos (objetos previamente tratados) el cual permite insertar valores de una lista directamente a la base de datos, realizando esta tarea en una sola llamada sin realizar varios viajes.Generalmente, vamos realizando algún cambio en un registro y ya lo actualizamos en la base de datos. Si son pocos registros, no hay drama. Pero si hablamos de miles de registros la performance se ve afectada. Donde más útil resulta esta clase es en…

Leer más Leer más

[AX 2012 R3 – How To] Reactivar Windows en máquinas virtuales para Demos

[AX 2012 R3 – How To] Reactivar Windows en máquinas virtuales para Demos

Cuando tenemos acceso al Partner Source de Microsoft, podemos descargar las máquinas virtuales para demos que se encuentra disponible en dicho sitio web. Pero al culminar 180 días nos encontramos con la noticias de que nuestra licencia está vencida y ya no lo podemos utilizar. Es ahí donde aparece esta opción de reactivar Windows para seguir utilizándolo por otros 180 días.La reactivación puede realizarse hasta 3 veces por cada máquina virtual. Y los pasos se citan más abajo. Sólo necesitamos…

Leer más Leer más

[Dynamics AX] Ciclo de Vida de productos

[Dynamics AX] Ciclo de Vida de productos

Uno de los principales problemas que escucho por aquí a la hora de realizar una propuesta comercial es el tema relacionado al soporte de un determinado producto. Así que, en esta entrada, voy a salir del tema principal del blog que es desarrollo para explicar un poco sobre el ciclo de vida del producto Microsoft Dynamics Ax.Esta información se encuentra disponible oficialmente en el sitio de Microsoft, pero me parece oportuno publicarlo aquí pues en dicho sitio la información no…

Leer más Leer más