Usar complementos con poco código en Dataverse (versión preliminar)
[Este tema es documentación preliminar y está sujeto a modificaciones.]
Microsoft Dataverse ofrece una solución poderosa para lograr una arquitectura de datos más eficiente y reducir la carga de trabajo del lado del cliente a través de complementos de bajo código. Estos complementos son flujos de trabajo reutilizables y en tiempo real que ejecutan un conjunto específico de comandos dentro de Dataverse, se ejecutan en el lado del servidor y se activan mediante controladores de eventos personalizados.
Importante
- Esta es una característica en versión preliminar.
- Las características en vista previa no se han diseñado para un uso de producción y pueden tener una funcionalidad restringida. Estas características están disponibles antes del lanzamiento oficial para que los clientes puedan tener un acceso anticipado y proporcionar comentarios.
Tradicionalmente, los complementos se creaban como clases personalizadas compiladas en un ensamblado de .NET Framework, que luego se cargaban y registraban en Dataverse. Sin embargo, con la introducción de complementos de bajo código, los usuarios pueden crear estos controladores de eventos con una codificación mínima o nula y sin necesidad de registro manual.
Los complementos de código bajo se almacenan en una base de datos Dataverse y se pueden integrar perfectamente en Power Apps y Power Automate. El comportamiento del flujo de trabajo se define utilizando el lenguaje de expresión Power Fx y puede conectarse directamente con datos comerciales Dataverse y fuentes de datos externas a través de conectores Power Platform. Con complementos de código bajo, los creadores pueden construir rápidamente flujos de trabajo complejos con una experiencia mínima en codificación, lo que da como resultado una arquitectura de datos más optimizada y eficiente.
Beneficios de la lógica del lado del servidor
Definir la lógica empresarial del lado del servidor ofrece varios beneficios, entre ellos:
- Aumento de seguridad. Dado que la lógica del lado del servidor se ejecuta en el servidor, puede ayudar a evitar el acceso no autorizado a datos o procesos confidenciales.
- Rendimiento mejorado. Al ejecutarse en el servidor, la lógica empresarial puede reducir la cantidad de datos que deben transferirse entre el cliente y el servidor, lo que resulta en tiempos de procesamiento más rápidos.
- Rendimiento y fiabilidad. La lógica del lado del servidor garantiza que las reglas comerciales se apliquen de manera consistente en todos los clientes, lo que reduce el riesgo de errores o inconsistencias.
- Actualizaciones y mantenimiento más sencillos. Al centralizar la lógica empresarial en el servidor, resulta más fácil de mantener y actualizar, ya que los cambios se pueden realizar en un solo lugar en lugar de tener que actualizar varios clientes.
- Escalabilidad. La lógica del lado del servidor se puede escalar más fácilmente que la lógica del lado del cliente, lo que permite un mejor rendimiento y manejo de cargas de trabajo más grandes.
Complementos de bajo código de
Existen dos tipos de complementos con poco código admitidos en Dataverse:
Type | Desencadenador | Parámetros de soporte | Admitido ámbito |
---|---|---|---|
Instantáneos | Ejecutar manualmente | Sí | Global y tabla |
Automatizados | Eventos de tabla Dataverse | No | Table |
Todos los complementos de código bajo tienen las siguientes propiedades comunes:
Propiedad | Descripción |
---|---|
Display name | El nombre en lenguaje natural del complemento. No se puede cambiar tras la creación. |
Nombre | Nombre del archivo interno del complemento. La plataforma lo utiliza para identificar el componente en el código y las operaciones de la base de datos. No se puede cambiar tras la creación. |
Descripción | Se utiliza para proporcionar contexto adicional sobre el complemento (propósito, comportamiento u otros detalles importantes). |
Solución | Se utiliza para agrupar componentes y exportarlos a otros entornos. Más información sobre soluciones. |
Expression | Esta es la función personalizada que se puede utilizar para realizar acciones o cálculos, definida mediante el lenguaje de expresión Power Fx. Power Fx es un lenguaje de fórmulas utilizado en aplicaciones de lienzo Power Apps y se ha ampliado para su uso en complementos de bajo código. Vea funciones compatibles para más detalles. |
Un complemento instantáneo de poco código es una lógica de código personalizada que se activa manualmente por un usuario. Se pueden utilizar parámetros de entrada y salida personalizados.
Propiedades únicas:
Propiedad | Descripción |
---|---|
Scope | Se utiliza para asociar un complemento a una tabla específica. Se puede configurar en tabla (que se muestra como entidad) o global, donde el alcance de la tabla (entidad) significa que el complemento se activa con el contexto de un registro de tabla específico y el alcance global significa que la operación no está asociada con una tabla (más información). |
Parámetros | Los parámetros le permiten pasar información entre el complemento y el contexto que lo ejecuta, facilitando el diseñar lógica de negocios que se puede volver a usar en distintas situaciones. Parámetros de entrada se utilizan para proporcionar datos al complemento y le permiten controlar cómo se comporta la función pasando diferentes valores que especifique en la fórmula Power Fx. Parámetros de salida le permiten recuperar los resultados de una función o método para su uso posterior en su programa. Tipos de datos admitidos:
|
Más información sobre cómo integrar desde una aplicación de lienzo o en un flujo de nube Power Automate: Integrar un complemento de código bajo
Permisos de complemento
Tiempo de diseño
Los creadores que sean miembros del rol de seguridad personalizador del sistema o administrador del sistema en el entorno de Power Platform pueden acceder a todos los complementos en ese entorno. Se pueden utilizar roles de seguridad personalizados para restringir el acceso a complementos de código bajo.
Tiempo de ejecución
Cuando se invoca un complemento, accede a los datos de la tabla involucrados en la definición del complemento (las tablas que forman parte de la fórmula, o si la tabla está asociada con la configuración de un complemento automatizado) en el contexto de el usuario que lo invocó.
Conexiones
Al utilizar roles de seguridad, el acceso al conector dentro de los complementos se puede restringir a un conjunto específico de usuarios dentro de su organización. Especifique qué roles tienen privilegios de creación, lectura, actualización o eliminación.
Requisitos previos para crear un complemento con poco código
- Rol de seguridad de administrador del sistema o personalizador del sistema en el entorno de Power Platform.
- Acceso a la aplicación Dataverse aceleradora.
Propina
Todos los entornos nuevos tienen la aplicación aceleradora Dataverse instalada automáticamente a partir del 1 de octubre de 2023. Si ya tenía instalado el acelerador Dataverse, puede actualizar manualmente el acelerador Dataverse.
Actualizar el acelerador Dataverse
- Siga las instrucciones para ver aplicaciones con licencia en su entorno.
- Si el Dataverse Accelerator ya está instalado y hay una actualización disponible, se indica en la tabla junto al elemento.
- Seleccione Dataverse Accelerator y, después, Actualizar en la barra de comandos.
Propina
Habilite actualizaciones automáticas de aplicaciones para que el editor Microsoft - Power CAT reciba automáticamente actualizaciones cuando estén disponibles (no es necesario para entornos nuevos creados tras el 1 de octubre de 2023).
Nota
Si instaló anteriormente la solución opcional Complmentos de poco código para conectores, se eliminará automáticamente cuando se actualice después del 29 de junio de 2023. Las capacidades estarán disponibles en la solución principal.
Cree un complemento instantáneo de código bajo
- Reproduzca la aplicación Dataverse acelerador.
- Seleccione la tarjeta Crear complemento instantáneo.
- Proporcione un Nombre para mostrar.
- Opcionalmente, defina parámetros:
- Seleccione Nuevo parámetro de entrada o Nuevo parámetro de salida, luego ingrese la etiqueta y el tipo de datos.
- Agregue más parámetros de entrada y salida según sea necesario.
- Escriba la expresión Power Fx en el editor Expresión.
- Haga referencia a los parámetros de entrada en la fórmula por el nombre de la etiqueta.
- Se debe hacer referencia a los parámetros de salida dentro de llaves, como
{ Out: "Return value" }
. - Haga referencia a tablas de Dataverse que utilizan funciones de recopilación de datos, como Filter() y LookUp().
- Si el ámbito está establecido en entidad, use
ThisRecord
para acceder a los valores de columna en la fila de la tabla asociada con la ejecución del complemento, comoThisRecord.'Account Name'
.
Propina
Fíjese en el IntelliSense en el cuadro Expresión. El rojo subrayado no es válido. Amarillo ondulado significa que su lógica puede verse afectada por limitaciones de delegación. Evite problemas de delegación utilizando funciones delegables.
- Opcionalmente, expanda Opciones avanzadas para modificar la solución, ámbito, o descripción.
- Seleccione Guardar.
- Pruebe su complemento instantáneo de código bajo.
Ejemplo: Calcular la suma de dos enteros.
- Cree dos parámetros de entrada,
X
yY
(ambos de tipo entero) y un parámetro de salida,Z
(tipo cadena). - Utilice la fórmula siguiente:
{Z: X + Y }
Cree un complemento automatizado de código bajo
- Reproduzca la aplicación Dataverse acelerador.
- Seleccione la tarjeta Crear complemento automatizado.
- Indique los siguientes valores:
- Nombre: Introduzca un nombre para el complemento instantáneo, como Validación de entrada.
- Tabla: elija una tabla para asociar el complemento, como Cuenta.
- Ejecutar esta regla de complemento cuando la fila sea. Especifique el evento de datos que invoca el complemento.
- Escriba la expresión Power Fx en el editor Expresión.
- Haga referencia a tablas de Dataverse que utilizan funciones de recopilación de datos, como Filter() y LookUp().
- Use
ThisRecord
para acceder a los valores de columna en la fila de la tabla asociada con la ejecución del complemento, comoThisRecord.'Account Name'
.
- Opcionalmente, expanda Opciones avanzadas para modificar la fase (cuándo debería ejecutarse) y la solución donde se guarda el complemento.
- Seleccione Guardar.
- Pruebe su complemento automatizado con poco código.
Usar conectores con poco código de Power Platform
Los conectores Power Platform se pueden utilizar en complementos de código bajo para integrar fácilmente datos y funcionalidades de sistemas externos a Dataverse, como SQL Server, Salesforce y SharePoint, sin la necesidad de complejos codificación o desarrollo personalizado.
Requisitos previos para usar conectores en complementos de código bajo
- Requisitos previos para crear un complemento con poco código
- Referencia de conexión con una conexión activa.
Usar acciones de conector en complementos con poco código
Puede utilizar fácilmente conectores y conectores personalizados desde un complemento de código bajo en una fórmula Power Fx.
- Crear una conexión al conector que quiera usar.
- Agregue una referencia de conexión a la conexión en el entorno Dataverse.
- En el editor de expresiones del complemento de código bajo Power Fx, escriba el nombre de la referencia de conexión (el nombre interno con un prefijo y guion bajo, como
new_connectorName
, no el nombre para mostrar). - IntelliSense le muestra las acciones disponibles. Seleccione la acción que desee y luego ingrese los parámetros requeridos.
Antes de usar un conector en un complemento de código bajo, revise la documentación del conector para asegurarse de que está pasando los parámetros de entrada y salida correctamente.
Más información: ejemplo
Nota
- En este momento no se admiten todas las acciones de conector.
- No utilice el conector Dataverse para conectarse a tablas Dataverse desde una expresión de complemento. En su lugar, use las funciones nativas de Power Fx para interactuar con colecciones: Filter, Search, LookUp, Patch, Collect y Set en las que las columnas se tratan como variables globales.
Probar un complemento de código bajo
Pruebe complementos instantáneos
Desde la pantalla de inicio, seleccione un complemento instantáneo de la lista y luego seleccione Probar en la barra de comandos. . También puede acceder a esta pantalla desde el editor de complementos instantáneos en la barra de comandos después de guardarlo.
Proporcione valores para cualquier parámetro de entrada que esté definido en el complemento de código bajo y luego seleccione Ejecutar.
Observe la respuesta.
Propina
Utilice parámetros de salida para ayudar a validar el comportamiento y los resultados esperados. De lo contrario, sólo verá un éxito o un fracaso al realizar la prueba.
Probar complementos automatizados
Pruebe complementos automatizados invocando el evento de datos. Observe si el complemento se ejecutó correctamente al validar los cambios esperados que se definieron en la fórmula.
Propina
Durante la vista previa, puede invocar el evento de datos asociado usando el editor de tablas en Power Apps:
- Inicie sesión en Power Apps, vaya a Tablas y seleccione la tabla Plug-in.
- En la barra de comandos, seleccione Editar.
- Cree, actualice o elimine filas directamente desde esta vista. Alternativamente, abra una fila en el formulario predeterminado seleccionándola, luego seleccione Editar fila usando el formulario en la barra de comandos.
Integrar un complemento de código bajo
Invoque un complemento instantáneo desde una aplicación de lienzo o una página personalizada
- En la aplicación Dataverse Accelerator:
- Seleccione el complemento instantáneo en la lista.
- En la barra de comandos, seleccione Copiar fragmento de código.
- Pegue y guarde la fórmula copiada en un editor de texto o en un bloc de notas (en algún lugar al que pueda consultar fácilmente).
- En Power Apps:
- Cree o edite una aplicación de lienzo (o una página personalizada) en Power Apps studio.
- En la navegación izquierda, debajo de la pestaña Origen de datos, seleccione + Nuevo origen de datos y busque la opción Entorno del conector de Dataverse.
- Inserte los siguientes componentes en el lienzo:
- Agregue controles de entrada que correspondan con el tipo de datos de cada parámetro, como Entrada de texto para texto o números, toggle para booleano.
- Si el ámbito del complemento está vinculado a una tabla, agregue un cuadro combinado asociado con la misma tabla para que pueda elegir la entrada.
- Agregue un botón para llamar al complemento.
- Pegue la fórmula del complemento que copió en la propiedad
OnSelect
del botón. - Asigne cada parámetro de entrada
Value
para hacer referencia a los controles de entrada correspondientes:- Si la fórmula fuera
Environment.new_CalculateSum({ X: Value, Y: Value });
, podría reescribirse como:Environment.new_CalculateSum({ X: TextInput1.Text, Y: TextInput2.Text });
- Si la fórmula estaba vinculada, reemplace
Environment
con la tabla nombre para acceder al complemento.
- Si la fórmula fuera
- Si se define un parámetro de salida para el complemento de código bajo:
- Capture la respuesta en una fórmula
Set()
oUpdateContext()
:Set( ActionResult, Environments.CalculateSum({ X: TextInput1.Text, Y: TextInput2.Text }) );
. Muestra la variable en una etiqueta. Alternativamente use la fórmulaNotify()
para mostrar datos en una notificación.
- Capture la respuesta en una fórmula
- Reproduzca la aplicación y seleccione el comando en la barra de comandos para ejecutar el complemento de código bajo.
Obtenga más información sobre cómo puede llamar a acciones Dataverse directamente desde Power Fx en aplicaciones de lienzo.
Invoque un complemento instantáneo desde un flujo en la nube de Power Automate
- En un flujo de nube, agregue una nueva acción desde el conector Microsoft Dataverse.
- Seleccione la acción llamada Realizar una acción independiente o Realizar una acción vinculada.
- Seleccione su complemento (tiene un nombre único con un prefijo).
- Proporcione valores para todos los parámetros de entrada (si los hay).
Invocar un complemento instantáneo desde la API web Dataverse
Siga los pasos para las secciones Acción no vinculada o Función vinculada a la tabla en Invocar API personalizadas de la documentación de la API web (según el ámbito apropiado del complemento).
Obtener ayuda con sus complementos con poco código
Si tiene problemas al crear o ejecutar su complemento con poco código, consulte estos consejos para conocer los problemas comunes que pueden ocurrir: Microsoft Dataverse sugerencias y problemas conocidos sobre complementos con poco código
Contactar Ayuda y soporte técnico
Para problemas con la instalación de la solución aceleradora de Dataverse o complementos con poco código no cubiertos en Sugerencias sobre complementos con poco código y problemas conocidos de Microsoft Dataverse, como errores no documentados recibidos, use la experiencia Ayuda + soporte técnico e incluya la siguiente información:
- Tipo de problema: Dataverse Web API y SDK
- Subtipo de problema: kit de Accelerator para Dataverse
Ejemplos de complementos de código bajo que puede crear
Para ver algunos ejemplos de cómo crear un complemento de código bajo, vaya a Ejemplo Dataverse complementos con poco código (vista previa)
Limitaciones
El objeto de idioma del entorno debe leerse para acceder a nuevos complementos dentro de las aplicaciones de lienzo existentes. Para cualquier complemento creado después de haber agregado la tabla de entorno origen de datos a una aplicación de lienzo existente, deberá eliminar y volver a agregar el objeto de idioma de entorno Power Fx. Luego verá la lista actualizada de complementos como acciones.
IntelliSense requiere notación explícita en complementos automatizados si desea hacer referencia a alguna tabla en la fórmula. Utilice la siguiente sintaxis de desambiguación, como
[@Accounts]
, usando corchetes y el símbolo@
(noAccounts
).Ayuda anidada. Los complementos solo pueden llamar a acciones propias publicadas por Microsoft desde expresiones Power Fx.
Alguos escenarios de
Collect
requierenPatch
. Hay algunos escenarios dondeCollect()
no funciona. La solución consiste en usarPatch()
como se muestra en el ejemplo de la columna Rellenar con respecto a continuación. Si está creando un complemento automatizado, anteponga @ a cada tabla a la que se hace referencia en la fórmula Power Fx.Patch(Faxes, Collect(Faxes, { Subject : "Sub1" } ), { Regarding : First(Accounts) } )
Cuando los complementos de código bajo interactúan con los conectores y se emplea DLP, el administrador puede bloquear la creación de conexiones mediante DLP. Sin embargo, las referencias de conexión existentes en el entorno Dataverse siguen funcionando. En caso de que el administrador necesite bloquear todas las interacciones de complementos de código bajo con cualquier conector, puede desactivar la configuración de organización
Allowconnectorsonpowerfxactions
. Esta configuración está habilitada de forma predeterminada y se puede deshabilitar mediante los métodos SDK habituales (WebAPI, SDK, PowerShell, etc.). Puede desactivar esto utilizando un complemento instantáneo de bajo código de la siguiente manera:Patch(Organizations, First(Organizations), { 'Enable connectors on power fx actions.': 'Enable connectors on power fx actions. (Organizations)'.No })
Los complementos que utilizan conectores solo pueden generar resultados de campos específicos. Debido a esto, es necesario asignar valores primitivos específicos de la respuesta del conector a los valores de salida.
Complementos de bajo código que tienen limitaciones de conectores personalizados
Si tiene complementos de bajo código con conectores personalizados, los conectores personalizados deben importarse primero, antes de las referencias o flujos de conexión.
Si su entorno no contiene el conector personalizado en una solución, importe una solución separada que solo incluya el conector personalizado. Realice esta importación antes de importar la solución real. Necesita hacer esto primero porque Azure debe registrar el conector personalizado antes de poder importar otros componentes de la solución.
Si importa una solución que contiene flujos y conectores personalizados, Azure no podrá registrar el conector personalizado mientras registra sus flujos o referencias de conexión. Esto también se aplica a las referencias de conexión para el conector personalizado que no se importaron anteriormente en una solución independiente. Si Azure no pudo registrar su conector personalizado, se producirá un error en la importación o no podrá iniciar la importación.
Más información: Crear conectores personalizados en soluciones: limitaciones conocidas
Consulte también
Complementos de bajo código Power Fx (vista previa)
Utilizar una solicitud prediseñada en un complemento con poco código de Dataverse en Power Apps
Crear un complemento automatizado con poco código con Power Apps (vídeo)
Crear un complemento instantáneo con poco código con Power Apps (vídeo)