Novedades Power Platform

Para la Transformación Digital e Innovación Tecnológica

Novedades Power Platform

Para la Transformación Digital e Innovación Tecnológica

Power AutomatePower Platform

Power Automate Cloud #16 – Sesión 02 – Resumen

Indice de Contenido

🎯 Objetivo de la sesión

La clase tuvo como objetivo diseñar la base de una solución para gestionar solicitudes de permiso de trabajadores, integrando:

  • Microsoft Dataverse para almacenar información.
  • Power Pages para capturar solicitudes mediante un formulario web.
  • Power Automate Cloud para automatizar la validación y el procesamiento.
  • Approvals para gestionar la aprobación o rechazo.
  • Outlook para notificar el resultado al trabajador.

Por dificultades de configuración y sincronización de los entornos, durante esta sesión se completaron principalmente las tablas de Dataverse, el sitio de Power Pages, el formulario y los permisos. La construcción definitiva del flujo de aprobación quedó pendiente para la siguiente clase.


1. 🔁 Repaso de conceptos fundamentales

Tipos de flujos en Power Automate

Se repasaron los tres tipos principales de flujos de nube:

Tipo de flujoCaracterísticaEjemplo
AutomatizadoSe ejecuta cuando ocurre un eventoAl registrarse una solicitud
InstantáneoSe inicia manualmenteAl presionar un botón
ProgramadoSe ejecuta según una frecuenciaCada día a las 8:00 a. m.

Para el caso desarrollado se utilizará un flujo automatizado, porque su ejecución comenzará cuando se agregue una nueva solicitud en Dataverse.


Variables

Las variables permiten almacenar temporalmente información durante la ejecución de un flujo.

Pueden utilizarse para:

  • Guardar resultados.
  • Controlar estados.
  • Construir mensajes.
  • Realizar cálculos.
  • Contar registros.
  • Evaluar condiciones.
  • Reutilizar información en acciones posteriores.

Una variable puede inicializarse con un valor y cambiarlo conforme avanzan las acciones del flujo.


Formato JSON

Se recordó que Power Automate intercambia gran parte de la información mediante JSON, especialmente cuando trabaja con:

  • Dataverse.
  • SharePoint.
  • Formularios.
  • Conectores.
  • APIs.
  • Listas de registros.

Objeto JSON

Un objeto representa un registro individual:

{
  "nombre": "César",
  "edad": 33
}

Matriz JSON

Una matriz representa una colección de registros:

[
  {
    "nombre": "César",
    "edad": 33
  },
  {
    "nombre": "Kevin",
    "edad": 30
  }
]

📌 Concepto clave: los objetos utilizan llaves { }, mientras que las matrices utilizan corchetes [ ].

Comprender esta estructura permite interpretar mejor las entradas y salidas de las acciones de Power Automate.


2. 🏗️ Arquitectura de la solución

La solución propuesta sigue este recorrido:

Trabajador
   ↓
Formulario de Power Pages
   ↓
Tabla de solicitudes en Dataverse
   ↓
Flujo automatizado de Power Automate
   ↓
Validación del trabajador
   ↓
Solicitud de aprobación
   ↓
Actualización del estado
   ↓
Notificación por correo

Función de cada componente

ComponenteFunción
Power PagesPresentar el formulario web al trabajador
DataverseAlmacenar trabajadores y solicitudes
Power AutomateEjecutar las validaciones y acciones
ApprovalsRecibir la decisión del aprobador
OutlookComunicar el resultado al solicitante

Dataverse resulta adecuado para mantener estados, solicitudes y evidencias independientemente de las ejecuciones individuales del flujo. Microsoft presenta este patrón como una forma de implementar procesos de aprobación respaldados por datos persistentes. [learn.microsoft.com]


3. 🌐 Configuración de entornos

Un entorno de Power Platform es un espacio que contiene y organiza recursos como:

  • Tablas de Dataverse.
  • Flujos de Power Automate.
  • Sitios de Power Pages.
  • Aplicaciones.
  • Soluciones.
  • Conexiones.
  • Usuarios y permisos.

