こんにちは。開発チームの加藤です。
今回はMicrosoftPowerAppsとデータベースを繋げる方法を中心に簡単なアプリの作り方をご紹介します。
PowerAppsはMicrosoft365の他のサービスと連携できるのが特徴の一つです。その中でもコネクタという接続ツールを使いエクセルやMicrosoftListsと連携することで、それらをデータベースとして使用することが可能になります。
データベースに連携することでより業務プロセスをデジタル化し、データの入力から活用までを自動化・効率化できます。
一方、データの処理件数の制限やライセンスのコストを考えると大規模データの処理には向かないことや、属人化しやすく複雑にし過ぎると運用管理が難しいというというデメリットもあります。
ちょっとしたことをシンプルな仕様で作るのには適していますので、ぜひご活用ください。
PowerAppsの始め方は下記コラムをご覧ください。
データベースを作る
データベースはエクセルやMicrosoftListsなどで作ります。
CSVで作っておくとMicrosoftListsに変換するのも簡単ですのでお勧めです。
*CSVとMicrosoftListsの文字コードが異なる場合、日本語は文字化けする可能性がありますのでご注意ください。
今回はCSVで作成したこちらの表でご説明します。
データベースとなる部分はテーブルにする必要があり、ファイルはOneDriveの任意の場所に保管します。PowerApps側からこのファイルのテーブルに接続しデータを読み込む形になります。

データベースの接続
データの追加からデータファイルを接続させていきます。
タブの「データの追加」またはツリービューからデータを追加していきます。

今回はOneDriveに置いたEXCEL(CSV)ファイルですので、コネクタはEXCEL Online(Business)になります。接続するアカウントを選び(初めての場合は追加)、ファイルを選択します。
MicrosoftListsの場合はSharePoint上に格納して、コネクタはSharePointを選び接続します。

ファイルを選択するとその中にあるテーブルの一覧が表示されます。呼び出したいデータが入っているテーブルを選びます。
その際、識別子(ID)の扱いについて聞かれますので、自動生成したIDを使うのか、EXCELテーブルの一意の列をIDとして使用するのか選びます。

自動生成したIDを使うと、自動的にEXCELテーブルにIDが追加されます。

接続完了するとこのように表示されます。

データを読み込む
今回はアプリを開く際に都度データベースを読み込む設定にします。
ツリービューのAppを選び、プロパティ設定でOnStartに式を入れます。
ClearCollect(coPrice,"読み込むテーブルの名前")
CleaCollectでアプリに一時的に保存しているデータを消して再度読み込ませます。
colPriceはアプリ内の一時的なデータの意味です。そこに接続させたデータベース内のデータを保管します。
基本的にPowerAppsの関数は候補が自動的に表示されますので、その中から選びます。

OnStartを実行してデータを読み込みます。この作業をしないと制作画面でデータを引き出されず何も表示されないことになります。

ドロップダウンで確認
挿入からドロップダウンのコントロールを選び入れます。
プロパティはItemsにcolPriceを入れ、Valueでデータベースの表示したい列を入れます。

データ接続が正常にされているとアプリを再生させたときにドロップダウンにデータベースの列の一覧が表示されます。
よく「OnStartを実行します」をクリックするのを忘れてここの表示が空白になることがあります。
もしデータベース側を変更した時は、データ>・・・>最新の情報に更新でデータを新しくし、「OnStartを実行します」で再度データを読み込みます。

最後に
いかがでしたでしょうか。
今回はPowerAppsとデータベースを繋げる方法をご紹介しました。PowerAppsとデータベースを別にすることで数値の変更があった場合でもPowerApps側をいじらず、データベースのEXCELやListsの変更だけで対応が可能です。
次は接続したデータベースからデータを呼び出して表示する簡単なアプリの作り方のご紹介です。












