Use complementos para ampliar los procesos de negocio

Un complemento es un controlador de eventos personalizado que se ejecuta en respuesta a un evento específico generado durante el procesamiento de una operación de datos de Microsoft Dataverse. El complemento se implementa como una clase personalizada compilada en un ensamblado de .NET Framework que se puede cargar y registrar con Dataverse. Pueden registrarse una o más clases de complemento compilados en un ensamblado en eventos específicos (pasos) dentro del marco de eventos de Dataverse. Cuando el evento de destino ocurre durante una operación de procesamiento de datos, el código dentro de la clase de complemento registrada se ejecuta proporcionando un medio para aumentar o modificar el comportamiento de procesamiento de datos predeterminado de la plataforma.

Sugerencia

Siempre que sea posible, primero debe considerar aplicar una de las opciones declarativas para definir la lógica de negocios. Más información: Aplicar lógica de negocios en Dataverse para aplicaciones

Use las extensiones cuando un proceso declarativo no cumpla su requisito.

Más detalles sobre los complementos

Cualquier clase en un ensamblado que se vaya a registrar en un paso de marco de eventos (canalización) debe implementar la interfaz IPlugin. Esta interfaz expone un solo método llamado Execute. Cuando ocurre un evento que tiene registrada una clase compilada, los datos contextuales sobre la operación de datos que se está procesando se pasan al método Execute del complemento. Dentro del método Execute, su código personalizado puede:

  • Cancelar la operación de canalización de procesamiento de datos actual y, opcionalmente, mostrar un error al usuario
  • Realizar cambios en los datos comerciales que se procesan en la operación de canalización actual
  • Invocar otras operaciones de datos
  • Conectarse a sistemas externos
  • Pasar información a otro complemento 'descendente' registrado en la misma canalización
  • Más...

Los complementos se pueden registrar para ejecutarse de forma sincrónica o asincrónica. Un complemento sincrónico hará la operación de datos espere hasta que se complete el código del complemento. Este retraso tiene un impacto en el rendimiento percibido del sistema por el usuario final, razón por la cual los complementos sincrónicos deben ejecutarse y completarse rápidamente. La ejecución asíncrona del complemento se pone en cola y luego se ejecuta después de que se completa la operación de datos.

Cuándo usar complementos

La gente a menudo compara actividades de flujo de trabajo personalizado y complementos como las opciones para aplicar lógica empresarial personalizada. Hay una superposición importante en las capacidades de actividades de flujos de trabajo y de complementos. Los complementos pueden hacer todos lo que las actividades de flujos de trabajo pueden hacer lo contrario pero no es cierto. Esto no significa que debe usar solo complementos para cualquier cosa que no se puede hacer con un flujo de trabajo. Hay otras formas de cumplir los requisitos sin usar los complementos.

  • Los flujos de trabajo pueden usar las actividades personalizadas del flujo de trabajo que le permiten crear condiciones y acciones que pueden reutilizarse con el código que puede usarse en múltiples flujos de trabajo.

  • Los campos calculados y de informes proporcionan las capacidades que antes solo podrían hacerse usando flujos de trabajo.

  • Las acciones personalizadas son un tipo de similar de proceso para los flujos de trabajo que permiten crear mensajes que pueden reutilizarse y que se pueden invocar desde otros flujos de trabajo o de los extremos de servicios web.

  • La integración de Azure Service Bus y los Webhooks se puede usar para insertar datos en sistemas externos donde la lógica se puede aplicar con diferentes recursos.

  • Power Automate ofrece muchas capacidades que antes se ejecutaban usando complementos.

Debería evaluar cada una de estas opciones para comprender la mejor forma que cumpla sus requisitos.

Ventajas de los complementos

Estas son las principales ventajas de los complementos:

  • Los complementos rinden bien. Un complemento bien escriba proporciona la forma más eficaz de aplicar lógica de negocios personalizada.
  • Los complementos son eficaces. Muchos desarrolladores preferirían usar los conocimientos y los conocimientos que poseen para definir lógicas y a usar las funcionalidades para trabajar directamente con el servicio web de Dataverse o servicios externos de la organización en código. Un desarrollador de complementos experimentado puede ser muy productivo.
  • Los complementos amplían la capacidad de Dataverse cuando no existe una solución comercial lista para usar.

Desventajas de los complementos

  • Los complementos requieren los conocimientos especiales de un programador de software que escriba y mantenga el código del complemento. Es posible que las empresas más pequeñas no tengan acceso a un desarrollador con las habilidades necesarias. Los procesos de negocio pueden cambiar rápidamente y proporcionar las opciones para habilitar el cambio sin requerir un programador puede permitir que el sistema se adapte más rápido.
  • Se puede abusar de los complementos. Un complemento mal escrito puede causar un impacto significativo en el rendimiento percibido del proceso de procesamiento de datos y, en última instancia, en el entorno interactivo del usuario final. El gran potencial de los complementos debe aplicarse con cierta mesura y consideración con el impacto que tiene en todo el sistema.
  • Los complementos tienen solo un corto período de tiempo (un límite estricto) para completar su trabajo.

Pasos siguientes

Use el tutorial siguiente y temas prácticos para aprender más sobre el uso de complementos

Tutoriales

Estos temas le guían por el proceso básico de creación, registro y depuración de algunos complementos básicos.

Temas de aprendizaje

Estos temas proporcionan detalles adicionales comunes al desarrollo de complementos.

Una vez que haya leído y comprendido los conceptos de los complementos enumerados anteriormente, considere explorar estas capacidades y tecnologías adicionales relacionadas con los complementos.

Nota

¿Puede indicarnos sus preferencias de idioma de documentación? Realice una breve encuesta. (tenga en cuenta que esta encuesta está en inglés)

La encuesta durará unos siete minutos. No se recopilan datos personales (declaración de privacidad).