Problemas presentados

Durante la clase se produjeron inconvenientes por:

  • Uso simultáneo de varias cuentas.
  • Falta de permisos para crear entornos.
  • Sesiones empresariales mezcladas.
  • Creación accidental de entornos duplicados.
  • Eliminación de un entorno aún utilizado.
  • Demoras en la sincronización de Dataverse.
  • Recursos que no aparecían en Power Automate.

Procedimiento recomendado

  1. Utilizar un perfil de navegador independiente.
  2. Confirmar la cuenta conectada.
  3. Seleccionar el entorno correcto.
  4. Esperar hasta que termine el aprovisionamiento.
  5. Evitar actualizar repetidamente durante la creación.
  6. No eliminar un entorno sin revisar sus dependencias.
  7. Confirmar que Power Pages, Dataverse y Power Automate utilicen el mismo entorno.

⚠️ Antes de crear tablas, formularios o flujos, siempre debe verificarse el selector de entorno.


4. 🗃️ Creación de la tabla Trabajador

Se creó una tabla en Dataverse para almacenar los datos maestros de los trabajadores.

Campos principales

CampoTipo recomendadoObservación
CódigoTextoIdentificador único
NombreTextoNombre completo
ÁreaTexto u opciónÁrea organizacional
PuestoTextoCargo del trabajador
CorreoCorreo electrónicoSe utilizará para las notificaciones

Posteriormente se agregaron registros de prueba con códigos y correos válidos.

Buenas prácticas

  • Configurar el código como obligatorio.
  • Evitar códigos duplicados.
  • Usar una clave alternativa si el código debe ser único.
  • Validar el formato del correo.
  • Utilizar una columna de opciones para áreas conocidas.
  • No usar datos personales reales en ambientes de demostración sin autorización.

5. 📝 Creación de la tabla Solicitud trabajador

La segunda tabla se creó para almacenar cada solicitud de permiso.

Campos configurados

CampoTipoOrigen
CódigoTextoFormulario
Fecha de solicitudFecha y horaPower Automate
Fecha del permisoSolo fechaFormulario
MotivoTexto multilíneaFormulario

Diferencia entre fechas

Fecha de solicitud

Representa el momento en que el trabajador registró su petición. Debe conservar fecha y hora para fines de auditoría.

Fecha del permiso

Representa el día para el cual se solicita la ausencia. Solo necesita almacenar la fecha.

Campos recomendados para completar la solución

  • Estado de la solicitud.
  • Aprobador.
  • Comentarios.
  • Fecha de decisión.
  • Resultado de la aprobación.
  • Identificador de la aprobación.
  • Indicador de procesamiento.
  • Correo del solicitante.

6. 🔗 Relación entre trabajadores y solicitudes

En la práctica se utilizó el campo Código para vincular una solicitud con un trabajador.

El flujo previsto deberá:

  1. Recibir el código desde el formulario.
  2. Buscarlo en la tabla de trabajadores.
  3. Verificar que exista.
  4. Recuperar el nombre, área, puesto y correo.
  5. Continuar únicamente si el trabajador es válido.

Mejora recomendada

Para una solución empresarial, conviene utilizar una columna de tipo búsqueda o lookup entre las tablas, en lugar de mantener únicamente una relación textual.

Esto permite:

  • Mayor integridad de los datos.
  • Menos duplicidad.
  • Consultas relacionales.
  • Mejor trazabilidad.
  • Menor riesgo de errores por códigos escritos incorrectamente.

7. 🌍 Creación del sitio en Power Pages

Se creó una página web basada en una plantilla en blanco.

Procedimiento realizado

  1. Abrir Power Pages.
  2. Seleccionar la categoría del sitio.
  3. Elegir comenzar con una plantilla.
  4. Seleccionar una página en blanco.
  5. Asignar un nombre al sitio.
  6. Configurar la dirección web.
  7. Esperar a que termine el aprovisionamiento.
  8. Abrir el sitio en el diseñador.

