Partilhar via


Ligar ao Armazenamento de Blobs do Azure a partir do Power Apps

O Power Apps pode ligar ao Armazenamento de Blobs do Azure. Pode carregar ficheiros como Word, Excel ou imagens multimédia, áudio ou vídeo utilizando o conector do Armazenamento de Blobs do Azure para o Power Apps.

Quando concebe uma aplicação de tela que liga ao Armazenamento de Blobs do Azure, a aplicação utiliza o nome da conta de armazenamento de blobs e a chave para ligar. Depois de partilhar a aplicação com outros, os utilizadores podem utilizar a ligação configurada dentro da aplicação para carregar ficheiros para o Armazenamento de Blobs do Azure sem a necessidade de partilhar o nome e as chaves do armazenamento de blobs com os utilizadores da aplicação.

Neste artigo, irá aprender a criar uma aplicação de tela de exemplo que se liga ao Armazenamento de Blobs do Azure, e a adicionar controlos à aplicação que lhe permite carregar diferentes tipos de ficheiros para o armazenamento de blobs ligado.

Nota

Para saber mais sobre outros tipos de opções de armazenamento na nuvem com o Power Apps (como o OneDrive, OneDrive para Empresas, Google Drive, Dropbox ou Box), vá a Ligar ao armazenamento na nuvem a partir do Power Apps.

Pré-requisitos

Antes de começar, crie e configure uma conta BlockBlobStorage. Também pode utilizar a conta BlobStorage legada, embora não seja recomendado. Mais informações: Tipos de contas de armazenamento no Armazenamento de Blobs do Azure

Criar ligação ao Armazenamento de Blobs do Azure

O Power Apps requer uma ligação ao Armazenamento de Blobs do Azure para que a aplicação se ligue ao armazenamento.

Para criar a ligação ao Armazenamento de Blobs do Azure:

  1. Inicie sessão no Power Apps.

  2. No painel esquerdo, expanda Dados.

  3. Selecionar Ligações.

  4. Selecione Nova ligação.

  5. Selecione Armazenamento de Blobs do Azure.

    Nova ligação ao Armazenamento de Blobs do Azure.

  6. Copie e cole o nome da conta e a chave de acesso.

    Introduzir o nome da conta de armazenamento e as chaves de acesso.

    Para obter mais informações sobre como copiar o nome da conta e a chave de acesso, aceda a Ver chaves de acesso à conta no Azure.

  7. Selecione Criar.

A sua ligação ao Armazenamento de Blobs do Azure está agora configurada e pronta a ser utilizada com aplicações de tela.

Criar aplicação de tela com ligação ao Armazenamento de Blobs do Azure

Agora que tem a ligação ao Armazenamento de Blobs do Azure criada, vamos criar uma aplicação de tela que se liga a este armazenamento.

Nota

Nesta secção, irá criar uma aplicação de exemplo com controlos de exemplos, funcionalidade e design de esquema. Dependendo dos requisitos do seu negócio, pode criar a aplicação com uma estrutura diferente ou personalizar de forma diferente.

  1. Crie uma aplicação de tela em branco com o nome "Exemplo de Aplicação para o Armazenamento de Blobs do Azure" e o esquema Telefone.

  2. No Power Apps Studio, no painel do lado esquerdo, selecione Dados.

  3. Selecione Adicionar dados.

  4. Na lista de conectores, selecione Armazenamento de Blobs do Azure.

    Selecionar ligação ao Armazenamento de Blobs do Azure.

Ver contentores e ficheiros

