Compartir a través de


Conéctese a Azure Blob Storage desde Power Apps

Las Power Apps pueden conectarse a Azure Blob Storage. Puede cargar archivos como Word, Excel o imágenes multimedia, audio o vídeo usando el Conector de Azure Blob Storage para Power Apps.

Cuando diseña una aplicación de lienzo que se conecta a Azure Blob Storage, la aplicación usa el nombre y la clave de la cuenta de Blob Storage para conectarse. Después de compartir la aplicación con otros, los usuarios pueden usar la conexión configurada dentro de la aplicación para cargar archivos en Azure Blob Storage sin necesidad de compartir el nombre y las claves de Blob Storage con los usuarios de la aplicación.

En este artículo, aprenderá a crear una aplicación de lienzo de ejemplo que se conecte a Azure Blob Storage y a agregar controles a la aplicación que le permitan cargar diferentes tipos de archivos en el almacenamiento de blobs conectado.

Nota

Para obtener más información sobre otros tipos de opciones de almacenamiento en la nube con Power Apps (como OneDrive, OneDrive para la Empresa, Google Drive, Dropbox o Box), vaya a Conectar al almacenamiento en la nube desde Power Apps.

Requisitos previos

Antes de comenzar, cree y configure una cuenta de BlockBlobStorage. También puede usar una cuenta BlobStorage heredada, aunque no se recomienda. Más información: Tipos de cuentas de almacenamiento en Azure Blob Storage

Crear una conexión de Azure Blob Storage

Power Apps requiere que se cree una conexión a Azure Blob Storage para que la aplicación se conecte al almacenamiento.

Para crear la conexión de Azure Blob Storage:

  1. Inicie sesión en Power Apps.

  2. En el panel izquierdo, expanda Datos.

  3. Seleccione Conexiones.

  4. Seleccione Nueva conexión.

  5. Seleccione Azure Blob Storage.

    Nueva conexión de Azure Blob Storage.

  6. Copie y pegue el nombre y la clave de acceso de la cuenta.

    Ingrese el nombre y las claves de acceso de la cuenta de almacenamiento.

    Para obtener más información sobre cómo copiar el nombre y la clave de acceso de la cuenta, vaya a Ver claves de acceso a la cuenta en Azure.

  7. Seleccione Crear.

Su conexión a Azure Blob Storage ahora está configurada y lista para usar con aplicaciones de lienzo.

Crear una aplicación de lienzo con la conexión de Azure Blob Storage

Ahora que ha creado la conexión con Azure Blob Storage, creemos una aplicación de lienzo que se conecte a este almacenamiento.

Nota

En esta sección, creará una aplicación de ejemplo con controles, funcionalidad y diseño de ejemplo. Dependiendo de los requisitos de su negocio, puede crear la aplicación con una estructura diferente o personalizarla de manera diferente.

  1. Cree una aplicación de lienzo en blanco con el nombre "Aplicación de ejemplo para Azure Blob Storage" y diseño de Teléfono.

  2. En Power Apps Studio, en el panel izquierdo, seleccione Datos.

  3. Seleccione Agregar datos.

  4. De la lista de conectores, seleccione Azure Blob Storage.

    Seleccione conexión de Azure Blob Storage.

Ver contenedores y archivos

