Power Appsをつかって脱PPAPアプリ作成③ ～ファイル送信編～

本記事は脱PPAPアプリ作成の第３回（最終回）です。
作成したアプリを使ってファイル送信する方法などを確認していきます。

これまでの記事は、以下からご覧いただけます。

- 第１回　[Power Appsをつかって脱PPAPアプリ作成① ～Power Automate編～](https://qiita.com/TND_SS/items/3a8dda6a723e374c8122)

- 第２回　[Power Appsをつかって脱PPAPアプリ作成② ～Power Apps編～](https://qiita.com/TND_SS/items/58f7b0e74f060f854f79)


# [Power Apps] アプリの公開
1.　アプリでファイル共有をする前に、Power AppsにPower Automateのフローを追加してから一度でもフローを更新した場合は最新化しておきましょう。
Power Appsで作成したアプリを開き、左側のメニューからPower Automateアイコンをクリックし、「最新の情報に更新」を選択します。
※	更新していない場合、手順3のみを実施してください。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/71e8ae1e-a906-4fd2-b25e-8bf2b4d648b3.png" width="300">

2.　同じく、SharePointリストを更新などした場合も最新化します。
左側のメニューからデータのアイコンをクリックし、「最新の情報に更新」を選択します。
※	更新していない場合、手順3のみを実施してください。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/3a7d6dd7-9ca3-4959-8ed7-4a3200436b07.png" width="300">

3.　保存したPower Appsアプリの最新バージョンを公開します。
 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/03cb3093-dd79-4c08-b1c0-434e7debc804.png)

これで準備が整いました。それでは動かしてみましょう。


# [Power Apps] 共有ファイル一覧
1.　Power Appsで作成したアプリを選択し、[再生]します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/67b8232c-16c2-4498-bf1a-efddad9aed8b.png)


2.　「共有ファイル一覧」画面が表示されます。
ファイルの共有日時／共有ファイル名／共有先アドレスが一覧で並んでいることが確認できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/74114aae-53b0-4519-9a11-c1669a8b8e7e.png)


アイコンの役割は下記のとおりです。
| アイコン | 役割   | 説明                         |
|:---:|--------|------------------------------|
| <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/b7716956-f3eb-4568-8cdd-b6949057e1a6.png" width="50"> | 更新   | ファイル一覧を更新する       |
| <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/dab6cced-a6f4-4a41-b37d-31c87faa343b.png" width="50"> | 並べ替え   | アイコンクリックで降順に並べ替える<br>（デフォルト：共有日時の昇順）  |
| <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/abb35c19-ecea-477c-9d8f-ff557c811694.png" width="50"> | 新規ファイル共有   | ファイル共有画面へ遷移し、ファイルを共有する  |
| <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/cd7569dd-e855-4211-b014-92cea3eee304.png" width="50"> | 検索   | ファイル名、共有先アドレスを前方一致で検索する |


# [Power Apps]ファイル共有
1.　「共有ファイル一覧」画面で右上の「＋」アイコンをクリックします。
「ファイル共有」画面が表示されます。
入力ボックスには、Defaultプロパティに設定した値が最初から入力されています。

2.　「ファイル共有」画面の各項目に値を入力します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/e69c2874-4cad-4ba3-9ecb-b93e7a6e7f13.png)

【入力値】
| No.　| 項目名           | 必須　| 入力値内容                                                                 |
|:---:|------------------|:---:|----------------------------------------------------------------------------|
| ①  | サイトのアドレス | 〇  | ファイルが配置されているSharePointサイトまたはOneDriveのアドレス         |
| ②  | ライブラリ名     | 〇  | ファイルが配置されているライブラリ名（フォルダの指定は不可）             |
| ③  | ファイル名       | 〇  | 共有したいファイル名                                                       |
| ④  | 権限             | 〇  | 付与する権限（デフォルトは閲覧）                                           |
| ⑤  | 共有先アドレス   | 〇  | 共有する相手のアドレス                                                     |
| ⑥  | 通知             |      | 共有する相手に通知をする/しない（デフォルトは「する」）                       |
| ⑦  | メッセージ       |      | 共有時のメッセージ                                                         |


