Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
[Este tema es documentación preliminar y está sujeto a modificaciones.]
Puede invocar funciones en Dataverse desde una aplicación de lienzo, una página personalizada en un aplicación basada en modelo, un flujo, código o desde otra función.
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 obtener acceso anticipado y proporcionar comentarios.
Invocar una función desde una aplicación de lienzo o una página personalizada
- En el área Funciones en Power Apps (make.powerapps.com), seleccione la función que desea invocar desde una aplicación de lienzo o página personalizada.
- En la barra de comandos, seleccione Copiar fragmento de código.
- Pegue y guarde la fórmula copiada en un editor de texto, Bloc de notas o en algún lugar al que pueda consultarla fácilmente.
- En Power Apps Studio:
- Crea o edita una aplicación de lienzo o una página personalizada en Power Apps Studio.
- En el panel de navegación izquierdo, en la pestaña Orígenes de datos, seleccione Agregar datos, y busque la opción Entorno del conector de Dataverse, y selecciónela.
- Inserte los siguientes componentes en el lienzo:
- Agregue controles de entrada que se correspondan con el tipo de datos de cada parámetro, como la entrada numérica.
- Agregue un botón para llamar a la función.
- Agregue un control de salida que se corresponda con el tipo de datos de su parámetro, como la entrada numérica.
- Seleccione el botón que ha creado y, en la propiedad OnSelect, introduzca su función, como Environment.new_calculatesum.
- Asigne cada parámetro de entrada
Valuepara hacer referencia a los controles de entrada correspondientes:- Si su función es
Environment.new_CalculateSum({ X: Value, Y: Value });, podría reescribirse como:Environment.new_CalculateSum({ X: NumberInput1.value, Y: NumberInput2.value });. - Para establecer el resultado de la función 'result', actualice la fórmula a 'Set(result, Environment.new_CalculateSum({ X: NumberInput1.value, Y: NumberInput2.value }))'.
- Si su función es
- Seleccione el control de salida y establezca la propiedad 'Value' con una fórmula de 'result.z'.
Obtenga una vista previa de la aplicación, escriba los valores de entrada 1 y 2 y seleccione el botón. El resultado debería mostrarse en el campo de salida.
Invocar funciones 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 sin enlazar
- Seleccione su función. La función tiene un nombre único con un prefijo.
- Proporcione valores para los parámetros de entrada (si lo hay).
Invocar funciones desde la API web Dataverse
Siga los pasos para las secciones de acción no enlazada del artículo Invocación de API personalizadas desde la API web (según el ámbito adecuado del complemento).
Invocar funciones existentes desde dentro de funciones nuevas
Para invocar una función existente dentro de una función nueva, use la sintaxis: Environment.ExistingFunction({inputParam1: value1, inputParam2: value2, ... inputParamN: valueN})
Dado que la salida es siempre un registro, utilice la notación de puntos para acceder a los parámetros de salida. Por ejemplo, si la función "ExistingFunction" tiene dos parámetros de salida definidos como out1 y out2, puede acceder a ellos de cualquiera de estas dos maneras:
Environment.ExistingFunction({inputParam1: value1, inputParam2: value2, ... inputParamN: valueN}).out1Environment.ExistingFunction({inputParam1: value1, inputParam2: value2, ... inputParamN: valueN}).out2
Limitaciones con funciones en Dataverse
- Para acceder a nuevas funciones dentro de las aplicaciones de lienzo existentes, es necesario leer el objeto de lenguaje de entorno. Para cualquier función creada después de añadir la fuente de datos de la tabla de entorno a una aplicación de lienzo existente, debe eliminar y volver a añadir el objeto de lenguaje de entorno Power Fx. A continuación, verá la lista actualizada de funciones como acciones.
- Ayuda anidada. Las funciones solo pueden llamar a acciones Microsoft publicadas por Microsoft a partir de expresiones Power Fx.
- Alguos escenarios de
CollectrequierenPatch. Hay algunos escenarios dondeCollect()no funciona. La solución consiste en utilizarPatch()como se muestra en el ejemplo de rellenar la columna correspondiente.
Patch(Faxes,
Collect(Faxes, { Subject : "Sub1" } ),
{ Regarding : First(Accounts) }
)
Depurar y obtener ayuda con sus funciones
Si tiene problemas al crear o ejecutar la función, utilice la función trace() para la depuración o vaya a Limitaciones con funciones en Dataverse para ver los problemas comunes que pueden producirse.
Depuración mediante la función trace()
- Para depurar mediante la función trace, asegúrese de habilitar el complemento y el seguimiento de la actividad del flujo de trabajo personalizado.
- Vaya a Power Apps (make.powerapps.com), seleccione el icono de engranaje Configuración en la parte superior derecha y, a continuación, seleccione Configuración avanzada.
- Seleccione Configuración >, Auditoría > Configuración de Auditoría Global.
- En la pestaña Personalización, asegúrese de que la opción Permitir el registro en el registro de seguimiento del complemento está activada para Todos.
Una vez habilitado el seguimiento, puede comenzar a usar las funciones trace() para depurar fórmulas de Power Fx. Obtenga más información sobre cómo usar la función trace() dentro de una expresión Power Fx: Función Trace - Power Platform.
Contactar ayuda y soporte técnico
Para problemas con funciones no cubiertas en Microsoft Dataverse sugerencias de complementos con poco código y problemas conocidos, como errores no documentados recibidos, use la experiencia de soporte técnico de Ayuda + e incluya la siguiente información:
- Tipo de problema: Dataverse Web API y SDK
- Subtipo de problema.