Ahora que tiene la aplicación conectada a Azure Blob Storage, agreguemos galerías para ver contenedores y archivos en los contenedores desde el almacenamiento conectado.

  1. Seleccione Insertar -> Galería -> Vertical en blanco.

  2. En el lado derecho de la pantalla, en el panel de propiedades, seleccione el menú desplegable de diseño y elija Título.

    Seleccionar diseño de galería para contenedores.

  3. Seleccione primero Icono de flecha. dentro de la galería y elimínelo.

    Eliminar icono de flecha.

  4. En el lado derecho de la pantalla, en el panel de propiedades, seleccione el menú desplegable del origen de datos y elija Azure Blob Storage.

    Origen de datos para la galería de contenedores.

  5. Establezca la propiedad Elementos de la galería como:

    AzureBlobStorage.ListRootFolderV2().value
    

    Lista de contenedores.

    Esta operación enumera los blobs de la carpeta raíz de Azure Blob Storage. Más información: Lista de blobs de la carpeta raíz

  6. Seleccione Insertar -> Galería -> Vertical en blanco para agregar otra galería vertical en blanco.

  7. Mueva la galería debajo de la galería que agregó anteriormente y que muestra la lista de contenedores.

  8. En el lado derecho de la pantalla, en el panel de propiedades, seleccione el menú desplegable de diseño y elija Título, subtítulo y cuerpo.

  9. Seleccione primero Icono de flecha. dentro de la galería y elimínelo.

  10. En el lado derecho de la pantalla, en el panel de propiedades, seleccione el menú desplegable del origen de datos y elija Azure Blob Storage.

  11. Establezca la propiedad Elementos de la galería como:

    AzureBlobStorage.ListFolderV2(Gallery1.Selected.Id).value
    

    Esta operación enumera los blobs en un contenedor. Más información: Lista de blobs

    Nota

    Galería1 en esta fórmula es la referencia a la galería agregada anteriormente que enumera todos los contenedores en la cuenta de almacenamiento. Actualice la fórmula con el nombre de la galería si es diferente.

  12. En el lado derecho de la pantalla, en el panel de propiedades, seleccione Editar para Campos.

  13. Cambie los campos seleccionados para el título de la galería como Nombre para mostrar, subtítulo como Última modificación y cuerpo como Ruta.

    Seleccionar campos.

    La galería ahora muestra la lista de archivos del contenedor seleccionado usando la galería en la parte superior.

    Lista de archivos de un contenedor.

  14. Seleccione Insertar -> Etiqueta de texto.

  15. Coloque la etiqueta en la parte superior de la pantalla de la aplicación.

  16. Establezca la propiedad Texto de la etiqueta como "Seleccionar un contenedor".

  17. Utilice el panel de propiedades en el lado derecho de la pantalla y elija el color del texto de la etiqueta, el tamaño y el color de fondo del texto de la etiqueta de su elección.

  18. Seleccione Insertar -> Etiqueta de texto.

  19. Coloque la etiqueta encima de la galería con la lista de archivos.

  20. Establezca la propiedad Texto de la etiqueta como "Lista de archivos".

    Lista de archivos con etiquetas agregadas.

Cargar archivos en Azure Blob Storage

Con el diseño de la aplicación hasta ahora, puede seleccionar un contenedor y luego enumerar los archivos del contenedor.

Configuremos la aplicación con controles y lógica para permitir la carga de archivos en el Azure Blob Storage conectado.

  1. Seleccione Insertar -> Medios -> Agregar imagen para agregar la capacidad de seleccionar archivos para cargar.

  2. Cambie el tamaño del control Agregar imagen y colóquelo en la parte inferior izquierda de la pantalla de la aplicación.

  3. Establezca la propiedad Texto del control como "Seleccionar un archivo para cargar".

  4. Seleccione Insertar -> Botón.

  5. Coloque el botón en la parte inferior derecha de la pantalla de la aplicación.

  6. Establezca la propiedad Texto del botón como "Cargar".

  7. Seleccione Insertar -> Entrada de texto.

  8. Coloque el control de entrada de texto encima del botón Cargar.

  9. Establezca la propiedad Predeterminado del botón como "Introducir nombre de archivo".

  10. Establezca la propiedad OnSelect del botón como:

    AzureBlobStorage.CreateFile(Gallery1.Selected.Name,TextInput1.Text, UploadedImage1.Image)
    

    Esta operación carga un blob en Azure Blob Storage. Más información: Crear blob

    Nota

    Galería1 en esta fórmula es la referencia a la galería agregada anteriormente que enumera todos los contenedores en la cuenta de almacenamiento. El archivo se cargará en el contenedor seleccionado en la galería 1. TextInput1 y uploadImage1 hacen referencia a los controles de entrada de texto y cargar imagen. Actualice la fórmula con los nombres de los controles si son diferentes.

    Los controles de la aplicación se ven ahora así en la aplicación de ejemplo.

    Cargar el archivo en el almacenamiento conectado.

    Sugerencia

    Asegúrese de seleccionar Todos los archivos al usar la opción de carga para asegurarse de que todos los tipos de archivos estén visibles en el cuadro de diálogo del explorador de archivos.

Descargar archivos desde Azure Blob Storage