Agora que tem a aplicação ligada ao Armazenamento de Blobs do Azure, adicionemos galerias para ver contentores e ficheiros dentro dos contentores a partir do armazenamento ligado.

  1. Selecione Inserir -> Galeria -> Vertical em branco.

  2. Do lado direito do ecrã, no painel de propriedade, selecione a lista pendente de esquemas e escolha Título.

    Selecionar o esquema da galeria para contentores.

  3. Selecione primeiro o ícone de seta. dentro da galeria, e elimine-o.

    Eliminar ícone de seta.

  4. Do lado direito do ecrã, no painel de propriedade, selecione a lista pendente de origens de dados e escolha Armazenamento de Blobs do Azure.

    Origem de dados para a galeria de contentores.

  5. Defina a propriedade Items da galeria como:

    AzureBlobStorage.ListRootFolderV2().value
    

    Lista de contentores.

    Esta operação lista os blobs na pasta raiz do Armazenamento de Blobs do Azure. Mais informações: Listar blobs na pasta raiz

  6. Selecione Inserir -> Galeria -> Vertical em branco para adicionar outra galeria vertical em branco.

  7. Mova a galeria para baixo da galeria que acrescentou anteriormente que mostra a lista de contentores.

  8. Do lado direito do ecrã, no painel de propriedade, selecione a lista pendente de esquemas e escolha Título, legenda e corpo.

  9. Selecione primeiro o ícone de seta. dentro da galeria, e elimine-o.

  10. Do lado direito do ecrã, no painel de propriedade, selecione a lista pendente de origens de dados e escolha Armazenamento de Blobs do Azure.

  11. Defina a propriedade Items da galeria como:

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

    Esta operação lista blobs num contentor. Mais informações: Lista de blobs

    Nota

    Galeria1 nesta fórmula é a referência à galeria adicionada anteriormente que lista todos os contentores na conta de armazenamento. Atualize a fórmula com o nome da galeria se diferente.

  12. Do lado direito do ecrã, no painel de propriedade, selecione Editar para Campos.

  13. Altere os campos selecionados para o título da galeria como DisplayName, legenda como LastModified e corpo como Path.

    Selecionar campos.

    A galeria mostra agora a lista de ficheiros do contentor selecionado utilizando a galeria no topo.

    Lista de ficheiros de um contentor.

  14. Selecione Inserir -> Etiqueta de texto.

  15. Coloque a etiqueta por cima do ecrã da aplicação.

  16. Defina a propriedade Texto da etiqueta como "Selecionar um contentor".

  17. Utilize o painel de propriedades no lado direito do ecrã e escolha a cor de texto, tamanho da etiqueta e a cor de fundo do texto da etiqueta da sua escolha.

  18. Selecione Inserir -> Etiqueta de texto.

  19. Coloque a etiqueta acima da galeria com a lista de ficheiros.

  20. Defina a propriedade Texto da etiqueta como "Lista de ficheiros".

    Lista de ficheiros com etiquetas adicionadas.

Carregue ficheiros para o Armazenamento de Blobs do Azure

Com o design da aplicação até agora, pode selecionar um contentor e, em seguida, listar os ficheiros do contentor.

Vamos configurar a aplicação com controlos e lógica para permitir o carregamento de ficheiros para o Armazenamento de Blobs do Azure ligado.

  1. Selecione Inserir -> Multimédia -> Adicionar imagem para adicionar a capacidade de selecionar ficheiros a carregar.

  2. Redimensione o controlo Adicionar imagem e coloque-o no canto inferior esquerdo do ecrã da aplicação.

  3. Defina a propriedade Texto do controlo para "Selecionar um ficheiro a carregar".

  4. Selecione Inserir -> Botão.

  5. Coloque o botão no lado inferior direito do ecrã da aplicação.

  6. Defina a propriedade Texto do botão para "Carregar".

  7. Selecione Inserir -> Entrada de texto.

  8. Coloque o controlo de entrada de texto acima do botão Carregar.

  9. Defina a propriedade Predefinido do botão para "Introduzir Nome do Ficheiro".

  10. Defina a propriedade OnSelect do botão para:

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

    Esta operação carrega um blob para o Armazenamento de Blobs do Azure. Mais informações: Criar blob

    Nota

    Galeria1 nesta fórmula é a referência à galeria adicionada anteriormente que lista todos os contentores na conta de armazenamento. O ficheiro será carregado para o contentor selecionado na galeria 1. TextInput1 e uploadImage1 fazem referência aos controlos de entrada de texto e de carregar imagem. Atualize a fórmula com os nomes dos controlos se diferente.

    Agora, os controlos da aplicação têm este aspeto na aplicação de exemplo.

    Carregar ficheiro para o armazenamento ligado.

    Gorjeta

    Certifique-se de que seleciona Todos os ficheiros ao utilizar a opção de carregamento para garantir que todos os tipos de ficheiros estão visíveis na caixa de diálogo do explorador de ficheiros.

Transfira ficheiros do Armazenamento de Blobs do Azure

