PowerAppsでN:Nのドロップダウンを実装する方法(PCFギャラリー)|モデル駆動型
PowerAppsのリレーションシップの中に、N対Nの関係性があります。
この関係性のテーブル同士を、モデル駆動型アプリについてそれぞれ関連づける必要があります。
今回は、PCFギャラリーを使用して、モデル駆動型のアプリに対して、N対Nのドロップダウンを実装する方法について紹介します。
目次(クリックで読みたい部分にジャンプできます)
実装する完成系
実装の完成系は、
以下のようなドロップダウンから選択して、タグのように表示させることができる表示の方法です。
2つのテーブルにあるレコードに対して、それぞれ結びつけています。
レコードの関係性は、N対Nです。
リレーションシップの確認方法
テーブルとテーブルの関係性(リレーションシップ)を確認するには、
PowerApps左メニューのテーブル
↓
対象のテーブルを選択。
↓
スキーマの中の「リレーションシップ」を開きます。
この中で、調べたいテーブル同士の関係を確認することができます。
今回は、テーブル同士の関係性が、多対多限定の実装になります。
実装する全体の流れ
では、実装していくわけですが、
その前に実装する全体の流れを確認しておきましょう。
- PCFギャラリーからzipファイルをダウンロード
- 「TagPickerComponent_Display_Key」に引数を当てはまめる
これで実装が完了です。
初めてPCFギャラリーを使用する方でも、問題なく始めることができますので、最後まで一緒に頑張りましょう。
①PCFギャラリーからzipファイルをダウンロード
では、PCFギャラリーから、ソースコードをダウンロードします。
今回は、以下のページのGithubからソースコードをダウンロードします。
GitHub - opc-cpvp/OPC.PowerApps.PCFControls
使用するのは、TagPickerComponentという部分です。
zipファイルのダウンロード手順
zipファイルをダウンロードするのは、githubのReleaseページのSolutionファイルです。
以下のURLのページからも遷移できます。
zipファイルがダウンロードできたら、
それをPowerAppsにインポートします。
インポートするには、以下の手順に従ってください。
zipファイルのインポート手順
- PowerAppsを開き、左メニューのソリューションを開きます。
- 上部の「ソリューションをインポート」をクリックし、先ほどのzipファイルをアップロードしてください。
あとは、手順に従っていけば、インポートが始まるはずです。
しばらく待てばインポートが完了します。
インポートが完了したら、次の工程に進みましょう。
②「TagPickerComponent_Display_Key」に引数を当てはまめる
では、ここからインポートしたものを使用できるようにしていきます。
あなたが実装したいと思っているモデル駆動型のアプリを開いてください。
モデル駆動型のフォームを開きます。
コンポーネントを準備する手順
- フォームにコンポーネントを追加するときに、「コンポーネントをさらに取得」を押下します。
そうするとインポートした全てのコンポーネントが出てきます。
その中で「TagPickerComponent_Display_Key」を探し追加します。
ここまででコンポーネントを準備することができたので、
コンポーネントをクリックしてみると、引数を求められます。
引数には、以下の項目を入力してください。
TagPickerComponent_Display_Keyの引数
tagData_Display_Key
1つ目の引数「tagData_Display_Key」は
現在表示しているフォームに紐づくテーブルのカラムを指定できます。
全てを指定できるわけではありませんが、いくつか選択肢が出てくるはずです。
一意の値を設定するようにしましょう。
relatedEntity_Display_Key
relatedEntity_Display_Keyには、現在のフォームに紐づくテーブルとは別の、もう一つのテーブルの論理名を入れます。
論理名は、テーブルのオプション画面から取得することができます。
relationshipName_Display_Key
relationshipName_Display_Keyには、
二つのテーブルのリレーションシップの「リレーションシップ名」が挿入されます。
relationshipEntity_Display_Key
relationshipEntity_Display_Keyには、同じくリレーションシップの「関係テーブル名」が入ります。
1つ前の引数(relationshipName_Display_Key)を参考にして入れてください。
ここまでが、必須の引数になります。
もう一つ引数がありますが、それは任意の項目なので無視で大丈夫です。
ここまで引数を入れれば、あとは「完了」を押すと、コンポーネントが実装されます。
まとめ
今回は、PowerAppsのモデル駆動型において、N対Nのデータにドロップダウンを設定する方法について紹介しました。
PCFギャラリーはモデル駆動型を拡張するのに強い味方です。
今回の実装を元に他のものもぜひ試してもらえらばと思います。
では、また。