Hasta ahora, ha agregado la capacidad de ver contenedores, archivos del contenedor seleccionado y la opción de cargar archivos en el almacenamiento. Ahora vamos a ver cómo trabajar con la capacidad de descarga con el almacenamiento conectado.

  1. Seleccione la primera fila de la galería con la lista de archivos de un contenedor.

    Seleccione la primera fila de la galería de la lista de archivos.

  2. Seleccione Insertar -> Iconos -> Descargar. Esto agrega el icono de descarga para todas las filas de la galería.

  3. Mueva el primer icono de descarga hacia el lado derecho dentro de la galería en la pantalla de la aplicación. Esto también mueve el resto de los íconos para las siguientes filas en la galería.

    Mueva la primera fila de la galería de la lista de archivos.

  4. Establezca la propiedad OnSelect del botón de descarga como:

    Launch(AzureBlobStorage.CreateShareLinkByPath(ThisItem.Path).WebUrl)
    

    Esta operación crea un vínculo SAS para un blob usando la ruta de acceso. Más información: Crear URI de SAS por ruta

    Importante

    El URI de SAS creado usando CreateShareLinkByPath tiene un vencimiento predeterminado de 24 horas. Si tiene un requisito empresarial para que caduque el URI en un tiempo más corto o diferente, considere la posibilidad de actualizar esta fórmula. Por ejemplo, el ejemplo siguiente caduca el URI en 1 hora usando las funciones Now() y DateAdd().

    Launch(AzureBlobStorage.CreateShareLinkByPath(ThisItem.Path,{ExpiryTime:DateAdd( Now(),1)}).WebUrl)
    

    Sugerencia

    Para obtener más información sobre cómo configurar Azure Blob Storage para acceso público anónimo y diferentes niveles de acceso público, vaya a Configurar acceso de lectura público anónimo para contenedores y blobs.

La aplicación ahora tiene la capacidad de permitirle descargar los archivos.

Pruebe, guarde, publique y comparta la aplicación

Reproduzca la aplicación para probarla y verifique que funcione como se esperaba. Después de la prueba, asegúrese de guardar y publicar la aplicación antes de cerrar Power Apps Studio. Y luego puede compartir la aplicación con otros de su organización o con invitados de fuera de su organización.

Personalizaciones opcionales

En esta sección conocerá las personalizaciones opcionales y adicionales que puede considerar para su aplicación.

Tipo de elemento multimedia

Puede usar los campos Tipo de medio o Ruta de la galería para mostrar opcionalmente el contenido de la imagen en los controles respectivos. Por ejemplo, Visor de PDF para archivos PDF, Imagen para imágenes, o Audio/vídeo para archivos de audio/vídeo.

Por ejemplo, para filtrar los archivos con el tipo de extensión de archivo de .pdf, utilice la siguiente fórmula de ejemplo.

If(".pdf" in Gallery2.Selected.Path, AzureBlobStorage.GetFileContent(Gallery2.Selected.Id))

De manera similar, puede usar diferentes tipos de extensión de archivo o tipos de medios para personalizar adicionalmente los controles agregados.

Actualizar galerías conectadas a Azure Blob Storage

La conexión de Azure Blob Storage no actualiza los datos de las galerías automáticamente cuando se actualizan los datos. Si tiene más de un contenedor, puede seleccionar el otro contenedor y luego volver a seleccionar el contenedor previamente seleccionado para actualizar la galería conectada y mostrar los cambios.

Otro método que se puede considerar es usar una colección para la primera galería y luego usar la función ClearCollect para actualizar la colección.

Por ejemplo, las siguientes fórmulas le permiten actualizar la colección para la lista de contenedores principales en la primera galería y actualizar la segunda galería cuando se selecciona el botón de carga o cuando aparece la pantalla (propiedad de pantalla OnVisible).

  1. Seleccione la propiedad Elementos de la primera galería para la lista de contenedores como "TopLevelList".

  2. Anéxela a la propiedad OnSelect del botón de carga:

    ClearCollect(TopLevelList, AzureBlobStorage.ListRootFolderV2().value)
    
  3. Agréguela a la propiedad OnVisible de la pantalla:

    ClearCollect(TopLevelList, AzureBlobStorage.ListRootFolderV2().value)
    

Limitaciones

No puede usar Microsoft Excel como origen de datos cuando el archivo se almacena en Azure Blob Storage. Para usar Excel como origen de datos, use los otros conectores de almacenamiento en la nube (como OneDrive, OneDrive para la Empresa, Google Drive, Dropbox o Box). Más información: Conéctese al almacenamiento en la nube desde Power Apps

Pasos siguientes

Diseñar la interfaz de la aplicación

Consultar también

Conectar al almacenamiento desde Power Apps