Compartir a través de


Crear un complemento con Visual Studio

Este artículo brinda información sobre cómo crear un complemento con la extensión Power Platform Tools para Visual Studio.

Requisitos previos

Crear una solución con la biblioteca de complementos

Siga estas instrucciones para crear una solución con biblioteca de complementos, conectarse a su entorno de Power Platform y registrar ensamblados de código personalizado, pasos, etc.

  1. Use la extensión Power Platform Tools para Visual Studio para crear una nueva solución con una biblioteca de complementos. Para obtener instrucciones, vaya al artículo Crear un proyecto de Power Platform Tools.

    Si ya tiene una configuración de solución de , siga las instrucciones de Agregar un proyecto nuevo a una solución Power Platform para agregar una biblioteca de complementos a la solución mediante la plantilla de Power Platform Tools.

  2. En el menú Herramientas, seleccione Conectarse a Dataverse.

  3. Seleccione las opciones que desee en el cuadro de diálogo y seleccione Iniciar sesión.

  4. Seleccione una segunda solución o la solución Predeterminada. Esta solución contiene su complemento registrado y ensamblados actividad de flujo de trabajo para su posterior distribución a otros entornos.

  5. Cuando haya terminado, seleccione Listo.

Se mostrará la vista Explorador de Power Platform o puede abrir esa vista desde el menú Ver. Expanda los nodos para ver los tipos de datos del entorno que se pueden ver. Haga clic con el botón secundario en los nodos para ver qué opciones están disponibles.

Nota

La vista Explorador de Power Platform de la extensión Power Platform Tools permite hacer más que registrar un complemento o una actividad de flujo de trabajo. La documentación de características adicionales se proporcionará en una versión futura de la documentación. Mientras tanto, anímese a explorar.

Registrar un paso de complemento con Dataverse

Siga estas instrucciones para registrar un paso de complemento (también conocido como paso de procesamiento de mensaje de SDK). El paso identifica qué tabla de datos y qué evento hacen que se ejecute el complemento. Más información: Marco de trabajo de eventos, Registrar paso de complemento

  1. Seleccione Ver>Explorador de Power Platform, expanda el nodo del entorno y el subnodo Tablas.

  2. Haga clic con el botón secundario en el tipo de tabla (por ejemplo, "Cuenta") en el que se va a registrar el paso y, a continuación, seleccione Crear complemento.

    Crear un complemento.

    Nota

    También puede crear un complemento expandiendo el Catálogo de eventos, haga clic con el botón derecho en un evento empresarial y elija Agregar complemento.

  3. Rellene la información del cuadro de diálogo Registrar nuevo paso y elija Registrar nuevo paso cuando haya terminado.

    El nombre de clase que especifique al completar la información paso se usa para nombrar su nueva clase de complemento. La clase se colocará en la biblioteca del proyecto de complemento especificada por el campo del cuadro de diálogo Ensamblado de controlador. Si solo hay un proyecto de biblioteca de complementos en la solución, el campo Ensamblado de controlador está inactivo.

Se agrega un nuevo paso de registro a la solución. Sin embargo, deberá crear e implementar su biblioteca de complementos antes de agregar el ensamblado de complemento y el paso al entorno y la solución de Dataverse especificados.

Agregar otra clase de complemento a la biblioteca

Supongamos que siguió los pasos antes descritos para crear una clase de complemento en la biblioteca del proyecto de complemento y agregar un paso. Ahora desea agregar otra clase de complemento a esa misma biblioteca. ¿Cómo hace eso? Tiene dos opciones, ambas son a través de menús contextuales de la extensión Power Platform Tools.

  1. El primer método es hacer lo mismo que hizo anteriormente expandiendo el nodo Tabla nodo en la vista Power Platform Explorer, haga clic con el botón derecho en un tipo de tabla y luego seleccione Crear complemento. Al registrar el paso, especifique la misma biblioteca de proyectos de plug-in en el Ensamblaje del controlador y el nombre de la nueva clase en el campo del formulario Nombre de la clase.

  2. Para el segundo método, digamos que ya creó e implementó el ensamblaje de la biblioteca de complementos en el entorno Dataverse. En este caso, verá el ensamblaje implementado y el paso que creó después de actualizar la vista del explorador y expandir el nodo Ensamblaje de complementos nodo. En ese punto, puede simplemente hacer clic con el botón derecho en el nodo del ensamblaje de destino y seleccione Agregar complemento. Al hacerlo, se muestra el formulario de registro de pasos, que ahora puede completar para su nueva clase de complemento.

Luego, cree e implemente el proyecto de biblioteca de complementos para actualizar el entorno y la solución de destino.

Agregar un paso de complemento

Puede agregar un paso para un complemento registrado existente que sea de su propiedad. Para hacerlo, expanda el nodo de ensamblaje del complemento de destino en la vista Power Platform Explorer para mostrar el complemento registrado. Haga clic con el botón derecho en el nodo de ese complemento y seleccione Agregar paso. Rellene el formulario Registrar nuevo paso.

No es necesario crear e implementar el proyecto de complemento para que el registro de pasos esté disponible en el entorno y la solución de destino.

La clase abstracta PluginBase

PluginBase Se genera automáticamente a partir de la plantilla de la biblioteca de complementos. Su clase de complemento personalizado debe derivarse de esta clase base. La clase base implementa código de complemento común que le ayuda a ser más productivo en menos tiempo. Eche un vistazo al código de la clase PluginBase en el proyecto de complemento para ver qué hace.

El código de clase de complemento generado