La finalidad del sitio es proporcionar una interfaz sencilla para que los trabajadores registren sus solicitudes sin acceder directamente a Dataverse.


8. 🧾 Creación del formulario

Dentro de Power Pages se agregó un formulario conectado con la tabla Solicitud trabajador.

Configuración principal

  • Tabla: Solicitud trabajador.
  • Operación: crear un nuevo registro.
  • Mensaje final: datos enviados correctamente.
  • Archivos adjuntos: deshabilitados.
  • CAPTCHA: no utilizado en la práctica.
  • Rellenado con IA: deshabilitado.

Cuando el usuario selecciona Enviar, Power Pages crea automáticamente una nueva fila en Dataverse.


Campos visibles

El formulario debía mostrar únicamente:

  • Código del trabajador.
  • Fecha del permiso.
  • Motivo.

Campos ocultos

No era necesario mostrar:

  • Propietario.
  • Fecha de solicitud.
  • Estado.
  • Aprobador.
  • Comentarios.
  • Campos administrativos.

La fecha de solicitud se completará posteriormente mediante Power Automate.


9. 🔐 Permisos de tabla

Al probar el formulario apareció inicialmente un error de acceso. El problema se debía a que no se habían configurado los permisos necesarios sobre la tabla de Dataverse.

Power Pages restringe por defecto el acceso a los registros. Para permitir el uso de formularios y listas es necesario crear permisos de tabla y asociarlos con roles web. [learn.microsoft.com]

Configuración realizada

  • Tabla: Solicitud trabajador.
  • Tipo de acceso: global.
  • Privilegios: crear y leer.
  • Roles: usuarios autorizados.

Error identificado

El permiso había sido creado, pero no tenía roles asignados.

Solución aplicada

  1. Abrir el permiso de tabla.
  2. Seleccionar Agregar roles.
  3. Elegir el rol correspondiente.
  4. Guardar los cambios.
  5. Publicar el sitio.
  6. Probar nuevamente.

Recomendación de seguridad

Para una implementación real, no es recomendable otorgar lectura global de todas las solicitudes si los trabajadores pueden ver información de otras personas.

Una configuración más segura sería:

  • Permitir crear solicitudes.
  • Permitir leer solo los registros propios.
  • No permitir eliminar.
  • Restringir la actualización después de la aprobación.
  • Utilizar acceso por contacto, cuenta o propietario.

Power Pages admite diferentes tipos de acceso para controlar qué registros quedan disponibles para cada rol. [learn.microsoft.com]


10. 🚀 Guardar y publicar

Se explicó la diferencia entre ambas acciones:

  • Guardar: conserva los cambios en el diseñador.
  • Publicar: hace que los cambios estén disponibles en el sitio.

Después de modificar campos, permisos o configuraciones, es necesario publicar nuevamente.

✅ Si un cambio se observa en el diseñador, pero no en la página pública, se debe verificar si el sitio fue publicado.


11. 🧪 Prueba del formulario

Se registró una solicitud de prueba con:

  • Código del trabajador.
  • Fecha del permiso.
  • Motivo de la solicitud.

Al enviarla:

  1. Power Pages mostró un mensaje de confirmación.
  2. Se creó la fila en Dataverse.
  3. El código, el motivo y la fecha del permiso quedaron registrados.
  4. La fecha de solicitud permaneció vacía.
  5. Se confirmó que esa fecha debe completarse mediante Power Automate.

También se detectó que los campos de fecha podían haberse asociado incorrectamente. La corrección consiste en revisar las columnas seleccionadas en la configuración del formulario.


12. ⚡ Diseño del flujo automatizado

Aunque no se completó durante la sesión, se definió la estructura que deberá seguir el flujo.

Desencadenador recomendado

Cuando se agrega, modifica o elimina una fila, configurado de la siguiente manera:

  • Tipo de cambio: agregado.
  • Tabla: Solicitud trabajador.
  • Ámbito: organización.

