Contenido del curso

Framework de Agentes de AI

Consultar inventario en Excel desde Copilot Studio

Resumen

Construir un agente de gestión de inventarios con Copilot Studio y Power Automate te permite consultar productos en Excel, validar stock y entregar respuestas estructuradas al usuario en segundos. Esta guía te muestra el flujo completo: desde el desencadenador hasta la respuesta final con nombre, precio y ubicación.

¿Qué hace un agente de gestión de inventarios en Copilot Studio?

El agente recibe el ID de un producto, lanza un flujo en Power Automate, consulta una tabla de Excel y devuelve la información estructurada al usuario. Todo ocurre en una sola conversación.

La idea es simple: tú escribes inventario, el agente te pregunta qué producto quieres consultar, y en cuestión de segundos te dice si está disponible, cuántas unidades hay, cuánto cuesta y dónde está ubicado. Lo interesante es que este mismo patrón sirve para gestores de solicitudes, catálogos de productos o cualquier sistema que dependa de una base de datos viva.

¿Para qué sirve un agente conectado a Excel? Para automatizar consultas repetitivas a una base de datos sin que el usuario abra el archivo. El agente lee, filtra y responde con lenguaje natural.

¿Cómo se configura el tema y el desencadenador del agente?

El punto de partida es crear un tema desde cero dentro de Copilot Studio [01:30]. Aquí defines las frases que activan el flujo y la primera pregunta al usuario.

Dentro de los desencadenadores te conviene incluir variantes naturales como:

  • Información sobre el inventario.
  • Disponibilidad de stock.
  • Consultar inventario.

Después agregas una pregunta corta que solicita el ID del producto y guardas esa respuesta en una variable tipo string. Esa variable es la llave que viajará al flujo de Power Automate.

¿Por qué guardar el ID como variable string?

Porque los IDs suelen incluir ceros a la izquierda o combinaciones de letras y números. Si los guardas como número, pierdes formato. El tipo string preserva el dato exacto y evita errores al cruzarlo con la tabla de Excel.

¿Cómo se construye el flujo en Power Automate paso a paso?

El flujo arranca con el nodo cuando el agente llama al flujo, donde declaras la variable de entrada (ID del producto) [02:30]. Luego agregas el nodo get a row u obtener una fila, que es el corazón de la consulta.

La tabla de Excel que vas a usar debe tener seis columnas mínimas: ID del producto, nombre, categoría, stock, precio y ubicación. Si todavía no tienes una tabla formal, selecciona los campos en Excel, clic derecho y elige Crear tabla. Para revisar o cambiar el nombre, ve a Diseño de tabla y míralo en la esquina superior derecha.

¿Qué es la key column en Power Automate? Es la columna que el flujo usa como filtro para encontrar la fila correcta. En este caso, Product ID.

Dentro del nodo get a row configuras tres datos clave:

  1. La ubicación del archivo de Excel.
  2. El nombre exacto de la tabla, por ejemplo Tabla inventario.
  3. La key column, que será Product ID, y su valor, que se mapea al ID que envió el usuario desde Copilot.

Si cambias el nombre de la tabla en Excel después de configurar el nodo, Power Automate genera un error. Toca recargar el nodo para que reconozca el nuevo nombre.

¿Cómo se devuelven los datos al agente?

Una vez encontrada la fila, agregas el módulo Respond to the agent o Responder al agente. Ahí defines las salidas que el agente recibirá de vuelta:

  • Nombre del producto (string).
  • Stock disponible (numérico).
  • Precio (numérico).
  • Ubicación (string).

Mapeas cada salida con el campo correspondiente de Excel haciendo clic en el ícono del rayo. El consejo práctico: usa nombres lógicos y consistentes en Excel, en Power Automate y en Copilot Studio. Si los tres hablan el mismo idioma, el mapeo es trivial.

¿Cómo se conecta el flujo de vuelta al tema en Copilot Studio?

Después de publicar el flujo, vuelves al tema y agregas el nuevo flujo como herramienta. Clic en agregar herramientas y flujo y seleccionas el que acabas de crear, por ejemplo gestor de inventarios [07:30].

La variable que pasas como entrada es la respuesta del usuario (el ID del producto). Las cuatro variables de salida (nombre, stock, precio, ubicación) quedan disponibles para construir el mensaje final.

El mensaje personalizado que el agente devuelve al usuario combina las cuatro variables en una frase natural: el producto está disponible con X unidades de stock, a un precio de Y, en la ubicación Z. Y cierra preguntando si el usuario quiere apartar otra unidad o consultar otro producto, lo que abre la puerta a una lógica condicional encadenada.

¿Cómo se prueba el agente y qué reto queda pendiente?

Al probar con la palabra inventario, el agente pide el ID y, tras dar permisos para acceder a la base de datos, ejecuta la consulta. En el ejemplo, el ID 006 devuelve: 25 unidades de stock, precio 45 y bodega B [08:50]. Al revisar la tabla de Excel, los auriculares Bluetooth coinciden exactamente con esos datos.

Queda un detalle por resolver: el mensaje muestra el código 006 en lugar del nombre del producto. El reto es modificar el flujo de Power Automate para que el nombre real aparezca en la respuesta, lo cual mejora la experiencia conversacional.

¿Qué otra lógica condicional agregarías para apartar unidades o redirigir el flujo a una nueva consulta? Cuéntalo en los comentarios.