Función Set

Se aplica a: Aplicaciones de lienzo Tarjetas Complementos con poco código de Dataverse Power Platform CLI

Establece el valor de una variable global.

Introducción

La función Set se usa para establecer el valor de una variable global, que guarda temporalmente un fragmento de información, como el número de veces que el usuario ha seleccionado un botón o el resultado de una operación de datos.

Las variables globales están disponibles en todas las pantallas de la aplicación. Son las variables más simples y se pueden usar en la mayor parte de las situaciones. También hay variables de contexto cuyo ámbito es una sola pantalla y colecciones que permiten modificar tablas a nivel de fila. Para obtener más información sobre estas otras opciones, consulte Conocer las variables.

Power Apps se basa en fórmulas que se recalculan automáticamente a medida que el usuario interactúa con una aplicación. Cualquier fórmula que dependa de una variable se actualizará automáticamente cuando cambie. Sin embargo, la variable no se actualizará automáticamente si el valor de la fórmula utilizada en la función Set cambia. Esto requiere que el creador de la aplicación actualice manualmente la variable, que puede ser propensa a errores y más difícil de entender para otros. Antes de utilizar una variable, consulte Conocer las variables.

Descripción

Las variables globales se crean implícitamente mediante la función Set. No es necesaria ninguna declaración explícita. Si quita todas las funciones Set de una variable global, esta dejará de existir. Para borrar una variable, establezca su valor en el resultado de la función Blank.

Puede ver los valores de las variables, las definiciones y los usos con la vista Variables del menú Archivo en Power Apps Studio.

Tal como mostrarán los ejemplos de este mismo tema, las variables de contexto pueden contener distintos tipos de información, entre los que se incluyen:

  • un valor único
  • un registro
  • una tabla
  • una referencia de objeto
  • el resultado de una fórmula

Una variable global guarda su valor hasta que se cierra la aplicación. Una vez que se cierre, el valor de la variable global se perderá y deberá volver a crearlo al cargar la aplicación de nuevo.

Las variables globales no pueden usar el mismo nombre que una colección o un control existentes. Sin embargo, pueden usar el mismo nombre que una variable de contexto. Para eliminar la ambigüedad entre ambas, use el operador de desambiguación.

Set no devuelve ningún valor y solo se puede usar en una fórmula de comportamiento.

Sintaxis

Set( VariableName, Value )

  • VariableName (obligatorio). Nombre de la variable global que se va a crear o actualizar.
  • Value (obligatorio). El valor que se asigna a la variable de contexto.

Ejemplos

Fórmula Descripción Resultado
Set( Counter, 1 ) Crea o modifica la variable global Counter y establece su valor en 1. Counter tiene el valor 1. Para hacer referencia a dicha variable, utilice el nombre Counter en una fórmula en cualquier pantalla.
Set( Counter, 2 ) Establece el valor de la variable global Counter del ejemplo anterior en 2. Counter tiene el valor 2.
Set( Counter, Counter + 1 ) Aumenta el valor de la variable global Counter del ejemplo anterior en 3. Counter tiene el valor 3.
Set( Name, "Lily" ) Crea o modifica la variable global Name y establece su valor en Lily. Name tiene el valor Lily.
Set( Person, { Name: "Milton", Address: "1 Main St" } ) Crea o modifica la variable global Person y establece su valor en un registro. El registro contiene dos columnas, llamadas Name y Address. El valor de la columna Name es Milton, y el valor de la columna Address es 1 Main St. Person tiene el valor del registro { Name: "Milton", Address: "1 Main St" }.

Haga referencia a este registro como un todo con el nombre Person, o haga referencia a una columna individual de este registro con Person.Name o Person.Address.
Set( Person, Patch( Person, {Address: "2 Main St" } ) ) Trabaja con la función Patch para actualizar la variable global Person y establece el valor de la columna Address en 2 Main St. Person ahora tiene el valor del registro { Name: "Milton", Address: "2 Main St" }.