Compartir a través de


Experiencia mejorada con AL para Visual Studio Code

Importante

Este contenido está archivado y no se actualiza. Para obtener la documentación más reciente, consulte la Documentación del producto Microsoft Dynamics 365. Para conocer los últimos planes de lanzamiento, consulte los planes de lanzamiento de Dynamics 365 y Microsoft Power Platform.

Nota

Estas notas de la versión describen la funcionalidad que es posible que no se haya publicado todavía. Para ver la fecha en la que se ha planificado que esta funcionalidad se lance al mercado, revise el Resumen de novedades. Las escalas de tiempo de entrega y la funcionalidad prevista pueden cambiar o no estar disponibles (consulte la Directiva de Microsoft).

Crear extensiones es la forma que tiene Business Central de personalizar. El lanzamiento de octubre de 2018 agrega mejoras de productividad a la experiencia de desarrollo así como soporte para escenarios de extensión adicionales.

Con las mejoras a las herramientas y a las capacidades de extensión, los desarrolladores pueden ser más productivos a la hora de desarrollar y solucionar problemas de soluciones, y tendrán más opciones a la hora de cumplir los requisitos de personalización de los clientes mediante extensiones.

Espacio aislado de nube con datos de producción

Una situación habitual al trabajar con espacios aislados de nube, en especial al realizar pruebas o solucionar problemas, es el deseo de contar con datos de producción disponibles. Con esta versión, añadimos la capacidad de crear un espacio aislado de nube en función de una copia de la última copia de seguridad de nube de los datos de producción. Para minimizar las interferencias con integraciones configuradas en los datos de producción, estas integraciones se deshabilitará cuando se crea el espacio aislado. Con cuidado, los usuarios de administración pueden habilitar o volver a configurar estas integraciones según sea necesario para admitir el uso previsto de espacio aislado de nube.

Capacidad de detección de eventos

Un aspecto básico de la creación de extensiones es suscribirse a eventos. Sin embargo, un reto común es comprender qué eventos están disponibles en un flujo de usuario dado. La depuración puede ayudar, pero solo mostrará los eventos a los que está suscrito. Para facilitar la capacidad de detección de eventos y puntos de extensión, hay un nuevo seguimiento de eventos en el cliente. Con esto, puede registrarse un flujo de usuarios para enumerar los eventos que se generan y el programador puede tener código del suscriptor para el evento generado para copiarlo fácilmente en el código AL.

Seguimiento de eventos

Además, se ha añadido un número elevado de eventos lo que permite ampliar en más sitios.

Mejoras en la extensión AL de Visual Studio Code

Con la comprobación de versiones y la compatibilidad con versiones anteriores, puede instalar la extensión AL Language del catálogo de soluciones de Visual Studio Code y utilizarlo para desarrollar soluciones para muchas plataformas diferentes, entre las que se incluyen espacios aislados de nube, el lanzamiento de Business Central de abril de 2018, el lanzamiento de Business Central de octubre de 2018 y próximas versiones. El compilador comprobará que el inquilino conectado es compatible y realizará la compilación en la plataforma de destino según lo definido en la nueva propiedad de app.json.

Además, la extensión AL es ahora más rápida y más dinámica al trabajar en proyectos más grandes que contienen muchas extensiones/archivos de objetos.

Mejoras del depurador

Al igual que ocurre con el depurador Dynamics NAV heredado, ahora puede usar el mensaje común Interrumpir en error, así como Interrumpir en escritura. También puede ir a la definición en el código de aplicación base y establecer ahí puntos de interrupción.

F12 Ir a la definición para el código de aplicación base

Mejoras de IntelliSense

Todas las propiedades en AL, tanto en el mantenimiento del mouse como en IntelliSense, tienen ahora vínculos de Ayuda que le redirigen a documentación en línea relacionada. Además, la documentación para las construcciones de lenguaje AL se autogenera y utiliza tanto para la documentación de referencia en línea como para IntelliSense, garantizando así la existencia de documentación actualizada y alineada.

Vínculo de ayuda desde IntelliSense

Las sugerencias para las propiedades de la imagen en una extensión ahora proponen solo las que se pueden usar en el contexto actual, mostrando una advertencia para las imágenes que no se pueden usar en el contexto actual, y puede realizar una vista previa de imágenes al usar IntelliSense y el mantenimiento del mouse.

Seleccionar y vista previa de imágenes con IntelliSense

Trabajar con permisos

Para facilitar el trabajo con permisos, ahora es posible exportar conjuntos de permisos desde la aplicación, utilizando el cliente, e importarlos a la extensión de código AL de Visual Studio. Es posible generar archivos de permisos nuevos para los objetos en una extensión desde el proyecto AL de Visual Studio Code.

Comando AL de Visual Studio Code para generar un archivo de permisos para los objetos de extensión

.NET Interop

Al trabajar con soluciones de Business Central dirigidas a implementaciones locales, ahora puede agregar .NET Interop en código AL. Tenga en cuenta que esto implica que la solución no se puede trasladar a la nube más adelante sin reemplazar .NET Interop.

.NET Interop en AL local

Mejoras de la traducción

Se ha añadido información contextual nueva que describe a qué objeto y elemento se aplica una cadena dada a los archivos de traducción XLIFF generados. Esto ayuda a los traductores a tener una mejor visión general de dónde se muestra una cadena en la interfaz de usuario aumentando, de esta manera, la calidad de la traducción.

Etiqueta de nota del archivo de traducción XLIFF

Acciones enlazadas a OData en AL

Ahora es posible declarar en AL acciones enlazadas a OData. Se han introducido, para ello, un atributo nuevo y un tipo de AL nuevo.

[ServiceEnabled]
procedure CreateCustomerCopy(var actionContext : WebServiceActionContext)
var
createdCustomerGuid : Guid;
customer : Record Customer;
begin
actionContext.SetObjectType(ObjectType::Page);
actionContext.SetObjectId(Pages::Customer);
actionContext.AddEntityKey(customer.fieldNo(Id), createdCustomerGuid);
actionContext.SetResultCode(WebServiceActionResultCode::Created);
end;

Díganos lo que piensa

Ayúdenos a mejorar Dynamics 365 Business Central debatiendo ideas, proporcionando sugerencias y realizando comentarios. Use el foro de Business Central en https://aka.ms/businesscentralideas.