Comparteix a través de


Crear expresiones con Power Fx

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

Power Fx Las fórmulas en Copilot Studio utilizan numeración al estilo de EE. UU. 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 utilizar la variable del sistema Conversation.Id en una fórmula, haga referencia a la variable del sistema 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 Fórmulas de Power Fx Ejemplos de formato
String Función de texto
Función Len
Funciones inferior, superior y propia
Funciones IsMatch, Match y MatchAll
Funciones EndsWith y StartsWith
"hi"
"hello world!"
"copilot"
Booleana Función booleano
Funciones Y, O y No
Solo true o false
Number Funciones decimales, flotantes y de valor
Funciones Int, Round, RoundDown, RoundUp y Trun
1
532
5.258
-9201
Registro y tabla Funciones Count, CountA, CountIf y CountRows
Función ForAll
Funciones First, FirstN, Index, Last y LastN
Funciones de filtro, búsqueda y consulta
Función JSON
Función ParseJSON
[1]
[45, 8, 2]
["cats", "dogs"]
{ id: 1 }
{ message: "hello" }
{ name: "John", info: { age: 25, weight: 175 } }
Fecha y hora Funciones de fecha, fecha y hora
Funciones DateValue, TimeValue y DateTimeValue
Funciones Día, Mes, Año, Hora, Minuto, Segundo y Día de la semana
Funciones Ahora, Hoy, IsToday, UTCNow, UTCToday, IsUTCToday
Funciones DateAdd, DateDiff y TimeZoneOffset
Función de texto
Time(5,0,23)
Date(2022,5,24)
DateTimeValue("May 10, 2022 5:00:00 PM")
Opción No disponible No admitido
En blanco Funciones Blank, Coalesce, IsBlank y IsEmpty Solo Blank()

Usar Power Fx para establecer una variable

En este ejemplo, una expresión almacena y genera el nombre del cliente en letras mayúsculas. Power Fx

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

  2. Para Ingresar un mensaje, ingrese "¿Cuál es su nombre?".

  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.

  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. Ingrese "HOLA", Seleccionar {x}, y luego Seleccionar capsName.

    Captura de pantalla del nodo 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 Ingresar un mensaje, ingrese "¿Fecha de reserva?".

  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. Seleccionar el ícono Agregar nodo debajo del nodo Pregunta y luego Seleccionar Agregar una condición.

  6. Seleccionar el ícono Más () del nodo Condición y luego Seleccionar Cambiar a fórmula.

  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 Mensaje e ingrese el mensaje "Usted califica para un descuento".

  10. En el nodo Todas las demás condiciones , agregue un nodo Mensaje e ingrese el mensaje: "Lo sentimos, no califica para un descuento".

    Captura de pantalla de nodos de mensajes condicionales.