Até agora adicionou a capacidade de ver contentores, ficheiros do contentor selecionado e a opção de enviar ficheiros para o armazenamento. Agora, vamos compreender como trabalhar com a capacidade de transferência com o armazenamento ligado.

  1. Selecione a primeira linha na galeria com a lista de ficheiros de um contentor.

    Selecionar a primeira linha na galeria da lista de ficheiros.

  2. Selecione Inserir -> Ícones -> Transferir. Isto adiciona o ícone de transferência para todas as linhas na galeria.

  3. Mova o primeiro ícone a transferir em direção ao lado direito, dentro da galeria, no ecrã da aplicação. Esta açõa também move os restantes ícones para as linhas seguintes na galeria.

    Mova a primeira alinha, na galeria da lista de ficheiros.

  4. Defina a propriedade OnSelect do ícone a transferir para:

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

    Esta operação cria uma ligação de SAS para um blob através do caminho. Mais informações: Criar URI SAS por caminho

    Importante

    URI SAS criado utilizando CreateShareLinkByPath tem uma validade predefinida de 24 horas. Se tiver um requisito de negócio a expirar o URI num tempo mais curto ou diferente, considere atualizar esta fórmula. Por exemplo, o exemplo abaixo expira o URI em 1 hora utilizando funções Now() e DateAdd().

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

    Gorjeta

    Para obter mais informações sobre a configuração do Armazenamento de Blobs do Azure para acesso anónimo público, e diferentes níveis de acesso público, aceda a Configurar acesso de leitura público anónimo para contentores e blobs.

A aplicação tem agora a capacidade de permitir que transfira os ficheiros.

Teste, guarde, publique e partilhe a aplicação

Reproduza a aplicação para a testar e verifique se a aplicação funciona como esperado. Após o teste, certifique-se de que guarda e publica a aplicação antes de fechar o Power Apps Studio. E, em seguida, pode partilhar a aplicação com outros dentro da sua organização ou convidados fora da sua organização.

Personalizações opcionais

Nesta secção, vai aprender sobre personalizações opcionais e adicionais que pode considerar para a sua aplicação.

Tipo de Multimédia

Pode utilizar os campos Tipo de multimédia ou Caminho para que a galeria apresente opcionalmente o conteúdo da imagem nos respetivos controlos. Por exemplo, Visualizador de PDF para ficheiros PDF, Imagem para imagens ou Áudio/vídeo para ficheiros áudio/vídeo.

Por exemplo, para filtrar os ficheiros com o tipo de extensão de ficheiro de .pdf, utilize a seguinte fórmula de exemplo.

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

Da mesma forma, pode utilizar diferentes tipos de extensão de ficheiros ou tipos de multimédia para personalizar adicionalmente os controlos adicionados.

Atualizar galerias ligadas ao Armazenamento de Blobs do Azure

A ligação ao Armazenamento de Blobs do Azure não atualiza os dados dentro de galerias automaticamente quando os dados são atualizados. Se tiver mais de um contentor, pode selecionar o outro contentor e, em seguida, selecionar novamente o contentor anteriormente selecionado para atualizar a galeria ligada para apresentar as alterações.

Outro método que pode ser considerado é a utilização de uma coleção para a primeira galeria e, em seguida, usar a função ClearCollect para atualizar a coleção.

Por exemplo, as seguintes fórmulas permitem-lhe atualizar a coleção para a lista principal de contentores na primeira galeria e atualizar a segunda galeria quando o botão de enviar estiver selecionado ou quando o ecrã aparece (propriedade do ecrã OnVisible).

  1. Defina a propriedade Items da primeira galeria para a lista de contentores para "TopLevelList".

  2. Anexe à propriedade OnSelect do botão de carregamento:

    ClearCollect(TopLevelList, AzureBlobStorage.ListRootFolderV2().value)
    
  3. Adicione à propriedade OnVisible do ecrã:

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

Limitações

Não é possível utilizar o Microsoft Excel como a origem de dados quando o ficheiro é armazenado no Armazenamento de Blobs do Azure. Para utilizar o Excel como a origem de dados, utilize os outros conectores de armazenamento na nuvem (tais como o OneDrive, OneDrive para Empresas, Google Drive, Dropbox ou Box). Mais informações: Ligar ao armazenamento na nuvem a partir do Power Apps

Passos seguintes

Estruturar a interface da aplicação

Consulte também

Ligar ao armazenamento na nuvem a partir do Power Apps