Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En el caso de las aplicaciones de lienzo en Power Apps, comprenda cómo cada control significativo de la plantilla de pantalla de personas contribuye a la funcionalidad general predeterminada de la pantalla. Esta inmersión profunda presenta las fórmulas de comportamiento y los valores de otras propiedades que determinan cómo responden los controles a la entrada del usuario. Para una discusión de alto nivel de la funcionalidad predeterminada de esta pantalla, consulte el resumen de la pantalla de personas.
Este tema resalta algunos controles significativos y explica las expresiones o fórmulas a las que se aplican varias propiedades (como Items y OnSelect) de estos controles:
- Cuadro de búsqueda de texto
- Galería para buscar usuarios (+ controles secundarios)
- Galería de personas agregadas (+ controles secundarios)
Requisito previo
Familiaridad con cómo agregar y configurar pantallas y otros controles a medida que crea una aplicación en Power Apps.
Cuadro de búsqueda de texto
Varios otros controles interactúan o dependen del cuadro de búsqueda de texto:
- Si un usuario comienza a escribir algún texto, UserBrowseGallery se hace visible.
- Cuando un usuario selecciona a una persona dentro de UserBrowseGallery, los contenidos de búsqueda se restablecen.
Galería de explorar usuarios
Propiedad: Items
Valor: lógica para buscar usuarios cuando el usuario comienza a escribir:If( !IsBlank( Trim( TextSearchBox.Text ) ), 'Office365Users'.SearchUser( { searchTerm: Trim( TextSearchBox.Text ), top: 15 } ) )
Los elementos de esta galería se rellenan con los resultados de búsqueda de la operaciónOffice365.SearchUser. La operación toma el texto en Trim(TextSearchBox)
como término de búsqueda y devuelve los 15 resultados principales según esa búsqueda. TextSearchBox está encapsulado en una función Trim()
porque la búsqueda de un usuario en espacios no es válida.
La operación Office365Users.SearchUser
está envuelta en una función If(!IsBlank(Trim(TextSearchBox.Text)) ... )
, porque solo necesita invocar la operación si el cuadro de búsqueda contiene texto introducido por el usuario. Esto mejora el rendimiento.
Control UserBrowseGallery Title
Propiedad: Text
Valor:ThisItem.DisplayName
Muestra el nombre para mostrar de la persona de su perfil Office 365.
Propiedad: OnSelect
Valor: código para agregar al usuario a una colección de nivel de aplicación y luego seleccionar el usuario:Concurrent( Set( _selectedUser, ThisItem ), Reset( TextSearchBox ), If( Not( ThisItem.UserPrincipalName in MyPeople.UserPrincipalName ), Collect( MyPeople, ThisItem ) ) )
La selección de este control hace tres cosas simultáneamente:
- Establece la variable __selectedUser al elemento seleccionado.
- Restablece el término de búsqueda en TextSearchBox.
- Agrega el elemento seleccionado a la colección MyPeople, una colección de todas las personas que el usuario de la aplicación ha seleccionado.
Control UserBrowseGallery ProfileImage
Propiedad: Imagen
Valor: lógica para recuperar la foto de perfil de un usuario.If( !IsBlank( ThisItem.Id ) && 'Office365Users'.UserPhotoMetadata( ThisItem.Id ).HasPhoto, 'Office365Users'.UserPhoto( ThisItem.Id ) )
El control Imagen recupera la imagen del usuario con la operación Office365Users.UserPhoto. Sin embargo, antes de hacerlo, verifica dos cosas:
- Si el campo Id. está vacío o no vacío. Esto evita que el control Imagen intente recuperar una foto de usuario antes de que la galería se haya llenado con resultados de búsqueda.
- Si el usuario tiene una foto (con la operación Office365Users.UserPhotoMetadata). Esto evita que la búsqueda
Office365Users.UserPhoto
devuelva una excepción si el usuario no tiene una foto de perfil.
Tenga en cuenta que si no se recupera una imagen, el control Imagen está en blanco, y el control iconUser es visible en su lugar.
Galería de personas agregadas
- Propiedad: Items
Valor:MyPeople
Esta es la colección de personas inicializadas o agregadas seleccionando el control UserBrowseGallery Title.
Control PeopleAddedGallery Title
- Propiedad: OnSelect
Valor:Set( _selectedUser, ThisItem )
Establece la variable _selectedUser en el elemento seleccionado en EmailPeopleGallery.
Control PeopleAddedGallery iconRemove
- Propiedad: OnSelect
Valor:Remove( MyPeople, LookUp( MyPeople, UserPrincipalName = ThisItem.UserPrincipalName ) )
Busca el registro en la colección MyPeople, donde UserPrincipalName coincide con el UserPrincipalName del elemento seleccionado, y elimina ese registro de la colección.
Pasos siguientes
- Más información sobre la pantalla.
- Más información sobre el conector de Office 365 Outlook.
- Más información sobre el conector Office 365 Users.
Nota
¿Puede indicarnos sus preferencias de idioma de documentación? Realice una breve encuesta. (tenga en cuenta que esta encuesta está en inglés)
La encuesta durará unos siete minutos. No se recopilan datos personales (declaración de privacidad).