Business Central – novedades de desarrollo

por | 28 noviembre, 2018

Como comenté en el último artículo, Cristina y yo hemos asistido a la conferencia NavTechDays que se celebra cada año en Amberes, Bélgica.

Han sido muchas las sesiones y muchas cosas que contar. El otro día te resumía lo que se explicó en la sesión Opening Keynote.

Hoy voy a hablar de más sesiones, y lo seguiré haciendo durante unos cuantos días, porque hay mucho que compartir!

What’s new in Developing for Business Central

Esta sesión la han dado Alex Toader  y Esben Nyhuus Kristoffersen dos enginieros y arquitectos del Microsoft Development Center en Copenhagen.

Estamos recopilando todo lo contado aquí y lo vamos a crear como “curso de AL avanzado” en la web, y también estamos ofreciendo este temario en el ScaleUp InHouse (por si te perdiste el ScaleUp Training Tour, y quieres que vengamos a tus oficinas a dar la formación).

Estas son las novedades técnicas en cuanto a desarrollo de extensiones con AL:

Estas son las novedades técnicas en cuanto a desarrollo de extensiones con AL:

  • Ya es posible extender los campos de tipo Option. Lo han hecho a través de un nuevo tipo de objeto: los Enums.
    Si estás extendiendo un campo del estandard que todavía no está implementado como enum, lo puedes solicitar en GitHub.
    En cuento tengamos un curso y/o una lección donde expliquemos los enums en detalle, te informaré via mail.
  • También es posible extender los Fieldgroups. Ya sabes, la lista de campos que aparece en los DropDown.
    Lo cubriremos en detalle en una lección de publicaremos en la plataforma.
  • EventRecorder. Esta funcionalidad es como el “Code Coverage” de los eventos. La idea es que lanzas un proceso, y el EventRecorder se guarda una lista de los eventos que se han lanzado durante el proceso, y en qué orden se han ejecutado.
    Esto te dará pistas de qué eventos tienes disponibles para suscribirte, cuando estes desarrollando extensiones.
    Cristina ya está preparando un lección donde explicamos cómo funciona y ponemos algunos ejemplos prácticos. Te avisaré cuando esté publicado.
  • Firma y parámetros de los eventos a los que nos suscribimos. Cuando te suscribes a un evento, necesitabas (hasta ahora), ir a C/SIDE para ver qué parametros necesitabas en la firma del evento. Ya no es necesario ir a C/SIDE, porque el IntelliSense de vscode es ahora capaz de proporcionarnos esta información.
    Y lo que es más interesante: no hace falta añadir todos los parámetros disponibles, solo los que vayas a usar.
  • Tablas virtuales para los reports. Cuando se ejecutan reports, ahora se rellenan unas tablas virtuales que contiene el dataset con todos los datos, así como todos los campos de la RequestPage.
    No se como funciona exactamente, porque solo había una transparencia, pero me pareció entender que con ésto podríamos generar el dataset en Business Central y mandar los datos a una aplicación externa que genere el Layout. ¿Podremos crear report en Crystal Reports, o JetReports, o algún generador externo? ¿Le podremos enviar los datos a PowerBi? Esto sin duda sería una gran ventaja, ya que ahora mismo si queremos usar estas herramientas tenemos que atacar directamente al SQL. Con los flowfields ya no era fácil, y ahora que los campos de las extensiones se guardan en tablas aparte, menos. Sin duda es un tema a investigar…
  • Global Replacement para reports. La plataforma lanza ahora nuevos eventos cada vez que se llama a un report. Nos podemos suscribir a estos eventos y reemplazar cualquier report del estandard. Estamos preparando una lección para explicarlo en más detalle.
  • Interoperabilidad .net en implantaciones on-premise. Con Business Central ya es posible usar variables .net en nuestro código AL.
    De todas formas en otras sesiones hechas por MVPs y otra gente ajena a Microsoft, recomendaban no usar .net.
    Incluso Vjeko, que es el que más a hablando y blogueando sobre .net y NAV… recondaba ahora no seguir usando .net.
    Uno de los mottos de su sesión fue precisamente este: don’tnet.
  • Isolated Storage. Esta es una nueva tabla virtual que nos permite almacenar datos que son únicamente accesibles por la app que los ha guardado.
    Tal y como explicó Freddy en su blog hace unos días, esto nos puede servir para guardar, por ejemplo, datos de licenciamento de nuestra app, o datos de acceso a servicios de terceros.
    Estoy preparando un curso para hablar exclusivamente de este tema. Te avisaré cuando esté publicado.

 

Todo esto y algunas cosas más, las cubriremos en detalle en los cursos que publicamos en la plataforma ClipDynamics.com, así que… stay tunned!

Salut!
Laura Nicolàs

Otros artículos sobre NavTechDays2018:

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.