Підключення до сховища BLOB-об'єктів Azure з Power Apps

Програми Power Apps можуть підключатися до сховища BLOB-об'єктів Azure. Ви можете передавати файли, такі як документи Word та Excel, мультимедійні зображення, аудіо та відео, за допомогою з'єднувача BLOB-об'єктів Azure для Power Apps.

Під час проектування компонованої програми, яка підключається до сховища BLOB-об'єктів Azure, програма використовує ім'я облікового запису й ключ сховища BLOB-об'єктів для підключення. Після того як ви надаєте спільний доступ до програми іншим користувачам, вони зможуть використовувати підключення, що налаштоване в програмі, для передавання файлів до сховища BLOB-об'єктів Azure, не отримуючи доступу до імені та ключів цього сховища BLOB-об'єктів.

У цій статті ви дізнаєтеся, як створити компоновану програму-зразок, що підключається до сховища BLOB-об'єктів Azure, і додати до програми елементи керування, які дозволять передавати різні типи файлів у підключене сховище BLOB-об'єктів.

Примітка

Дізнайтеся більше використання із Power Apps інших хмарних сховищ (наприклад, OneDrive, OneDrive для бізнесу, Диск Google, Dropbox або Box) тут: Підключення до хмарного сховища з Power Apps.

Вимоги

Перед початком створіть і налаштуйте обліковий запис BlockBlobStorage. Ви можете також використовувати застарілий обліковий запис BlobStorage, але ми не радимо цього робити.. Додаткові відомості: Типи облікових записів сховища в Azure Blob Storage

Створення підключення Azure Blob Storage

Щоб створена вами програма могла підключатися до сховища, необхідно створити підключення Power Apps до Azure Blob Storage.

Створення підключення Azure Blob Storage описано нижче.

  1. Увійти до Power Apps.

  2. В області ліворуч розгорніть Дані.

  3. Виберіть Підключення.

  4. Виберіть Створити підключення.

  5. Виберіть Azure Blob Storage.

    Нове підключення сховища BLOB-об’єктів Azure.

  6. Скопіюйте та вставте ім'я облікового запису та ключ доступу.

    Уведіть ім’я облікового запису й ключі доступу для сховища.

    Щоб отримати додаткові відомості про копіювання імені облікового запису та ключа доступу, перейдіть до розділу Перегляд ключів доступу облікового запису в Azure.

  7. Виберіть Створити.

Тепер підключення до Azure Blob Storage налаштовано, і ви можете використовувати його у компонованих програмах.

Створення компонованої програми, що використовує підключення Azure Blob Storage

Тепер, коли підключення до Azure Blob Storage наявне, створімо компоновану програму, яка підключатиметься до цього сховища.

Примітка

У цьому розділі ми створимо програму-зразок із демонстраційними елементами керування, додамо певні функціональні можливостями й розробимо макет. Залежно від потреб компанії структура програми може бути різною, і до неї можуть вживатися різні настроювання.

  1. Створіть пусту компоновану програму з назвою «Програма-зразок для сховища BLOB-об’єктів Azure» і макет Phone.

  2. У Power Apps Studio в області ліворуч виберіть Дані.

  3. Виберіть Додати дані.

  4. У списку з'єднувачів виберіть Azure Blob Storage.

    Виберіть підключення сховища BLOB-об’єктів Azure.

Перегляд контейнерів і файлів

