Las extensiones V2 surgen en Microsoft Dynamics NAV 2018 para solucionar el problema con las personalizaciones o facilitarlas a la hora de migrar a dicha versión. Hay dos cambios fundamentales a la hora de programar. El primero es que contamos con un nuevo entorno de desarrollo llamado Visual Studio Code, que nos sonará si hemos trasteado con desarrollos para la nueva versión Dynamics 365 Business Central. El otro cambio importante se basa en que las personalizaciones no van en el código estándar original, sino que se escriben en extensiones que se integran con el código de los objetos de NAV en ejecución manejado con eventos.
Ahora que sabemos un poco por donde nos estamos moviendo, vamos a centrarnos en una forma “automática” para la conversión de código de “C/AL” al nuevo “AL” (Extensiones v2).
Para ello necesitamos la base de datos con el código modificado y una base de datos limpia con el código estándar, ya que para crear el nuevo código tenemos que saber las modificaciones que tenemos en nuestro proyecto.
Lo primero que tenemos que hacer es exportar los objetos tanto de la BBDD que contiene el código modificado como de la BBDD estándar. Para ello crearemos las carpetas sobre las que vamos a trabajar:
Para exportar los objetos tendremos que abrir “Dynamics NAV 2018 Development Shell” y ejecutar la siguiente instrucción:
Una vez ejecutada estas instrucciones tendremos todos los objetos de las dos BBDD en dos ficheros: ORIGINALES.txt y MODIFICADO.txt. Es muy importante que se exporten en con la instrucción “-ExportToNewSyntax” ya que esta contiene cambios en la fecha y en la hora, así como en la declaración de variables.
Todavía tenemos un paso intermedio ya que tenemos todos los objetos en un único fichero de texto y tenemos que dividirlos en objetos individuales. Para ello:
Ahora, sí podemos ponernos a comparar los objetos para generar los ficheros “DELTA”. Para ello ejecutamos el siguiente comando:
Compare-NAVApplicationObject -OriginalPath
‘C:\Users\Usuario\Desktop\CHRONUS\ORIGINALES\*.txt’ –ModifiedPath
‘C:\Users\Usuario\Desktop\CHRONUS\MODIFICADOS\*.txt’ –DeltaPath ‘C:\Users\Usuario\Desktop\CHRONUS\DELTA’ –ExportToNewSyntax -NoCodeCompression -Force
El resultado será el siguiente:
Ahora el siguiente paso a seguir es pasar los archivos “DELTA” a código AL. Para ello Microsoft nos proporciona una herramienta que se encuentra en la carpeta donde se instala Microsoft Dynamics NAV con el nombre de Txt2Al.exe:
Para ejecutarla abrimos una ventana de comandos posicionados en esa carpeta y escribimos el siguiente comando:
xt2al.exe –source=»C:\Users\Usuario\Desktop\CHRONUS\DELTA» —
target=»C:\Users\Usuario\Desktop\CHRONUS\TARGET» –rename —extensionStartID 50100
Con ello el programa nos genera los ficheros AL:
A tener en cuenta:
Ernesto Martín
Dynamics