【Power Apps】【Power BI】TeamsにPower Appsでアプリを作成からのPower BIでレポート作成

本日、自身2作目となるアプリをTeamsのPower Appsで作成したので、備忘録も兼ねて記事に残したいと思います。
1作目も記事書こうと思っていたのですが書けずじまい・・・鉄は熱いうちに打たないとダメですね・・・

##TeamsにPower Appsでアプリを作成
どんなものを作成したかというと、Excelで管理していたケース一覧です。
弊社なんちゃってグローバル企業のため、グローバルに問い合わせたり依頼したりすることがあり、その一覧表をExcelで作成し、Teamsのタブに追加して使っていました。
列としては、問い合わせNo、作成者、作成日、内容、完了日、備考　というシンプルなもの。
何故か一番上の行を挿入して入力するというルールにしていたため、メンドウでした。
Excel管理もやだったし・・・

というわけで、
・入力フォームを作る
・データをExcel以外に格納できる
TeamsのPower Appsでアプリ作成することに決めました！

###手順
こちらの公式が分かりやすいかと思います。
https://docs.microsoft.com/ja-jp/powerapps/teams/create-first-app
####①チームにPower Appsを追加
Teamsの左のメニューの「・・・」をクリックしてPower Appsを選択するか、チームのタブの「＋」から追加するか、どちらからでもいけます。

####②テーブルを作成
実は弊社、Dataverse（旧Common Data Service　名前変わったの今日知りました・・・）が使えず、それがPower Appsを使うハードルの1つだったんです。（まぁ他にもスキルとかスキルとかスキルとかありますけど・・・）
しかーし、TeamsのPower Appsでは、テーブルが作成できてそこにデータを格納できるというではありませんか！！

というわけで、テーブルを作成。
作り方は、列をどんどん追加していくだけなので至極簡単。

・・・なのですが、
https://docs.microsoft.com/ja-jp/powerapps/teams/create-first-app#paste-the-copied-data-into-the-table
ここの「コピーしたデータをテーブルにはりつける」ができないんです・・・・(´;ω;｀)
~~200件弱くらいあるので、ポチポチ入れていくのはイヤ・・・・どなたかご教授くださいm(__)m~~

FacebookのPower Appsのユーザーグループで質問をさせて頂いたところ、@yamad365大先生がご教授くださいました！！神はいる！！

以前はコピペできたようなのですが、何故かできなくなったそうです・・・

「Dataverse for Teams の画面で「ビルド」→「テーブル」の画面にいって、該当テーブル三点（…）クリック→[データ] → [Excel でデータを編集]ってやると、Excelファイルで直接データが操作できると思いますのでお試しくださいませー。」

とご教授頂きましたので、
![スクリーンショット 2021-03-16 182822.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221359/8f4679de-39ea-8fb1-0392-8fec4bd7feba.png)
[Excel でデータを編集]ってやってみると、Excelがダウンロードフォルダにダウンロードされます。

ダウンロードされたExcelを開くと、Power Appsのアドインがインストールされていない場合にはインストールせよ的なメッセージが右側に表示されるので、インストールします。
インストールされている場合にはこのような表示になるかと思います。
![スクリーンショット 2021-03-16 183124.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221359/624dd1d6-0b13-b937-9de5-f69f99bdb0e8.png)
シート上にデータを追加して、右下のアドイン窓の「Publish」をクリックすると、データがUpされます！

これで200件を泣きながらポチポチやらずにすみました・・・・！！
@yamad365大先生、本当にありがとうございました！！
####③作成したテーブルをデータ接続
アプリは作成するとデフォルトはこんな画面になっているので、右側の「データソース」から作成したテーブルを選択します。
テーブルを作成する以外にも、フツウのPower Appsのデータコネクタはあるようなので、そこからデータ追加して接続してもいけるかと。
![スクリーンショット 2021-03-16 162228.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221359/86ebc1a9-4e8b-35e2-eb99-ba31ed2557f2.png)

####④ギャラリーにSearch関数を使って検索機能をつける
こちらのサイトを参考に、
https://www.geekfujiwara.com/tech/337/#gsc.tab=0
左側のギャラリーの上に検索用のテキストボックスを配置し、ギャラリー内を検索できるようにしようとしたのですが・・・


