【第3回 実務で役立つアプリ開発】Power Automateで便利な機能をカスタマイズしよう!
2021-08-19
azblob://2022/11/11/eyecatch/2021-08-16-power-automate-000.jpg

こんにちは、あおいです。
めちゃくちゃ天下一品のこってりラーメンが食べたい。今はそんな気分です。


さて、前回のブログではPower Automateの[実行条件の構成]を活用したダウンロード機能について紹介させていただきました。
【第2回 実務で役立つアプリ開発】Power Automateで実行条件の構成を活用してダウンロード機能を作る | cloud.config Tech Blog


今回のブログは前回の続編です。利用者にとって便利な機能をいくつか案件一覧画面にカスタマイズしていくので、是非参考にしていただければと思います。

実装の手順
①[取引先社名][案件名]フォルダの自動生成機能をPower Automateで作成
②[案件名][フォルダ]にファイルを作成する機能をPower Automateで作成
③手順①で作成した[取引先社名][案件名]フォルダへのリンクをPower Automateで作成

Power Appsの案件一覧画面イメージは以下のようになります。


本アプリではプレミアムコネクタを利用するので、Power Automateの有料ライセンスが必要です。


①[取引先社名][案件名]フォルダの自動生成機能をPower Automateで作成
「そもそも、なぜフォルダを作成する機能が必要なのか?」
このように疑問に思われた方がいらっしゃるのではないでしょうか。

以下の写真をご覧ください。



これ、見づらいですよね。。。
実際の業務上、数十・数百の企業と取引をすると考えられます。そうなると、ダウンロードボタンを押す度に[提案書の生成物]フォルダ内に大量のファイルが作成されるでしょう。必要なファイルを探すのにかなり苦労しますよね。。。


こんな時は[SharePoint:新しいフォルダーの作成]アクションを使いましょう!


Power Automateで以下の手順でフローを作成してください。
1. [Power Appsボタン]をトリガーにしてください。

2. [Microsoft Dataverse]コネクタの[IDで行を取得する]アクションを選択します。
テーブル名「取引先情報]、行ID[動的なコンテンツから Power Appsで確認 を選択]など各項目を設定します。
同様のアクションを選択し、テーブル名[案件情報]、行ID[動的なコンテンツから Power Appsで確認 を選択]など各項目を設定します。

3. [SharePoint]コネクタの[新しいフォルダーの作成]アクションを選択します。
サイトのアドレス[該当のSharePointサイトアドレスを選択]、一覧またはライブラリ[ドキュメント]、フォルダーのパス[/提案書の生成物/会社名(動的なコンテンツから選択)/案件名(動的なコンテンツから選択)]など各項目を設定していきます。

4. 組み込みタブの[Power Apps]コネクタから[PowerApp または Flow に応答する]アクションを選択します。出力の種類[テキスト]タイトルの入力[mkdir]値の入力[success]など各項目を設定します。



フォルダ作成の機能は以上で終了です。
フローを接続して、フォルダ作成ボタンのOnSelectプロパティに以下の数式を入力します。




案件一覧から適当な案件名を選択して、フォルダ作成ボタンを押してPower Automateのフローを走らせてみましょう!実行後、該当のSharePointサイトの[提案書の生成物]フォルダ内に[取引先社名]フォルダ、またその配下に[案件名]フォルダが作成されました!

フォルダをいちいち手入力して作らなくていいのが楽ですね!手動をどんどんなくして自動化しましょう!




②案件名フォルダにファイルを作成する機能をPower Automateで作成
あとは先ほど作成した[案件名]フォルダ内にダウンロードしたファイルを作成するだけです。
これはめっちゃ簡単です。すぐに終わります。

Power Automateで以下の手順でフローを編集してください。
1. ダウンロードボタンと接続しているPower Automateのフローを開いてください。

2. [SharePoint:ファイル作成]アクションのフォルダーのパスを変更します。[/Shared Documents/提案書の生成物 ]を[ /Shared Documents/提案書の生成物/会社名(動的なコンテンツから選択)/案件名(動的なコンテンツから選択) ]に変更してください。

3. ファイル作成のアクション直後にある変数の値を変更します。2と同様に[/Shared Documents/提案書の生成物 ]を[ /Shared Documents/提案書の生成物/会社名(動的なコンテンツから選択)/案件名(動的なコンテンツから選択) /(以下略)]に変更してください。




以上で終了です。
案件一覧から適当な案件名を選択して、フォルダ作成後にダウンロードボタンを押してください!
実行後、[案件名]フォルダ内にファイルが作成されました!





③ 手順①で作成した[取引先社名][案件名]フォルダへのリンクをPower Automateで作成
フォルダ内のファイルを参照したい場合にPower Apps画面でリンク先を作成します。

Power Automateで以下の手順でフローを作成してください。
1. [Power Appsボタン]をトリガーにして文字列型の変数を初期化します。

2. [Microsoft Dataverse]コネクタの[IDで行を取得する]アクションを選択します。
テーブル名[取引先情報]、行ID[動的なコンテンツから Power Appsで確認 を選択]など各項目を設定します。

3. 文字列型のpath変数に[取引先社名]フォルダパスを入力します。

4. 組み込みタブの[Power Apps]コネクタから[PowerApp または Flow に応答する]アクションを選択します。出力の種類[テキスト]タイトルの入力[url]値の入力[動的なコンテンツからpath変数を選択]など各項目を設定します。

以上で[取引先社名]フォルダへのリンク先の作成は終了です。
同じ要領で以下の画像を参考にして[案件名]フォルダへのリンク先の作成もしてください。

「取引先社名フォルダ」へのリンク作成
「案件名フォルダ」へのリンク作成


リンク先の機能は以上で終了です。
フローを接続して、[社名][案件名]ボタンの各OnSelectプロパティに以下の数式を入力します。



案件一覧から適当な案件名を選択して、フォルダ作成後に社名ボタンと案件名ボタンを押してください!
実行後、[取引先社名][案件名]フォルダ階層にページ遷移しました!

今までSharePointのトップページから該当フォルダを探していた手間が省けましたね!
自動でリンク先に遷移して案件名フォルダ内のファイルを参照したり、任意のファイルをアップロードするのが楽にできるようになります!





以上でカスタマイズ機能についての紹介は終了です。
前回のブログの続編ということで案件一覧画面のカスタマイズ機能について紹介させていただきました。

フォルダの自動生成機能でだいぶフォルダ階層が分かりやすくなりましたね!
Power Automateを触っていくと面白い発見が得られます。
例えば、Power Automateで[SharePoint:フォルダの作成]アクションを最初見たときは「このアクションの使いどころ何?」と疑問に思っていましたが、開発をしていく中で「なるほどー、こういう場面で力を発揮するアクションなんだな。」と気づかされました。

「取引先社名フォルダ」の一覧
該当の取引先社名の「案件名フォルダ」の一覧


また、今回紹介した機能だけでなく、今まで紹介したブログ記事でWord書類Excel等の自動発行機能をカスタマイズする。そして、ファイルの作成先を案件名フォルダに指定する。
そうすることで、利便性が向上して更に実務で活躍するアプリが出来ます!
Power Apps+AutomateでWord書類の自動発行とPDF機能への自動変換をする | cloud.confg Tech Blog
DataverseのデータをPower AutomateでExcelへ転記して書類の自動発行をする | cloud.config Tech Blog


今回の続編がこちらのブログ記事になります!次で最終回となるので是非ご覧ください!
【最終回 実務で役立つアプリ開発】Power Appsの「DisplayMode」プロパティでユーザーの操作を制御する | cloud.config Tech Blog