Otros conceptos de variables

Completado

Ahora que ya tiene nociones de la lógica de Power Apps y los tipos de variables, existen unos cuantos conceptos más que conviene ampliar y que le ayudarán a integrar variables en la aplicación.

Las variables pueden hacerse referencia a sí mismas

Este concepto es válido tanto en las variables globales como en las de contexto. A veces, necesitamos que una variable apunte a sí misma. Esto sucede a menudo cuando se quiere disponer de una variable de tipo contador que aumente un valor o cuando se anexa una cadena. Con Power Apps, esto es fácil de implementar. Coloque la siguiente fórmula en la propiedad OnSelect de un botón para configurar un contador.

Set(varCounter, varCounter + 1)

Junto al botón, ponga una Etiqueta y, en la propiedad Texto, escriba varCounter. La primera vez que seleccione el botón, el valor será 1. Si selecciona el botón otra vez, el valor será 2. Use la siguiente tabla para ver la traducción de los literales.

Animación de la funcionalidad varCounter.

Valor de varCounter antes de presionar el botón Presionar botón Fórmula Valores Valor de varCounter después de presionar el botón
0 Primera Set(varCounter, varCounter + 1) Set(varCounter, 0 + 1) 1
1 Segunda Set(varCounter, varCounter + 1) Set(varCounter, 1 + 1) 2
2 Tercera Set(varCounter, varCounter + 1) Set(varCounter, 2 + 1) 3

Cuando la aplicación se inicia por primera vez, el valor de varCounter es 0 y va subiendo en incrementos de 1 cada vez que se selecciona el botón. Es importante recordar que el valor predeterminado de una variable variará en función del tipo de variable si no establece la propiedad predeterminada.

  • Las variables de texto son ""

  • Las variables de número son 0

  • Las variables booleanas son false

Una variable puede almacenar un único registro

Este concepto es válido en las variables globales y en las de contexto. Las colecciones son ligeramente distintas, porque son una tabla compuesta de uno o más registros; dicho de otro modo, almacenar y recuperar un registro es diferente en el caso de una colección.

En las unidades anteriores, ha aprendido a almacenar un valor único en una variable global o de contexto. También se puede almacenar un registro en la variable. Al hacerlo, se puede hacer referencia a los diferentes campos o columnas usando la notación de puntos (.).

En este ejemplo, almacenaremos el registro de usuario completo en una variable global denominada varUser. Para ello, utilice la siguiente función.

Set(varUser, User())

Esto hará que el registro de usuario completo se almacene en la variable. El registro de usuario tiene tres columnas: Email, FullName e Image. Para recuperar los valores de cada columna individual, puede usar la notación de puntos (.). Para mostrar la dirección de correo electrónico del usuario, agregue un control Etiqueta a la pantalla y establezca la propiedad de texto en:

varUser.Email

En este ejemplo se almacena el registro relativo a un origen de datos basado en acciones. También podría usarse la función LookUp como una manera de recuperar y almacenar un registro de un origen de datos tabular (como Microsoft Dataverse) en una variable.

Las variables no se actualizan automáticamente

Un factor que suele provocar confusión a quienes no están familiarizados con las variables es que las variables no se actualizan automáticamente. Por ejemplo, supongamos que usamos una variable para almacenar el número de facturas de cliente usando la propiedad OnStart de la aplicación. Luego, el usuario crea una factura nueva en la aplicación. La variable no distingue el número de facturas que han cambiado en el sistema. La variable solo se actualizará cuando:

  • El usuario cierre la aplicación y vuelva a abrirla. Esto hace que OnStart realice la operación para calcular el número de facturas.

  • Implemente la funcionalidad para actualizar la variable después de que el usuario haya creado una factura.

Tenga en cuenta esta posible confusión si no está familiarizado con el uso de variables para realizar un seguimiento de los datos.