Что такое self в Python: примеры из реального мира
Что такое self в Python: примеры из реального мира
В этом посте мы узнаем, как передавать изображения и подписи из Power Apps на платформу Microsoft Power Automate. Это немного сложно сделать, потому что в Power Apps нет способа по умолчанию редактировать и загружать изображения в SharePoint.
Пример, над которым мы будем работать, — это приложение для учета расходов, которое я использовал раньше. По сути, это галерея, которая прикрепляется к списку SharePoint.
И если я выберу что-нибудь в этой галерее, это в основном обновит эту форму справа.
Затем я могу перейти в эту форму справа и отредактировать ее.
Мы перейдем к нашему списку SharePoint и добавим столбец изображений с именем Signature .
Давайте перейдем к Power Apps и добавим этот столбец изображения в эту форму. Поэтому мы нажмем «Изменить поля» , затем «Добавить поле » и выберем «Подпись» в раскрывающемся списке.
Вы заметите, что мы можем добавить его, но не можем делать такие вещи, как загрузка изображений. Например, если мы нажмем «Изменить» , мы сможем отредактировать все, кроме обновления изображения подписи. Если мы делаем это на iPad, было бы неплохо, если бы мы могли использовать экран для ввода текста или подписи перед отправкой этой записи, но, к сожалению, нам не разрешено это делать.
Оглавление
Загрузка изображений и создание подписей
Power Apps не имеет для этого функциональности, но Power Automate может прийти на помощь и помочь нам. Итак, вот как мы можем это сделать.
Во-первых, нам нужен способ, с помощью которого пользователь может отправить изображение и нарисовать подпись. Если мы нажмем знак +, он добавит новый отчет о расходах, а если мы нажмем галочку, мы получим это всплывающее окно.
Если мы вернемся, ничего не произойдет. Но если мы нажмем Submit , отчет о расходах пройдет. Мы собираемся добавить возможность для пользователя загружать изображение и рисовать подпись. Итак, давайте перейдем к Медиафайлам , а затем к Добавить изображение . Этот элемент управления позволяет нам в основном добавлять фотографии.
Затем нажмите «Ввод» , затем «Ввод пером» . Это позволяет нам нарисовать нашу подпись.
Давайте сделаем эту модель немного больше, чтобы у нас было больше места для этого.
А затем мы добавим несколько ярлыков ниже, чтобы показать всем, что мы делаем.
Слева будет надпись «Загрузить квитанции» , а справа — «Подпишите» .
Создание потока платформы Microsoft Power Automate
Следующее, что нам нужно сделать, — это создать поток Power Automate , который в основном берет управление квитанциями загрузки и контроль подписей и загружает их в нашу библиотеку документов расходов, квитанций и подписей SharePoint. Опять же, в Power Apps это невозможно сделать напрямую, и нам придется использовать Power Automate.
Нажимаем на Новый поток и выбираем Мгновенный облачный поток .
Мы выберем Power Apps в качестве способа запуска этого потока, назовем его UploadStuff и нажмем Create .
Мы перейдем к нашему коннектору SharePoint и выберем Создать файл .
Нам нужен адрес сайта и путь к папке, которая в данном случае называется /expensereceiptsandsignature.
Для имени файла мы, вероятно, хотим, чтобы имя расходной квитанции и подпись были идентичны имени фактического названия расходной квитанции. Мы запросим у Power Apps имя файла и содержимое файла .
Затем мы нажмем «Новый шаг» и повторим то же самое еще раз, потому что нам нужен один файл «Создать» для фактической фотографии квитанции о расходах, а другой — для подписи, которая будет загружена. Отличаться будет только содержимое файла , которое нам нужно запросить в Power Apps.
Теперь мы, наконец, создали наш рабочий процесс.
Подключение Power Apps к платформе Microsoft Power Automate
Последнее, что нам нужно сделать, это подключить Power Apps к Power Automate. Поэтому, если мы добавим новый расход и выберем галочку, мы снова получим эту модель.
Если мы нажмем кнопку отправки, все, что эта модель сделает, — это отправит форму и установит видимость обратно на false.
Мы должны вернуться на главный экран и активировать этот поток. Но сначала мы скопируем то, что находится на панели эффектов , и обрежем его так, чтобы оно было сохранено в нашем буфере обмена. Затем мы перейдем к Action , щелкните Power Automate , а затем выберите UploadStuff , что снова является рабочим процессом Power Automate , который мы только что создали. Затем рабочий процесс будет импортирован в наши Power Apps.
Определение аргументов в платформе Microsoft Power Automate
Нам нужно определить набор аргументов, которые мы указали в Power Automate. Первый аргумент, который нам нужно указать, — это фактическое имя файла, которое мы хотим ему назвать, которое в нашем случае будет равно заголовку отправляемого нами отчета о расходах, который хранится в DataCardValue1.
Нам также нужно фактическое изображение квитанции, которую мы загружаем, и вставляем все другие команды, которые у нас были раньше.
Теперь здесь все становится сложно, и под хитростью я, к сожалению, имею в виду очень сложно. Если мы отправим это, то должно произойти то, что UploadedImage1.Image и Pen.Input2.Image должны пройти через рабочий процесс, и они получат содержимое файла, которое будет создано.
Однако обратите внимание, что UploadedImage1.Image на самом деле не относится к самому изображению. Это относится к пути, который Microsoft сделала для того, чтобы знать, куда загрузить изображение. Так что на самом деле это не сам код изображения; это случайный путь, доступ к которому есть только у Microsoft. Изображение будет сохранено, но это будет какой-то случайный текстовый файл, который вы не сможете понять.
Итак, нам нужно внести несколько корректировок, используя этот код:
Создание переменной для каждого изображения
Первое, что нам нужно сделать, это создать переменную для каждого изображения. Мы создадим переменную с именем varImage1 , которая будет равна JSON-представлению загруженного изображения. Мы также хотим включить двоичные данные в JSON.
Затем мы возьмем выходные данные этой функции, которые хранятся в varImage1 , и создадим другую переменную с именем varImageTrimmed , которая в основном берет varImage1 и обрезает его концы с помощью функции Mid.
Мы берем загруженное изображение и преобразовываем его в URI — фрагмент кода, хранящийся в текстовой форме и представляющий, чем на самом деле является изображение. Затем мы берем это и удаляем первые два символа и два последних символа этого текста, потому что это идентификаторы формата, которые нам не нужны.
Затем мы проделаем тот же процесс для подписи и заменим изображение на PenInput2 и назовем его varSig1 .
Преобразование кода URI в двоичный код
Мы уже говорили, что Power Automate — это не случайный путь к образу; вместо этого это код URI самого изображения, который в основном является текстовым представлением этого изображения. Мы не можем просто передать это текстовое изображение, поэтому нам нужно преобразовать полученный код в двоичный код, который может прочитать SharePoint.
Все файлы находятся в двоичном коде, поэтому нам нужно перейти к Expression и использовать функцию, которая преобразует URI в двоичный код. Мы поместим это выражение в элемент содержимого файла этого действия и затем нажмем «Сохранить» .
Единственное, что нам осталось сделать, это убедиться, что файлы не имеют одинаковых имен. Мы хотим, чтобы первый файл был изображением, а второй файл — подписью. Итак, мы можем отредактировать первый с помощью _receipt.jpg, а второй с помощью _signature.jpg.
Давайте попробуем, чтобы увидеть, работает ли это. Мы начнем с нового отчета о расходах на новый iPad стоимостью 400 долларов.
Как только мы нажмем галочку, мы сможем добавить изображение и подпись.
Мы можем загрузить нашу квитанцию и добавить нашу подпись.
Затем мы можем нажать «Отправить» . Чтобы подтвердить, давайте перейдем к нашему списку SharePoint Subscription , чтобы увидеть, была ли создана эта позиция.
В дополнение к этому, если мы перейдем к квитанциям о расходах и подписям, мы увидим новую квитанцию iPad и новую подпись iPad, обе из которых соответствуют заголовку отчета о расходах, который мы только что создали.
Это настоящие изображения, и мы действительно можем их видеть, тогда как если бы мы делали это по старинке, это были бы просто текстовые файлы.
Заключение
Подумайте на мгновение, насколько это мощно. Теперь у нас есть способ создать приложение, позволяющее людям делать фотографии и подписи, и помещать их в рабочий процесс платформы Microsoft Power Automate. В данном случае мы используем их для хранения файлов в библиотеках документов. Главное, чему мы сегодня научились, — это перемещение данных, связанных с изображениями и подписями, из Power Apps в Power Automate.
Если вам понравился контент, описанный в этом руководстве, не забудьте подписаться на телеканал LuckyTemplates. У нас постоянно появляется огромное количество контента от меня и ряда создателей контента, и все они посвящены улучшению того, как вы используете LuckyTemplates и Power Platform.
Генри
Что такое self в Python: примеры из реального мира
Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.
В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.
В этом учебном пособии рассказывается, как использовать технику многопоточных динамических визуализаций для создания аналитических сведений из динамических визуализаций данных в ваших отчетах.
В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.
Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.
Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.
В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.
Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.
Что такое шлюз LuckyTemplates? Все, что тебе нужно знать