Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Power Apps может подключаться к хранилищу BLOB-объектов Azure. Вы можете отправлять такие файлы, как Word, Excel или мультимедийные изображения, аудио или видео с помощью соединителя хранилища BLOB-объектов Azure для Power Apps.
При разработке приложения холста, подключающегося к хранилищу BLOB-объектов Azure, приложение использует имя и ключ учетной записи хранения BLOB-объектов для подключения. После совместного использования приложения с другими пользователями пользователи могут использовать подключение, настроенном внутри приложения, для отправки файлов в хранилище BLOB-объектов Azure без необходимости совместного использования имени и ключей хранилища BLOB-объектов пользователями приложения.
В этой статье вы узнаете, как создать пример приложения холста, подключающегося к хранилищу BLOB-объектов Azure, и добавить элементы управления в приложение, которое позволяет отправлять различные типы файлов в подключенное хранилище BLOB-объектов.
Замечание
Чтобы узнать больше о других типах облачных хранилищ с помощью Power Apps (например, OneDrive, OneDrive для бизнеса, Google Drive, Dropbox или Box), перейдите в раздел "Подключение к облачному хранилищу" из Power Apps.
Предпосылки
Перед началом работы создайте и настройте учетную запись BlockBlobStorage. Вы также можете использовать устаревшую учетную запись BLOBStorage, хотя и не рекомендуется. Дополнительные сведения. Типы учетных записей хранения в хранилище BLOB-объектов Azure
Создание подключения к хранилищу BLOB-объектов Azure
Для подключения приложения к хранилищу BLOB-объектов Azure требуется подключение к хранилищу BLOB-объектов Azure.
Чтобы создать подключение к хранилищу BLOB-объектов Azure, выполните следующие действия.
Выполните вход в Power Apps.
На левой панели разверните узел Data.
Выберите "Подключения".
Выберите Новое подключение.
Выберите хранилище Blob-объектов Azure.
Скопируйте и вставьте имя учетной записи и ключ доступа.
Дополнительные сведения о копировании имени учетной записи и ключа доступа см. в разделе "Просмотр ключей доступа к учетной записи в Azure".
Нажмите кнопку "Создать".
Теперь подключение к хранилищу BLOB-объектов Azure настроено и готово к использованию с приложениями на основе холста.
Создание приложения на основе холста с подключением к хранилищу BLOB-объектов Azure
Теперь, когда у вас есть подключение к хранилищу BLOB-объектов Azure, давайте создадим приложение холста, которое подключается к этому хранилищу.
Замечание
В этом разделе вы создадите пример приложения с примерами элементов управления, функциональными возможностями и макетом. В зависимости от бизнес-требований вы можете создать приложение с другой структурой или настроить по-разному.
Создайте пустое приложение холста с именем "Пример приложения для хранилища BLOB-объектов Azure" и макетом телефона .
В Power Apps Studio на левой панели выберите
.Выберите Добавить данные.
В списке соединителей выберите хранилище BLOB-объектов Azure.
Просмотр контейнеров и файлов
Теперь, когда приложение подключено к хранилищу BLOB-объектов Azure, давайте добавим коллекции, чтобы просмотреть контейнеры и файлы в контейнерах из подключенного хранилища.
Выберите Insert ->Gallery ->Blank вертикальный.
В правой части экрана на панели свойств выберите раскрывающийся список макета и выберите "Заголовок".
Выберите первый
в коллекции и удалите его.
В правой части экрана на панели свойств выберите раскрывающийся список источника данных и выберите хранилище BLOB-объектов Azure.
Задайте для свойства Items коллекции значение:
AzureBlobStorage.ListRootFolderV2().value
Эта операция содержит большие двоичные объекты в корневой папке хранилища BLOB-объектов Azure. Дополнительные сведения: вывод списка больших двоичных объектов в корневой папке
Чтобы добавить другую пустую вертикальную коллекцию, нажмите кнопку "Вставка ->Коллекция ->Пустой", чтобы добавить другую пустую вертикальную коллекцию.
Переместите коллекцию под добавленной ранее коллекцией, в которую отображается список контейнеров.
В правой части экрана на панели свойств выберите раскрывающийся список макета и выберите название, подзаголовок и текст.
Выберите первый
в коллекции и удалите его.В правой части экрана на панели свойств выберите раскрывающийся список источника данных и выберите хранилище BLOB-объектов Azure.
Задайте для свойства Items коллекции значение:
AzureBlobStorage.ListFolderV2(Gallery1.Selected.Id).valueЭта операция содержит большие двоичные объекты в контейнере. Дополнительные сведения: список больших двоичных объектов
Замечание
Коллекция1 в этой формуле является ссылкой на коллекцию, добавленную ранее, которая перечисляет все контейнеры в учетной записи хранения. Измените формулу с именем коллекции, если она отличается.
В правой части экрана на панели свойств выберите "Изменить для полей".
Измените выбранные поля для заголовка коллекции как DisplayName, подзаголовок как LastModified и текст в качестве пути.
Теперь в коллекции отображается список файлов из контейнера, выбранного с помощью коллекции в верхней части.
Выберите "Вставить ->Text label".
Поместите метку на экран приложения.
Задайте свойство Text метки как "Выбрать контейнер".
Используйте область свойств в правой части экрана и выберите нужный цвет текста, размера и цвета текста метки.
Выберите "Вставить ->Text label".
Поместите метку над коллекцией со списком файлов.
Задайте для свойства Text метки значение "Список файлов".
Отправка файлов в хранилище BLOB-объектов Azure
С помощью дизайна приложения вы сможете выбрать контейнер, а затем перечислить файлы из контейнера.
Давайте настроим приложение с элементами управления и логикой, чтобы разрешить отправку файлов в подключенную службу хранилища BLOB-объектов Azure.
Чтобы добавить возможность выбора файлов для отправки, нажмите кнопку "Вставка ->Мультимедиа".>
Измените размер элемента управления "Добавить рисунок " и поместите его в нижней левой части экрана приложения.
Задайте свойству Text элемента управления значение "Выбрать файл для отправки".
Нажмите кнопкуInsert ->Button.
Поместите кнопку в правой нижней части экрана приложения.
Задайте для свойства Text кнопки значение "Отправить".
Выберите insert ->Text input.
Поместите элемент управления ввода текста над кнопкой "Отправить ".
Задайте для свойства default кнопки "Ввести имя файла".
Задайте для свойства OnSelect кнопки значение:
AzureBlobStorage.CreateFile(Gallery1.Selected.Name,TextInput1.Text, UploadedImage1.Image)Эта операция отправляет большой двоичный объект в хранилище BLOB-объектов Azure. Дополнительные сведения: создание большого двоичного объекта
Замечание
Коллекция1 в этой формуле является ссылкой на коллекцию, добавленную ранее, которая перечисляет все контейнеры в учетной записи хранения. Файл будет отправлен в выбранный контейнер в коллекции 1. TextInput1 и uploadImage1 ссылались на элементы управления вводом текста и отправкой изображений. Обновите формулу с именами элементов управления, если они отличаются.
Элементы управления приложения выглядят следующим образом в примере приложения.
Подсказка
Убедитесь, что при использовании параметра отправки выбраны все файлы , чтобы убедиться, что все типы файлов отображаются в диалоговом окне проводника.
Скачивание файлов из хранилища BLOB-объектов Azure
До сих пор вы добавили возможность просматривать контейнеры, файлы из выбранного контейнера и возможность отправки файлов в хранилище. Теперь давайте посмотрим, как работать с возможностью скачивания с подключенным хранилищем.
Выберите первую строку в коллекции со списком файлов из контейнера.
Нажмите кнопку "Вставка ->Значки ->Скачать". При этом добавляется значок скачивания для всех строк в коллекции.
Переместите первый значок загрузки вправо внутри коллекции на экране приложения. Это также перемещает остальные значки для следующих строк в коллекции.
Задайте для свойства OnSelect значок скачивания:
Launch(AzureBlobStorage.CreateShareLinkByPath(ThisItem.Path).WebUrl)Эта операция создает ссылку SAS для большого двоичного объекта с помощью пути. Дополнительные сведения: создание URI SAS по пути
Это важно
URI SAS, созданный с помощью CreateShareLinkByPath, имеет срок действия по умолчанию в 24 часа. Если у вас есть бизнес-требование, чтобы срок действия универсального кода ресурса (URI) истекал в течение короткого или другого времени, рассмотрите возможность обновления этой формулы. Например, в приведенном ниже примере срок действия URI истекает через 1 час с помощью функций Now() и DateAdd( ).
Launch(AzureBlobStorage.CreateShareLinkByPath(ThisItem.Path,{ExpiryTime:DateAdd( Now(),1)}).WebUrl)Подсказка
Дополнительные сведения о настройке хранилища BLOB-объектов Azure для общедоступного анонимного доступа и различных уровней общедоступного доступа см. в статье "Настройка анонимного общедоступного доступа для чтения для контейнеров и BLOB-объектов".
Теперь приложение может разрешить скачивание файлов.
Тестирование, сохранение, публикация и предоставление общего доступа к приложению
Воспроизведение приложения для тестирования и проверка работы приложения должным образом. После тестирования убедитесь, что вы сохраните и опубликуете приложение, прежде чем закрыть Power Apps Studio. А затем вы можете поделиться приложением с другими пользователями в организации или гостями за пределами вашей организации.
Необязательные настройки
В этом разделе вы узнаете о необязательных и дополнительных настройках, которые можно рассмотреть для приложения.
Тип носителя
Для отображения содержимого изображения в соответствующих элементах управления можно использовать поля "Тип мультимедиа" или " Путь " для коллекции. Например, средство просмотра PDF-файлов , изображения для изображений или видео для аудио-и видеофайлов.
Например, чтобы отфильтровать файлы с типом расширения файла .pdf, используйте следующую пример формулу.
If(".pdf" in Gallery2.Selected.Path, AzureBlobStorage.GetFileContent(Gallery2.Selected.Id))
Аналогичным образом можно использовать различные типы расширений файлов или типы носителей для дополнительной настройки добавленных элементов управления.
Обновление коллекций, подключенных к хранилищу BLOB-объектов Azure
Подключение к хранилищу BLOB-объектов Azure не обновляет данные в коллекциях автоматически при обновлении данных. Если у вас несколько контейнеров, можно выбрать другой контейнер, а затем выбрать ранее выбранный контейнер, чтобы обновить подключенную коллекцию, чтобы отобразить изменения.
Еще один метод, который можно рассмотреть, заключается в использовании коллекции для первой коллекции, а затем использовать функцию ClearCollect для обновления коллекции.
Например, следующие формулы позволяют обновлять коллекцию для списка лучших контейнеров в первой коллекции и обновлять вторую коллекцию при выборе кнопки отправки или при появлении экрана (свойство "Экран OnVisible").
Задайте для списка контейнеров свойство Items первой коллекции значение TopLevelList.
Добавьте к свойству "Отправить" кнопку OnSelect :
ClearCollect(TopLevelList, AzureBlobStorage.ListRootFolderV2().value)Добавьте на экран свойство OnVisible :
ClearCollect(TopLevelList, AzureBlobStorage.ListRootFolderV2().value)
Ограничения
Вы не можете использовать Microsoft Excel в качестве источника данных, если файл хранится в хранилище BLOB-объектов Azure. Чтобы использовать Excel в качестве источника данных, используйте другие соединители облачного хранилища (например, OneDrive, OneDrive для бизнеса, Google Drive, Dropbox или Box). Дополнительные сведения: подключение к облачному хранилищу из Power Apps
Дальнейшие шаги
Проектирование интерфейса приложения