Microsoft recomienda utilizar el tipo de cambio Added cuando un proceso de aprobación debe iniciarse después de la creación de una nueva fila en Dataverse. [learn.microsoft.com]


Secuencia prevista

  1. Detectar la nueva solicitud.
  2. Recuperar el código ingresado.
  3. Buscar al trabajador en Dataverse.
  4. Verificar que el trabajador exista.
  5. Recuperar su nombre, área, puesto y correo.
  6. Actualizar la fecha de solicitud.
  7. Iniciar la aprobación.
  8. Esperar la decisión.
  9. Evaluar el resultado.
  10. Actualizar el estado de la solicitud.
  11. Guardar comentarios y fecha de decisión.
  12. Enviar un correo al trabajador.

13. ✅ Proceso de aprobación

La acción recomendada es:

Iniciar y esperar una aprobación

Esta acción envía la solicitud al aprobador y mantiene el flujo en espera hasta que se recibe una respuesta. [learn.microsoft.com], [learn.microsoft.com]

Información que debe recibir el aprobador

  • Nombre del trabajador.
  • Código.
  • Área.
  • Puesto.
  • Fecha solicitada.
  • Motivo.
  • Enlace al registro, si corresponde.

Tipos de aprobación disponibles

TipoFuncionamiento
Todos deben aprobarRequiere la aprobación de todos
Primero en responderLa primera respuesta finaliza la aprobación
Respuestas personalizadasUtiliza opciones definidas por el creador
SecuencialLos aprobadores responden en orden

Para un único responsable puede utilizarse:

  • Aprobar/Rechazar, primero en responder, o
  • Respuestas personalizadas, esperar una respuesta.

[learn.microsoft.com]


14. 📧 Notificación del resultado

Después de la decisión, el flujo deberá enviar un correo al trabajador.

Contenido recomendado

  • Número o identificador de solicitud.
  • Fecha solicitada.
  • Resultado: aprobado o rechazado.
  • Nombre del aprobador.
  • Comentarios.
  • Fecha de decisión.

También conviene notificar errores técnicos o solicitudes con códigos inválidos a un responsable del proceso.


15. ⚠️ Problemas técnicos y soluciones

ProblemaCausa probableSolución
No se puede crear un entornoFalta de permisosVerificar cuenta y consultar al administrador
Aparecen recursos de otra organizaciónSesiones mezcladasUsar otra ventana o perfil
El entorno tarda demasiadoAprovisionamiento pendienteEsperar y actualizar una vez
Se crean entornos duplicadosClics o intentos repetidosEsperar la primera creación
Dataverse no aparece en el flujoEntorno incorrectoSeleccionar el entorno de las tablas
No aparece una tablaSincronización pendienteActualizar después de unos minutos
Power Pages niega el accesoFalta de permisosCrear permiso y asignar roles
El permiso existe, pero no funcionaNo tiene rol webAsociar el permiso con un rol
Un campo no se guardaAsociación incorrectaRevisar el formulario y la columna
Los cambios no aparecenSitio no publicadoGuardar y publicar

❓ Preguntas y respuestas destacadas

1. ¿Por qué no puedo crear el entorno?

Respuesta del docente

El problema puede estar relacionado con permisos, uso de una cuenta incorrecta o una sesión mezclada con otra cuenta empresarial.

Solución reforzada

  • Confirmar la cuenta activa.
  • Usar un perfil separado.
  • Revisar permisos de Power Platform.
  • Esperar que termine el aprovisionamiento.
  • Solicitar apoyo al administrador si el error continúa.

2. ¿Para qué se utiliza un entorno?

Respuesta del docente

Sirve para organizar y separar tablas, flujos, aplicaciones, conexiones y sitios.

Solución reforzada

Se recomienda disponer de entornos separados para:

  • Desarrollo.
  • Pruebas.
  • Producción.

Esto reduce el riesgo de modificar o eliminar accidentalmente recursos utilizados por usuarios finales.


3. ¿Por qué el formulario mostraba un error de permisos?

Respuesta del docente

Porque la página no tenía autorización para acceder a la tabla de solicitudes.