La plantilla de la biblioteca de complementos proporciona la clase abstracta PluginBase. Su complemento debe derivarse de PluginBase para que funcione correctamente con la extensión Power Platform Tools. Aquí se muestra la clase derivada que se genera al crear un complemento desde el Explorador de Power Platform. Normalmente agregaría el código donde están los comentarios TODO (pendiente). Observe que el método Execute de la interfaz IPlugin estándar ahora es ExecuteCdsPlugin en el código del complemento.

using System;
using System.ServiceModel;
using Microsoft.Xrm.Sdk;

namespace PPTools_Sample_Solution.NotifyPlugin
{    
    public class NotifyAccountCreate: PluginBase
    {
        public NotifyAccountCreate(string unsecure, string secure)
            : base(typeof(NotifyAccountCreate))
        {
           // TODO: Implement your custom configuration handling.
        }

        protected override void ExecuteCdsPlugin(LocalPluginContext localContext)
        {
            if (localContext == null)
            {
                throw new InvalidPluginExecutionException(nameof(localContext));
            }           
            ITracingService tracingService = localContext.TracingService;

            try
            {  
                IPluginExecutionContext context = (IPluginExecutionContext)localContext.PluginExecutionContext;
 
                IOrganizationService service = localContext.OrganizationService;

                // TODO: Implement your custom Plug-in business logic.

            }
            catch (Exception ex)
            {
                tracingService?.Trace("An error occurred executing Plugin PPTools_Sample_Solution.NotifyPlugin.NotifyAccountCreate : {0}", ex.ToString());
                throw new InvalidPluginExecutionException("An error occurred executing Plugin PPTools_Sample_Solution.NotifyPlugin.NotifyAccountCreate .", ex);
            }
        }
    }
}

En este punto, debe agregar el código de complemento personalizado donde lo indiquen los comentarios de código TODO. Para obtener más información, lea algunos de estos artículos relacionados: Pasar los datos de configuración a su complemento, Comprender el contexto de ejecución y Seguimiento y registro.

Importante

Le animamos a utilizar los menús contextuales de Power Platform Tools. Cuando usa los menús contextuales de Power Platform Explorer para agregar complementos, las clases se generan utilizando la información proporcionada y se mantienen las entradas de implementación en el archivo RegisterFile.crmregister del proyecto CrmPackage. Es esta información la que se utiliza para la implementación de ensamblados, complementos y pasos.

Firmar el ensamblado

Todos los ensamblados de flujo de trabajo personalizado y de complemento deben firmarse digitalmente antes de su carga en el servidor de Dataverse. Para firmar el ensamblado, siga estos pasos.

  1. Seleccione el complemento o el proyecto de actividad de flujo de trabajo en el Explorador de soluciones.

  2. Elija Proyecto><nombre del proyecto>Propiedades para editar las propiedades del proyecto.

  3. En la pestaña Firma, active Firma el ensamblado y especifique un archivo de clave de nombre seguro.

Implementar el complemento en la solución del entorno

Cuando haya terminado de modificar el código y esté listo para implementar el ensamblado del complemento y los pasos en su entorno, siga estos pasos.

  1. Cree la biblioteca de complementos.

  2. En el Explorador de soluciones, haga clic con el botón secundario en el proyecto de biblioteca de complementos.

  3. Seleccione Implementar en el menú contextual.

Propina

Puede implementar todos los proyectos en la solución de Visual Studio. Para ello, haga clic con el botón secundario en el proyecto CrmPackage y seleccione Implementar.

Cuando se haya completado la implementación, seleccione el icono de actualización en Explorador de Power Platform. Amplíe el subnodo Ensamblados de complemento del nodo de entorno para ver el ensamblado registrado. Haga clic con el botón derecho en el ensamblaje del complemento en Power Platform Explorer para ver qué operaciones son compatibles. Seleccionando Eliminar ensamblaje anula el registro del ensamblaje y sus pasos relacionados.

Agregar imagen de la entidad

Las imágenes de la entidad son instantáneas de los datos de la entidad antes o después de la operación principal (por ejemplo: una creación o actualización). Puede (opcionalmente) agregar imágenes de entidad en los pasos del complemento usando la vista Power Platform Explorer. Para agregar una imagen a un paso en la vista Power Platform Explorer, expanda el árbol de nodos Ensamblaje de complementos para mostrar el paso del complemento de destino y, a continuación, haga clic con el botón derecho en el paso para mostrar el menú contextual en el que puede elegir Añadir imagen.

Agregar una imagen a un paso.

También puede agregar una imagen en la vista Power Platform Explorer en Catálogo de eventos en un paso de un complemento de evento.

Agregar una imagen a un paso de evento.

Después de seleccionar Añadir imagen en el menú contextual, complete el formulario que aparece.

Definir una imagen de entidad.

En el formulario, Pre imagen/Publicar imagen especifique los datos de la entidad tal como existen antes (Pre) o después (Post) de la operación principal. El campo Nombre define el nombre lógico de la entidad de la que quiere datos. Alias de entidad es el índice con nombre que usará en su código para identificar la fila en la tabla de imágenes que contiene los datos de la entidad de destino. Parámetros es la lista de columnas de datos de entidad que desea. Especifique solo las columnas que necesita, ya que el rendimiento del complemento se reduce cuantas más columnas especifique.

Más información: Definir imágenes de entidad.

Proporcionar comentarios sobre las herramientas

Puede enviar comentarios sobre la herramienta a Microsoft usando el ícono de comentarios en la vista del Power Platform Explorador.

Proporcionar comentarios.

Consulte también

Tutorial: Depurar un complemento
Marco del evento
Utilice complementos para ampliar los procesos comerciales