手順としては
①検索用のテキストボックスを挿入
②ギャラリーのItemsにSearch関数を使って数式を入力
なわけなのですが、
![スクリーンショット 2021-03-16 163629.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221359/3f84c09d-ca9a-fa6f-ea81-c5c0b358cf77.png)
こんな風に怒られるのですよ・・・・(´・ω・`)
いや、ちゃんとあるんですよ、件名っていう列。だってデフォの列なんですから。

えー・・・と思って、候補を表示してみたら、
![スクリーンショット 2021-03-16 163937.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221359/e5370e97-16a9-a408-8c4e-767312f0826e.png)
こんなことになってるですよ・・・・。
列名に自分が入力したのは表示名で、名前は勝手につけられているのですよ・・・・
これって、日本語で入力したからですかね・・・と思って、列名を英語にしたら
![スクリーンショット 2021-03-16 165339.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221359/83f2d410-3df7-3667-0ef1-9cdf2973bfc3.png)
ふむふむ、やはりそうでした・・・・

ただ、テーブルを作成するとデフォルトで「件名」っていう列があるので、それはイミフな英数字の羅列（一番上の候補）になっちゃいますね・・・
デフォで「件名」って列があるから日本語OKかと思ったのですが・・・ここら辺ちょっとなんとかして欲しいですね・・・。

####⑤Teamsに公開
そんなこんなでアプリを作成して、完成したら右上の「Teamsに公開」をポチっとなすると、チームのタブに追加されて使用できるようになります！

##Dataverse for Teamsのテーブルのデータをソースにして、Power BIでレポートを作成
さて、アプリができたら、そのデータをPower BIでレポートアウトします。

参考にした公式はコチラ。
https://docs.microsoft.com/ja-jp/powerapps/teams/view-table-data-power-bi

ほぼこちらの手順通りなのですが、若干違っていた部分があり四苦八苦したので、その部分をメモしときますね。

####①データ取得
Power BI側でデータを取得する際に、公式では
![スクリーンショット 2021-03-16 190021.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221359/bf0bf287-e141-4db5-b67c-a8aa8c351937.png)
と記載されているのですが、現状はこうなっております。
![スクリーンショット 2021-03-16 194450.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221359/3a10382a-fbab-2a1b-b279-d6e19663f1f1.png)
・・・ど、どれ？？？

正解は「Dataverse」でした。
「環境のドメイン」には公式の通りのURLを入れます。

そうすると、そのチーム内のデータが表示されるのですが、デフォルトで作成されるものがワンサカあるっぽく、しかもまたしても日本語問題が・・・
![スクリーンショット 2021-03-16 195054.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221359/c092e770-3e2c-c195-9f9b-1c69b10f9eb6.png)
テーブル名、テーブルの列名は日本語は避けた方がよさそうです・・・。

テーブルを選択してデータを読み込んだら、あとは通常のレポート作成と同じ！・・・と思ったらもう1点困ったことが・・・

作成者の列を選択肢にしているのですが、どうやらPower BI側で選択肢を読み込んでくれない模様です・・・・(´;ω;｀)
プレビュー機能だから仕方ないのでしょうか・・・？？


####②Teamsに公開
レポートを作成して、どこかのワークスペースに発行したら、Teamsにタブとして追加することができます。

※補足追記
弊社環境はPower BI Premiumです。
Premium環境でない方は、Power BI Proライセンスのある人にしかレポートは共有できません。

ただ、レポートをインポートモードにした場合、アプリで入力したデータはすぐには反映しないので、Direct Queryモードにすれば即時反映するかな？と思ってデータ接続モードをDirect Queryにしてみたのですが、
![キャプチャ1.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221359/f0342b37-7ea7-8da4-3afc-301036836aca.png)
なんかこんなこと言われた上に、このまま発行したら、Teams側でレポートが表示されなくなってしまいました・・・・(´;ω;｀)

Power BIサービス側でもこんな感じ・・・・
![スクリーンショット 2021-03-17 143623.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221359/5e04b7df-118d-cfed-aa1a-7d2c0bfa2a96.png)

実はDirect Queryモードでレポートを作成したことがないので、作り方が悪いのかも・・・。

##まとめ（？）

●Dataverse for Teamsのテーブルは、直接コピペはできない。「Excelでデータを編集」から行う

●Dataverse for Teamsのテーブル名、列名は日本語は避けるべし

●Dataverse for TeamsのテーブルをPower BIで読み込む際は、
「Power Platform」>Dataverse

●Dataverse for Teamsのテーブルの選択肢の列は、Power BIで読み込めない模様

●Dataverse for TeamsのテーブルをDirect Queryモードで接続すると、Power BIサービス側でモデルの読み込みができない。作成方法が悪いのかもしれない。


・・・長くなってしまいましたが、やってみた感じを備忘メモ的に記事にしてみました。もうちょっと色々やって経験値を上げていきたいです。