Crear expresiones con Power Fx

Importante

Las capacidades y características de Power Virtual Agents son ahora parte de Microsoft Copilot Studio tras importantes inversiones en IA generativa e integraciones mejoradas en Microsoft Copilot.

Algunos artículos y capturas de pantalla pueden hacer referencia a Power Virtual Agents mientras actualizamos la documentación y el contenido de capacitación.

Power Fx es el lenguaje de fórmulas de poco código que funciona de manera muy similar a las fórmulas de Excel. Usar Power Fx para crear una lógica compleja que permita a sus copilotos manipular datos. Por ejemplo, una fórmula Power Fx puede establecer el valor de una variable, analizar una cadena o usar una expresión en una condición. Para obtener más información, consulte la Información general sobre Power Fx y la referencia de fórmulas.

Nota

Las fórmulas de Power Fx en Microsoft Copilot Studio utilizan la numeración al estilo estadounidense. Es decir, el separador decimal es un punto o punto, como en 12,567.892. Esto también significa que los parámetros de Power Fx deben estar separados por comas (,).

Requisitos previos

Usar variables en una fórmula

Para utilizar una variable en una fórmula de Power Fx, debe agregar un prefijo a su nombre para indicar el alcance de la variable:

Por ejemplo, para usar la variable del sistema Conversation.Id en una fórmula, debe referirse a ella como System.Conversation.Id.

Captura de pantalla del panel Introducir fórmula con una expresión que contiene una variable del sistema.

Usar valores literales en una fórmula

Además de usar variables en una fórmula de Power Fx, puede ingresar valores literales. Para usar un valor literal en una fórmula, debe ingresar el valor en el formato que corresponde a su tipo: La siguiente tabla enumera los tipos de datos y el formato de sus valores literales correspondientes.

Type Ejemplos de formato
String "hi", "hello world!", "copilot"
Booleana Solo true o false
Number 1, 532, 5.258, -9201
Table [1], [45, 8, 2], ["cats", "dogs"]
Grabar { id: 1 }, { message: "hello" }, { name: "John", info: { age: 25, weight: 175 } }
Fecha y hora Time(5,0,23), Date(2022,5,24), DateTimeValue("May 10, 2022 5:00:00 PM")
Opción No admitido
En blanco Solo Blank()

Usar Power Fx para establecer una variable

En este ejemplo, usaremos una expresión de Power Fx para almacenar el nombre del cliente y mostrarlo en letras mayúsculas.

  1. Cree un tema y agregue un nodo de Pregunta.

  2. Para Introducir un mensaje, introduzca What is your name?.

  3. En Identificar, seleccione la entidad Nombre de persona.

  4. Seleccione el cuadro bajo Guardar respuesta como y luego seleccione la variable Var1 y dele el nombre customerName.

    Captura de pantalla de un nodo Pregunta con una variable denominada Var1 resaltada.

  5. En el nodo Pregunta, seleccione + y elija Establecer un valor de variable.

  6. Seleccione el cuadro bajo Establecer variable y luego Crear una nueva y llámela capsName.

  7. En el cuadro Al valor, seleccione la flecha > y luego seleccione la pestaña Fórmula.

  8. En el cuadro fx, escriba Upper(Text(Topic.customerName)) y luego seleccione Insertar.

    Captura de pantalla de una fórmula de Power Fx en un nodo Establecer una variable con la pestaña Fórmula resaltada.

  9. En el nodo Pregunta, seleccione + y luego elija Enviar un mensaje.

  10. Escriba HELLO y seleccione {x} y luego capsName.

    Captura de pantalla del nodo Enviar un mensaje con un mensaje definido.

Usar una fórmula de Power Fx como condición

Para evaluar expresiones más complejas, configure los nodos de condición para usar fórmulas de Power Fx.

En este ejemplo, el copiloto determina si una fecha de reserva califica para un descuento. Para ello, comprueba si la fecha de reserva proporcionada por el cliente es de 14 días o más desde la fecha actual.

  1. Cree un tema y agregue un nodo de Pregunta.

  2. Para Introducir un mensaje, introduzca Booking date?.

  3. En Identificar, seleccione la entidad Fecha y hora.

  4. Seleccione el cuadro bajo Guardar respuesta como y luego seleccione la variable Var1 y dele el nombre bookingDate.

    Captura de pantalla del nodo Pregunta con la entidad de fecha y hora elegida y un conjunto de variables.

  5. Seleccione el icono + y, luego, Agregar una condición.

  6. En el nodo Condición, seleccione el menú de nodo () y luego Cambiar a fórmula.

    Captura de pantalla de un nodo Condición con el ícono Menú de nodo y Cambiar a fórmula resaltado.

  7. En el cuadro Función, seleccione la flecha > y luego seleccione la pestaña Fórmula.

  8. Reemplace el contenido del cuadro fx con la fórmula Topic.bookingDate > (DateAdd (Now(), 14)) y luego seleccione Insertar.

  9. En el nodo Condición, agregue un nodo Enviar un mensaje e ingrese el mensaje You qualify for a discount.

  10. En el nodo Todas las demás condiciones, agregue un nodo Enviar un mensaje e ingrese el mensaje Sorry, you don't qualify for a discount.

    Captura de pantalla de nodos de mensaje en un nodo Condición.