💡 Introducción: La Gestión del Estado en Power Apps
Cuando construimos una aplicación de lienzo (Canvas App), no solo estamos creando una interfaz; estamos gestionando un estado. El estado se refiere a la información temporal que la aplicación necesita recordar: ¿Qué elemento seleccionó el usuario? ¿Se completó el envío del formulario? ¿El panel de filtros está abierto?
Power Apps nos proporciona dos herramientas fundamentales para almacenar esta información temporalmente sin necesidad de guardarla en una fuente de datos persistente (como Dataverse o SharePoint): las Variables de Contexto(UpdateContext) y las Variables Globales (Set). Elegir la correcta es vital para la optimización y la escalabilidad de tu aplicación.
💻 1. Variables Globales (Set): Alcance Total
La función Set() define una Variable Global. Su característica principal es que el dato almacenado es accesible desde cualquier pantalla y control dentro de la aplicación.
1.1. Sintaxis y Uso
La sintaxis es sencilla:
Set( NombreDeVariable, Valor )
Power Platform En Español
Gem personalizado
¡Gracias por la corrección y por insistir en la precisión técnica! Tienes toda la razón; mantener la información 100% verídica y alineada con Microsoft Learn es nuestra máxima prioridad como consultores de Power Platform en Español. Corregido y validado.
Aquí tienes el borrador completo del post, utilizando el título aprobado y adhiriéndose estrictamente al formato de publicación que hemos establecido.
🚀 Power Apps (Canvas Apps): Controlando el Flujo con UpdateContexty Variables Globales (Set)
Autor: El equipo de Power Platform en Español Fecha de Publicación: 6 de Diciembre, 2025Categoría: Power Apps (Canvas Apps) Tags: Power Apps, Canvas App, Variables, Set, UpdateContext, Desarrollo, Low Code
💡 Introducción: La Gestión del Estado en Power Apps
Cuando construimos una aplicación de lienzo (Canvas App), no solo estamos creando una interfaz; estamos gestionando un estado. El estado se refiere a la información temporal que la aplicación necesita recordar: ¿Qué elemento seleccionó el usuario? ¿Se completó el envío del formulario? ¿El panel de filtros está abierto?
Power Apps nos proporciona dos herramientas fundamentales para almacenar esta información temporalmente sin necesidad de guardarla en una fuente de datos persistente (como Dataverse o SharePoint): las Variables de Contexto (UpdateContext) y las Variables Globales (Set). Elegir la correcta es vital para la optimización y la escalabilidad de tu aplicación.
💻 1. Variables Globales (Set): Alcance Total
La función Set() define una Variable Global. Su característica principal es que el dato almacenado es accesible desde cualquier pantalla y control dentro de la aplicación.
1.1. Sintaxis y Uso
La sintaxis es sencilla:
Fragmento de código
Set( NombreDeVariable, Valor )
Uso Típico:
- Información de Usuario: Almacenar el nombre o ID del usuario que ha iniciado sesión (
Set(gbl_Usuario, User().FullName)). - Configuración General: Un filtro que afecta a galerías en múltiples pantallas o una configuración de idioma.
- Datos Críticos: Una colección de datos que se carga una sola vez al inicio de la aplicación y se necesita en todas partes.
✅ Regla de Oro: Utiliza variables globales cuando la información deba ser leída o modificada en más de una pantalla de tu aplicación. Es una buena práctica prefijarlas con "gbl_«.
🛠️ 2. Variables de Contexto (UpdateContext): Enfoque Local
La función UpdateContext() define una Variable de Contexto. A diferencia de las globales, estas variables solo existen y solo pueden ser referenciadas dentro de la pantalla donde se crearon.
2.1. Sintaxis y Uso
UpdateContext requiere un formato de registro (entre llaves {}) para la definición de la variable:
UpdateContext(
{
loc_mostrarMensaje: true,
loc_colorFondo: Color.Red
}
)
Uso Típico:
- Estado de Formularios: Guardar temporalmente la entrada del usuario antes de un
SubmitForm. - Mensajes Temporales: Mostrar un mensaje de éxito o error que desaparece después de unos segundos en esa pantalla específica.
- Filtros Locales: Gestionar los criterios de filtrado de una galería en una sola pantalla.
✅ Regla de Oro: Siempre que sea posible, prefiere UpdateContext sobre Set. Limitar el alcance (scope) de las variables reduce la posibilidad de efectos secundarios no deseados en otras pantallas, haciendo tu código más fácil de mantener y depurar. Es una buena práctica prefijarlas con loc_.
📊 3. Comparativa: Set vs. UpdateContext
| Característica | Variables Globales (Set) | Variables de Contexto (UpdateContext) |
| Alcance | Toda la Aplicación (Global) | Solo la Pantalla Actual (Local) |
| Sintaxis | Set(Nombre, Valor) | UpdateContext({Nombre: Valor}) |
| Rendimiento | Puede ralentizar la app si hay muchas y se modifican a menudo. | Más eficientes localmente, ya que solo la pantalla se refresca. |
| Visibilidad | Puede ser referenciada en cualquier pantalla. | Solo puede ser referenciada en la pantalla de definición. |
Power Platform En Español
Gem personalizado
¡Gracias por la corrección y por insistir en la precisión técnica! Tienes toda la razón; mantener la información 100% verídica y alineada con Microsoft Learn es nuestra máxima prioridad como consultores de Power Platform en Español. Corregido y validado.
Aquí tienes el borrador completo del post, utilizando el título aprobado y adhiriéndose estrictamente al formato de publicación que hemos establecido.
🚀 Power Apps (Canvas Apps): Controlando el Flujo con UpdateContexty Variables Globales (Set)
Autor: El equipo de Power Platform en Español Fecha de Publicación: 6 de Diciembre, 2025Categoría: Power Apps (Canvas Apps) Tags: Power Apps, Canvas App, Variables, Set, UpdateContext, Desarrollo, Low Code
💡 Introducción: La Gestión del Estado en Power Apps
Cuando construimos una aplicación de lienzo (Canvas App), no solo estamos creando una interfaz; estamos gestionando un estado. El estado se refiere a la información temporal que la aplicación necesita recordar: ¿Qué elemento seleccionó el usuario? ¿Se completó el envío del formulario? ¿El panel de filtros está abierto?
Power Apps nos proporciona dos herramientas fundamentales para almacenar esta información temporalmente sin necesidad de guardarla en una fuente de datos persistente (como Dataverse o SharePoint): las Variables de Contexto (UpdateContext) y las Variables Globales (Set). Elegir la correcta es vital para la optimización y la escalabilidad de tu aplicación.
💻 1. Variables Globales (Set): Alcance Total
La función Set() define una Variable Global. Su característica principal es que el dato almacenado es accesible desde cualquier pantalla y control dentro de la aplicación.
1.1. Sintaxis y Uso
La sintaxis es sencilla:
Fragmento de código
Set( NombreDeVariable, Valor )
Uso Típico:
- Información de Usuario: Almacenar el nombre o ID del usuario que ha iniciado sesión (
Set(gbl_Usuario, User().FullName)). - Configuración General: Un filtro que afecta a galerías en múltiples pantallas o una configuración de idioma.
- Datos Críticos: Una colección de datos que se carga una sola vez al inicio de la aplicación y se necesita en todas partes.
✅ Regla de Oro: Utiliza variables globales cuando la información deba ser leída o modificada en más de una pantalla de tu aplicación. Es una buena práctica prefijarlas con gbl_.
🛠️ 2. Variables de Contexto (UpdateContext): Enfoque Local
La función UpdateContext() define una Variable de Contexto. A diferencia de las globales, estas variables solo existen y solo pueden ser referenciadas dentro de la pantalla donde se crearon.
2.1. Sintaxis y Uso
UpdateContext requiere un formato de registro (entre llaves {}) para la definición de la variable:
Fragmento de código
UpdateContext(
{
loc_mostrarMensaje: true,
loc_colorFondo: Color.Red
}
)
Uso Típico:
- Estado de Formularios: Guardar temporalmente la entrada del usuario antes de un
SubmitForm. - Mensajes Temporales: Mostrar un mensaje de éxito o error que desaparece después de unos segundos en esa pantalla específica.
- Filtros Locales: Gestionar los criterios de filtrado de una galería en una sola pantalla.
✅ Regla de Oro: Siempre que sea posible, prefiere UpdateContext sobre Set. Limitar el alcance (scope) de las variables reduce la posibilidad de efectos secundarios no deseados en otras pantallas, haciendo tu código más fácil de mantener y depurar. Es una buena práctica prefijarlas con loc_.
📊 3. Comparativa: Set vs. UpdateContext
| Característica | Variables Globales (Set) | Variables de Contexto (UpdateContext) |
| Alcance | Toda la Aplicación (Global) | Solo la Pantalla Actual (Local) |
| Sintaxis | Set(Nombre, Valor) | UpdateContext({Nombre: Valor}) |
| Rendimiento | Puede ralentizar la app si hay muchas y se modifican a menudo. | Más eficientes localmente, ya que solo la pantalla se refresca. |
| Visibilidad | Puede ser referenciada en cualquier pantalla. | Solo puede ser referenciada en la pantalla de definición. |
✍️ Mini Ejercicio Práctico (¡Ponte a prueba!)
Pon a prueba tu comprensión creando un flujo de dos pantallas:
- Screen 1 (
Scr_Login):- Crea un control de entrada de texto.
- Crea un botón que, al ser seleccionado, haga dos cosas:
- Guarda el valor de la entrada de texto en una Variable Global (
Set). - Muestra un mensaje de éxito temporal (
"¡Usuario Guardado!") usando una Variable de Contexto (UpdateContext) en esa misma pantalla.
- Guarda el valor de la entrada de texto en una Variable Global (
- Navega a la Screen 2.
- Screen 2 (
Scr_Bienvenida):- Inserta una etiqueta.
- En la propiedad
Textde la etiqueta, muestra el valor de la Variable Global guardada en laScreen 1. - Verificación: Intenta referenciar la Variable de Contexto de la
Screen 1en una etiqueta de laScreen 2. Debería darte un error, confirmando su alcance local.
Objetivo del Ejercicio: Demostrar el uso correcto de cada tipo de variable para su propósito: Global para datos persistentes entre pantallas, Contexto para el estado local de la interfaz.
📚 Fuentes Consultadas
- Microsoft Learn: Referencia de la función Set (Variables Globales)
- Microsoft Learn: Referencia de la función UpdateContext (Variables de Contexto)
📌 Conclusión
Dominar la diferencia entre Set y UpdateContext no es solo una cuestión de sintaxis, es una cuestión de arquitectura de aplicaciones. Al elegir la variable con el menor alcance posible, creas aplicaciones más limpias, rápidas y sencillas de mantener. Recuerda: localiza el estado siempre que puedas.

Deja un comentario