Introducción

Completado

Un requisito habitual para el almacenamiento de datos de aplicaciones empresariales es tener una columna de datos que tenga una lista de valores estandarizada y que cambie con poca frecuencia de cara a garantizar mejor la coherencia de los datos. Los usuarios que introducen datos elegirían una opción de una lista, en lugar de escribir un valor libre. Entre los ejemplos de estas opciones se incluyen una lista de países o regiones, la prioridad de incidentes, el índice de satisfacción, etc.

Microsoft Dataverse tiene un tipo de columna que admite este concepto, la columna Elección. Las columnas de elección permiten a un usuario elegir valores de una lista. De manera predeterminada, elegirá una sola opción, pero se pueden configurar fácilmente para permitir varios valores de una sola lista de valores conocidos. Por ejemplo, Categoría principal podría ser una sola columna de elección y Otras categorías podría configurarse para varias selecciones, y ambas podrían utilizar la misma lista de categorías.

El sistema, o un personalizador, define la lista de valores para una columna de elección y almacena los valores como metadatos de columna de tabla. A diferencia de los datos de la aplicación, solo un creador de aplicaciones puede modificarlos, no un usuario de la aplicación. Una ventaja de esta característica es que cuando está creando una aplicación que funciona con una lista de valores, las fórmulas pueden utilizar el nombre de la lista de opciones. Sus fórmulas también pueden usar el nombre para mostrar de los valores de la fórmula. Por ejemplo, la siguiente fórmula establece un color en la propiedad de relleno de un artículo en función de la columna Categoría, que es una columna de opción.

Captura de pantalla de la siguiente fórmula de Power Fx: Switch( ThisItem.Category, 'Category (Accounts)'.'Preferred Customer', Green, 'Category (Accounts)'.'Standard', Black. )

A medida que redacte esta fórmula, Power Apps conocerá los posibles valores de la columna Categoría y le permitirá seleccionar el valor de comparación de la lista de valores conocidos de la columna de opción.

Nota

Si agrega o cambia valores en una lista de opciones y el elemento modificado aún no se muestra en el editor, actualice la tabla en el panel de datos seleccionando los puntos suspensivos (...) junto a la tabla y eligiendo Actualizar en el menú emergente.

Captura de pantalla de un elemento de menú Actualizar en un menú emergente para una tabla de Dataverse. El menú se invoca seleccionando los puntos suspensivos junto a la tabla

Local frente a global

Puede crear una lista de valores de elección disponibles como lista local o global. Los valores de la lista Opción local se utilizan solo para la columna en la que están definidos y solo se pueden utilizar en esa tabla. Opción global permite que la lista se utilice para varias columnas en la misma tabla o en muchas tablas diferentes. Cuando crea una nueva columna Elección, el valor predeterminado de la opción ¿Sincronizar con opción global? es (opción recomendada). Opción global permite el uso de las mismas opciones en otras tablas. A menos que esté seguro de que los valores solo se aplican a esa única columna en esa única tabla, le recomendamos que utilice valores de opción global.

Captura de pantalla de las propiedades de la columna de opción en la interfaz del creador, en la que se resaltan las posibilidades de Opción global y Opción local

Cuando seleccione , observe cómo Sincronizar esta opción con se convierte en un campo obligatorio y debe hacer una selección para las opciones. Cuando seleccione este campo, aparecerá un panel que muestra las diversas opciones disponibles junto al nuevo panel de columnas. Puede escribir el tipo de opción que está buscando o desplazarse por la lista para seleccionar uno. Además, tenga en cuenta que cuando pasa el cursor sobre cualquiera de los conjuntos de opciones, obtendrá una vista previa de las opciones que ya forman parte de ese conjunto de opciones.

Captura de pantalla del campo de entrada para Sincronizar esta opción con y el panel emergente con los valores de opción que se muestran al pasar el mouse sobre él

También es posible crear un nuevo conjunto de opciones seleccionando + Nueva opción e introduciendo información sobre sus opciones.

Tenga en cuenta que también puede asignar una Opción predeterminada para la columna a medida que la crea; sin embargo, una vez que haya guardado la columna, no podrá agregar una opción predeterminada.