Тепер, коли ми підключили програму до Azure Blob Storage, додамо ж колекції для перегляду контейнерів та файлів у контейнерах у вибраному сховищі.

  1. Виберіть Вставити -> Колекція -> Порожній вертикальний.

  2. У правій частині екрана в області властивостей виберіть розкривний список макета та виберіть пункт Заголовок.

    Виберіть макет галереї для контейнерів.

  3. Виберіть першу піктограму зі стрілкою. у галереї та видаліть її.

    Видаліть піктограму зі стрілкою.

  4. У правій частині екрана в області властивостей виберіть розкривний список для джерела даних та виберіть там Azure Blob Storage.

    Джерело даних для галереї контейнерів.

  5. Для властивості Items («Елементи») задайте вказане нижче значення.

    AzureBlobStorage.ListRootFolderV2().value
    

    Список контейнерів.

    Ця операція дає змогу отримати список BLOB-об’єктів у кореневій папці сховища BLOB-об’єктів Azure. Додаткові відомості: Перелік BLOB-об'єктів у кореневій папці

  6. Виберіть Вставка -> Колекція -> Пуста вертикальна, щоб додати іще одну пусту вертикальну колекцію.

  7. Розмістіть колекцію під доданою раніше колекцією, в якій відображається список контейнерів.

  8. У правій частині екрана в області властивостей виберіть розкривний список макета та виберіть пункт Заголовок, підзаголовок і вміст.

  9. Виберіть першу піктограму зі стрілкою. у галереї та видаліть її.

  10. У правій частині екрана в області властивостей виберіть розкривний список для джерела даних та виберіть там Azure Blob Storage.

  11. Для властивості Items («Елементи») задайте вказане нижче значення.

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

    Ця операція відобразить список BLOB-об'єктів у контейнері. Додаткові відомості: Список BLOB-об'єктів

    Примітка

    Gallery1 у цій формулі — це посилання на колекцію, додану раніше, у якій перелічено всі контейнери облікового запису сховища. Якщо ім'я вашої колекції є іншим, змініть формулу відповідно.

  12. У правій частині екрана на панелі властивостей виберіть Редагувати для елемента Поля.

  13. Установіть для вибраних полів такі значення: для заголовка колекції укажіть DisplayName, для підзаголовка — LastModified, а у основному тексті введіть Path («Шлях»).

    Вибір полів.

    Тепер у цій колекції відображається список файлів із контейнера, вибраного у колекції зверху.

    Список файлів з контейнера.

  14. Виберіть Вставка -> Текстовий підпис.

  15. Розташуйте підпис у верхній частині екрана програми.

  16. Установіть для властивості Text («Текст») цього підпису значення «Виберіть контейнер».

  17. Скористайтеся областю властивостей у правій частині екрана, щоб встановити колір, розмір та колір фону тексту підпису на ваш вибір.

  18. Виберіть Вставка -> Текстовий підпис.

  19. Розташуйте цей підпис над колекцією зі списком файлів.

  20. Установіть для властивості Text («Текст») цього підпису значення «Список файлів».

    Список файлів із доданими підписами.

Передавання файлів до сховища Azure Blob Storage

На цьому етапі розробки програми ви можете вибрати контейнер та відобразити перелік усіх файлів у цьому контейнері.

Давайте налаштуємо нашу програму, додавши елементи керування та підписи, які дозволять передавати файли до підключеного сховища Azure Blob Storage.

  1. Виберіть Вставка -> Медіа-вміст -> Додавання зображення, щоб додати можливість вибирати файли для передавання.

  2. Змініть розмір елемента керування Додавання зображення та розташуйте його в нижньому лівому кутку екрана програми.

  3. Установіть для властивості Text («Текст») цього елемента керування значення «Виберіть файл для передавання».

  4. Виберіть Вставка -> Кнопка.

  5. Розташуйте кнопку у нижньому правому кутку екрана програми.

  6. Установіть для властивості Text («Текст») кнопки значення «Передати».

  7. Виберіть Вставка -> Введення тексту.

  8. Розташуйте елемент керування введенням тексту над кнопкою Передати.

  9. Установіть для властивості Default («За замовчуванням») кнопки значення «Введіть ім'я файлу».

  10. Установіть для властивості OnSelect кнопки значення, наведене нижче.

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

    Ця операція передає BLOB-об'єкт до сховища Azure Blob Storage. Додаткові відомості: Створення BLOB-об'єктів

    Примітка

    Gallery1 у цій формулі — це посилання на колекцію, додану раніше, у якій перелічено всі контейнери облікового запису сховища. Файл буде передано до контейнера, вибраного у першій колекції. TextInput1 і uploadImage1 посилаються на елементи керування введенням тексту та передавання зображень. Якщо ім'я відповідних елементів керування у вашій програмі відрізняється, змініть формулу належним чином.

    Тепер елементи керування у програмі виглядають, як показано на зразку нижче.

    Передайте файл до підключеного сховища.

    Порада

    Переконайтеся, що при використанні можливості передавання вибрано параметр Усі файли, щоб у діалоговому вікні провідника файлів відображалися всі типи файлів.

Завантаження файлів зі сховища Azure Blob Storage

