Curso Definir dependencias entre extensiones
En Business Central, Microsoft publica la funcionalidad base del programa troceada en distintas extensiones.
También nosotros creamos nuestras propias extensiones. Para que una extensión pueda usar funcionalidad definida en otra extensión, tenemos que definir dependencias entre ellas y publicarlas en el orden adecuando.
En este curso vas a aprender cómo definir dependencias a la BaseApp y al resto de extensiones.
También aprenderás a publicarlas y a definir espacios de trabajo para que Visual Studio Code se encargue de la actualización de símbolos.
Lección 1. Que son las dependencias
En Business Central, Microsoft publica la funcionalidad base del programa troceada en distintas extensiones.
Cuando creamos nuestro propio código, necesitamos usar partes de la aplicación que estan definidos en otras extensiones. Aquí es donde tenemos que poner una dependencia, para que el compilador sepa qué objetos hay en las otras extensiones, con qué propiedades, etc. para poder usarlos.
Las primeras extensiones aparecieron en NAV2018, donde había una o dos extensiones, y ahora en BC20 vemos que ya tenemos 32 extensiones publicadas cuando instalamos una Cronus. En futuras versiones de Business Central, la idea es que vamos a ver más y más extensiones.
Según los planes de Microsoft, la idea es que las localizaciones sean una extensión separada de la BaseApp. También hay planes para dividir la BaseApp en extensiones más pequeñas.
Ir al vídeo de la lección 1. Que son las dependencias
Lección 2. Dependencias a la BaseApp
En Business Central hay cuatro aplicaciones que tienen la funcionalidad base del programa.
La más grande de ellas es la BaseApp, pero también tenemos la Application, la System y la System Application. Cualquier extensión que creemos va a necesitar referenciar estas cuatro extensiones.
En el fichero app.json es donde ponemos las referencias, en los tags platform y application. Una vez puestas las referencias, hay que descargar símboles, para que el sistema se connecte a una instancia de BC y descargue los símbolos, que se guardaran en la subcarpeta .alpackages.
Ir al vídeo de la lección 2. Dependencias a la BaseApp
Lección 3. Dependencias al resto de extensiones
En Business Central hay cuatro aplicaciones que tienen la funcionalidad base del programa.
La más grande de ellas es la BaseApp, pero también tenemos la Application, la System y la System Application. Cualquier extensión que creemos va a necesitar referenciar estas cuatro extensiones.
En el fichero app.json es donde ponemos las referencias, en los tags platform y application. Una vez puestas las referencias, hay que descargar símboles, para que el sistema se connecte a una instancia de BC y descargue los símbolos, que se guardaran en la subcarpeta .alpackages.
Ir al vídeo de la lección 3. Dependencias al resto de extensiones
Lección 4. Dependencias a extensiones nuestras
De la misma forma que podemos poner dependencias a otras extensiones publicadas por Microsoft, también podemos poner dependencias a otra extensión creada y publicada por nosotros.
La dependencia la ponemos en el fichero app.json, en la propiedad dependencies, rellenado los campos id, name, publisher y version.
A la hora de descargar símbolos es importante que la primera extensión esté publicada en BC, sino la segunda no puede descargarse los símbolos. Si disponemos del .app de la primera extensión, también podemos pegar el fichero en la subcarpeta .alpackages, en lugar de descargar.
Ir al vídeo de la lección 4. Dependencias a extensiones nuestras
Lección 5. Espacios de trabajo para extensiones dependientes
Cuando tenemos extensiones con dependencias, cada vez que hay un cambio en una de las extensión tenemos que propagar esos cambios al resto de extensiones para que así podamos usar los nuevos símbolos.
Al tener las disitintas extensiones en un mismo espacio de trabajo, visual studio code se puede encargar de esa propagación al momento.
En esta lección veremos cómo crear el espacio de trabajo y veremos un ejemplo de cómo el sistema actualiza los símbolos entre las extensiones dependientes.
Ir al vídeo de la lección 5. Espacios de trabajo para extensiones dependientes