Si determina que desea mantener sus opciones como un conjunto de opciones local, seleccione No en ¿Sincronizar con opción global?. En este caso, defina sus opciones justo debajo del botón No. (Se requiere al menos uno.) Solo tendrá que agregar una Etiqueta para la opción; Power Apps asignará automáticamente un valor entero para ese elemento, que puede cambiar a su gusto. También puede seleccionar un color para cada opción seleccionando el cuadro justo a la izquierda del nombre de Etiqueta que ha introducido. En la ventana emergente Seleccionar color, puede codificar el valor del color de manera rígida a través de los campos de entrada Hex o los valores R-G-B. Alternativamente, puede ajustar la barra deslizante de color y ajustar con precisión lo que hay en el control deslizante de color utilizando el cuadro sobre el control deslizante.

Captura de pantalla que muestra los valores completados para la etiqueta del campo de elección y las propiedades de valor. También el campo de opciones de color con las opciones de entrada de color resaltadas

Puede agregar más opciones seleccionando el botón + Nueva opción y repitiendo el proceso.

Valores de columna mostrados

Cuando los datos de una opción se almacenan en una fila de Dataverse, solo se guarda el valor numérico, no el texto. En varias opciones, se guarda una lista de valores numéricos separados por comas que representa las selecciones múltiples.

La forma en que muestre los valores en un control, como una etiqueta, será diferente para valores de una y de varias opciones. Los campos de opción se pueden usar para establecer el valor de una etiqueta y mostrar el valor del texto de la lista. Por ejemplo, si tuviera un campo de opción Categoría para la categoría de cliente, puede mostrar ese campo en una etiqueta en una galería utilizando la siguiente fórmula.

Captura de pantalla de la fórmula de Power Fx: ThisItem.Category

En el caso de varias columnas de opciones, la propiedad del registro es de tipo Table. Es una tabla de una sola columna con una columna de valor y cada fila representa un valor seleccionado. Para mostrar una lista de valores de texto separados por comas y fáciles de usar se requiere un procesamiento previo. Por ejemplo, si tuviera una columna Entrega preferida que permitiese a los usuarios elegir uno o más días de la semana para la entrega, utilizaría la siguiente fórmula para establecer la propiedad Text en una etiqueta.

Captura de pantalla de la fórmula de Power Fx: Concat(ThisItem.'Preferred Delivery',Text(Value),

Esta fórmula daría como resultado la siguiente visualización de la lista de valores seleccionados.

Captura de una pantalla en la que se muestra la entrega preferida el lunes y martes, resultado de la fórmula de Power Fx

Opción frente a búsqueda

Una decisión habitual en el modelado de datos es elegir entre una columna de opción y una columna de búsqueda o entre varias opciones y una relación de varios a varios. No hay una respuesta correcta o incorrecta. Sin embargo, su decisión afecta a la forma en que administra la lista de valores y las fórmulas que puede aplicar. Tenga en cuenta las diferencias que se resumen en la siguiente tabla.

Opción Relación de varios a varios o de búsqueda
Lista modificada por el creador, sin edición por parte del usuario. La lista incluye solo datos de tabla y se aplica la seguridad normal.
Datos almacenados como un número entero o una lista de números separados por comas (cuando hay varios). Datos almacenados como referencia de tabla.
No hay una forma incorporada de inactivar o retirar opciones. Admite el estado inactivo en la fila y se puede filtrar por fórmulas en la aplicación para limitar la selección.
Se trata como un componente de la solución completamente compatible con ALM. Se trata como datos de referencia.
Solo tiene etiqueta, valor y color, y solo la etiqueta se puede usar en fórmulas. (Por ejemplo, filtrar y clasificar solo por la etiqueta de visualización). Puede agregar otros datos a una tabla de destino de búsqueda que se pueden usar en fórmulas. (Por ejemplo, filtrar y ordenar por cualquier columna que se agregue a la tabla).
Localización integrada. Gestione la localización usted mismo.
Sin compatibilidad integrada de columnas de opción dependientes. Es más fácil modelar datos e implementar columnas dependientes. (Consulte Crear una lista desplegable dependiente en una aplicación de lienzo.)

Una vez que haya creado la columna, no podrá cambiar el tipo de datos. Por tanto, antes de crear la columna, piense en cómo las aplicaciones y la automatización usarán los datos.

En el resto de este módulo se explora cómo utilizar las columnas de opción al crear una aplicación de lienzo desde Microsoft Power Apps.