Поки що ми додали можливість перегляду контейнерів і файлів із вибраного контейнера, а також передавання файлів до сховища. Тепер давайте розберемося, як використовується можливість завантаження до підключеного сховища.

  1. Виберіть перший рядок у колекції зі списком файлів з певного контейнера.

    Виберіть перший рядок в колекції зі списком файлів.

  2. Виберіть Вставка -> Піктограми -> Завантаження. У такий спосіб ви додасте піктограму завантаження до всіх рядків у колекції.

  3. Перемістіть першу піктограму завантаження на праву сторону всередині галереї на екрані програми. Таким чином ви перемістите й решту піктограм для наступних рядків колекції.

    Перемістіть перший рядок в колекції зі списком файлів.

  4. Установіть для властивості OnSelect піктограми завантаження значення, наведене нижче.

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

    Ця операція дає змогу створити посилання SAS для BLOB-об’єкта за вказаним шляхом. Додаткові відомості: Створення URI SAS для шляху

    Важливо

    URI-адреса SAS, створена за допомогою CreateShareLinkByPath, має термін дії за замовчуванням, що становить 24 години. Якщо ваш бізнес вимагає, щоб термін дії цієї URI-адреси був коротшим або іншим, внесіть необхідні зміни у формулу. Наприклад, наведений нижче зразок відповідає закінченню терміну дії URI-адреси за 1 годину, і це досягається за допомогою використання функцій Now() і DateAdd().

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

    Порада

    Щоб отримати додаткові відомості про налаштування сховища Azure Blob Storage для загального анонімного доступу та різні рівні загального доступу, перейдіть за посиланням Налаштування анонімного загального доступу на читання для контейнерів BLOB-об'єктів.

Тепер програма дозволяє вам завантажувати файли.

Тестування, збереження, публікація та спільне використання програми

Відтворіть програму, щоб протестувати її та переконатися, що вона працює, як очікується. Після тестування обов'язково збережіть та опублікуйте програму перед закриттям Power Apps Studio. Після цього ви зможете надати спільний доступ до програми іншим користувачам вашої організації або гостям поза межами вашої організації.

Необов'язкові настроювання

У цьому розділі ви дізнаєтеся про додаткові та необов'язкові настроювання, які можна виконати у вашій програмі.

Тип медіафайлу

За потреби можна використовувати поля Тип медіафайлу або Шлях, щоб мати можливість відображати вміст зображень у відповідних елементах керування. Наприклад, Засіб перегляду PDF-файлів для PDF-файлів, Зображення для зображень або Аудіо/відео для аудіо та відео файлів.

Наприклад, щоб відфільтрувати файли за типом розширення .pdf, скористайтеся наведеною нижче формулою-зразком.

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

Аналогічно, ви можете використовувати різні типи розширень файлів або типів медіа-файлів для додаткового настроювання доданих елементів керування.

Оновлення колекцій, підключених до сховища Azure Blob Storage

Підключення сховища Azure Blob Storage при оновлені даних автоматично не оновлює дані у колекціях. Якщо у вас більше одного контейнера, ви можете вибрати інший контейнер, а потім знову вибрати раніше вибраний контейнер, щоб оновити підключену колекцію та відобразити зміни.

Інший метод, який можна використовувати, — це використати колекцію для першої колекції, а потім застосувати функцію ClearCollect для оновлення колекції.

Наприклад, за допомогою наведених нижче формул можна оновити добірку для верхнього списку контейнерів у першій колекції, а також оновити другу колекцію при виборі кнопки передавання або при відображені екрана (властивість екрана «OnVisible»).

  1. Установіть для властивості Items («Елементи») першої колекції зі списком контейнерів значення «TopLevelList».

  2. Додайте до кнопки завантаження ресурс OnSelect: 

    ClearCollect(TopLevelList, AzureBlobStorage.ListRootFolderV2().value)
    
  3. Додайте на екран властивість OnVisible :

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

Обмеження

Якщо файл зберігається у сховищі Azure Blob Storage, неможливо використовувати в якості джерела даних Microsoft Excel. Для того, щоб використовувати Excel як джерело даних, використовуйте інші з'єднувачі хмарного сховища (наприклад, OneDrive, OneDrive для бізнесу, Диск Google, Dropbox або Box). Додаткові відомості: Підключення до хмарного сховища з Power Apps

Наступні кроки

Розробка інтерфейсу програми

Статті за темою

Підключення до хмарного сховища з Power Apps