※入力ボックスに設定されている値を消すと、薄いグレーのテキストが出現します。
これはHintTextプロパティに設定した値です。入力ボックスが空の場合に表示されます。

3.　入力が完了したら右上の飛行機アイコンをクリックして送信します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/fb2c6323-aed3-498f-b615-316aa0ce3170.png)
※メール送信をキャンセルする場合は左上の「×」アイコンをクリックします。

 - メール送信成功の場合
処理が成功した場合は「処理が完了しました。」メッセージが表示され、「共有ファイル一覧」画面に共有した情報が1行で表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/04ee38a9-553f-4bd3-8820-b0d8114d18af.png)
    通知を「する」に選択した場合、ファイル共有者にメールで通知が届きます。

<br>

 - メール送信失敗の場合
処理が失敗した場合はエラーメッセージが出力されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/78d7210d-87ba-418f-b4e2-65b4baf2f52c.png)

    Power Automateの実行履歴よりエラーの内容を確認をしてください。
    <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/ee6474d1-898c-40f4-b531-d01afa835f66.png" width="400">

    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/3cab84cd-0eba-4bc2-99b0-2f8c9747c2ee.png)

Power Automateの実行履歴がない場合は、Power Apps側の入力値や設定に問題があります。入力値に誤りがないことを確認し、Power Appsのエラーを確認してください。

# [Power Apps]共有ファイル情報の確認
ファイルの共有が完了すると、「共有ファイル一覧」画面に遷移します。
共有したファイルの情報が一覧表示されるので、確認したい行を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/a2c213dc-c6e0-4787-8571-0425586b19f3.png)

「共有ファイル一覧」画面で選択した行の詳細情報が「共有ファイル情報」画面に表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/d8151163-a6ca-4a92-a0bf-960e57dc0d70.png)

 - ①のURLには、共有したファイルのURLが表示されます。
 - ②～⑧の項目には、「ファイル共有」画面で入力した値が表示されます。

左上の「＜」アイコンをクリックすると「共有ファイル一覧」画面に戻ります。


# [SharePoint] 共有ファイル
続いて、Power Appsで設定したとおりにファイルが共有されているかを確認します。
今回は「テスト結果」というライブラリに配置した「サイト構築テスト結果.xlsx」ファイルを共有したので、ライブラリに移動してファイルを表示します。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/56d6033f-fc89-4463-a9fc-707e892a448f.png" width="300">

ファイルの「アクセス許可の管理」にリンクが作成されています。
「共有ファイル情報」画面に表示されていたURL、共有アドレスとも一致しており、Power AppsやPower Automateが設計どおりに動いたこが確認できました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3992089/d4e2a6fd-c77c-4b75-bb78-223d2f4960b4.png)

# まとめ
 - ファイルとパスワードを送信せずに、Power AppsとPower Automateでファイル共有が自動化できる
 - 共有した情報を一覧で確認できる
 - 仕様変更などがない限り、アプリに変更を加えず使い続けることができる

<br>
今回はなるべくカスタマイズせずに作成しましたが、カスタマイズ次第では、より使いやすいものが作れそうだと感じました。
たとえば、宛先はセミコロン「;」で区切って複数人のアドレスを指定すれば一括送信が可能なので、宛先の入力ボックスを動的に増やしたり、ライブラリやファイル名をプルダウン選択にしたり…
皆さんもカスタマイズしてみてはいかがでしょうか。

他にも弊社のアカウントではPower AppsやPower Automateなどで使える情報を紹介しているので、ぜひご覧ください。


# 最後に
テンダでは、「こんなプロジェクトに挑戦したい」「こんなチームで働きたい」「理想のチームを創りたい」と願う仲間を求めています。
カジュアル面談も随時受付中です。ぜひ一度お話ししましょう！:cherry_blossom:
 - [募集職種一覧](https://hrmos.co/pages/tenda/jobs)
 - [カジュアル面談の申込](https://hrmos.co/pages/tenda/jobs/031002/apply)
 - [テンダで働く人や社風について](https://note.com/tenda_recruit)
 - [テンダのMicrosoftサービス](https://mssp.tenda.co.jp/)