Solución oficial

Power Pages restringe automáticamente el acceso a los registros de Dataverse. Se debe crear un permiso de tabla, seleccionar los privilegios necesarios y asociarlo con un rol web. [learn.microsoft.com]


4. ¿Por qué el permiso no funcionaba aunque estaba creado?

Respuesta del docente

Porque no se habían asignado roles al permiso.

Solución

Editar el permiso, seleccionar Agregar roles, asignar el rol correspondiente, guardar y publicar nuevamente. [learn.microsoft.com]


5. ¿Por qué la fecha de solicitud quedó vacía?

Respuesta del docente

Porque ese campo debía completarse con Power Automate y la automatización todavía no estaba terminada.

Solución reforzada

Cuando se cree la fila, el flujo debe ejecutar Actualizar una fila y asignar la fecha y hora actual al campo correspondiente.


6. ¿Por qué no aparecía Dataverse al crear el flujo?

Respuesta del docente

El flujo estaba siendo creado en un entorno diferente o que todavía no estaba correctamente sincronizado.

Solución

  • Seleccionar el entorno de Dataverse.
  • Actualizar Power Automate.
  • Verificar que la tabla exista en ese entorno.
  • Confirmar la conexión.
  • Evitar utilizar un entorno eliminado o duplicado.

7. ¿Es necesario guardar y publicar?

Respuesta del docente

Sí. Guardar conserva los cambios, pero publicar los hace visibles en la página.


8. ¿Qué sucede al enviar el formulario?

Respuesta del docente

Power Pages crea una nueva fila en la tabla de solicitudes de Dataverse.

Solución reforzada

El flujo debe actualizar esa misma fila, no crear una segunda solicitud, para evitar duplicidad.


9. ¿Cómo debe iniciarse la aprobación?

Respuesta reforzada

Se debe utilizar un flujo automatizado con el desencadenador de Dataverse configurado para filas agregadas y después ejecutar Iniciar y esperar una aprobación. [learn.microsoft.com], [learn.microsoft.com]


✅ Conclusiones

  • Dataverse permite estructurar y almacenar trabajadores y solicitudes.
  • Power Pages puede utilizarse como interfaz para crear registros sin exponer directamente las tablas.
  • Los permisos de tabla son indispensables para autorizar el acceso de Power Pages a Dataverse.
  • Un permiso no tendrá efecto si no está asociado con un rol web.
  • El formulario debe mostrar únicamente los campos que corresponde completar al trabajador.
  • Power Automate puede iniciar el proceso cuando se agrega una nueva fila.
  • La aprobación integra una decisión humana dentro del flujo automatizado.
  • Todos los componentes deben pertenecer al entorno correcto.
  • La creación o eliminación incorrecta de entornos puede afectar la visibilidad de tablas, conexiones y flujos.
  • La estructura de datos y el formulario quedaron creados, pero el flujo completo deberá finalizarse en la siguiente sesión.

⭐ Recomendaciones finales

  1. Crear los componentes dentro de una solución de Power Platform.
  2. Confirmar siempre la cuenta y el entorno seleccionados.
  3. Evitar nombres duplicados de entornos y tablas.
  4. Configurar el código del trabajador como valor único.
  5. Relacionar trabajadores y solicitudes mediante una búsqueda de Dataverse.
  6. Aplicar el principio de mínimo privilegio en Power Pages.
  7. Evitar acceso global si existen datos confidenciales.
  8. Configurar el desencadenador únicamente para filas agregadas.
  9. Actualizar la fila creada por Power Pages en lugar de crear otra.
  10. Incorporar un estado inicial como Pendiente.
  11. Guardar aprobación, comentarios, aprobador y fecha de decisión.
  12. Implementar una ruta para códigos inexistentes.
  13. Notificar aprobaciones, rechazos y errores.
  14. Probar con usuarios reales en un entorno de pruebas.
  15. Separar desarrollo, pruebas y producción.

📚 Referencias oficiales

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

advanced-floating-content-close-btnBoton