第9号(2023年05月09日)

PowerAppsのキャンバスアプリについて

はじめに

先日、社内の技術発表に向けてPowerAppsのキャンバスアプリを調査致しました。
実際にアプリを作成してみた上でのメリット・デメリットなどをご紹介いたします。

PowerAppsとは

Microsoft社様より提供されているアプリケーション開発ツールです。ラベルやボタンなどの部品を配置することで画面を
作成していき、配置した部品に対してExcelのような関数を使用して処理を記述するため、ローコードでの開発が可能です。

ライセンスについて

ライセンスについては上記の通りです。
※参照元 Microsoft 公式サイト | Power Apps の価格 / Microsoft 公式サイト | Microsoft Power Platform のライセンスの概要
サブスクリプションプランと従量課金プランの主な違いとしてはアプリの開発・実行数やMicrosoftDataverse(クラウド型データベースのようなもの)
のデータベース容量とファイルストレージ容量が違います。そのほかの基本的な機能については違いはないため、アプリを展開する規模に応じて
適したライセンスを選択いただければと思います。
有償プラン以外にもMicrosoft社の365サブスクリプションサービスにライセンスが付属していますが、作成できるアプリはキャンバスアプリのみで
扱えるデータソースにも制限があるため個人での利用に留まるライセンスであると思います。

キャンバスアプリのメリット

・プログラミングの知識がなくてもアプリを作成できる
PowerAppsについて初めに説明しましたように、アプリを作成する際は画面に必要とする部品を配置していき、処理は独自の関数を使用します。
そのためプログラミングの知識が無い方でも関数の使い方さえ覚えてしまえば比較的簡単にアプリを作成することができます。
・低コストかつ短時間で作成できる
PowerAppsはクラウドサービスのためWeb上でアプリを作成を行います。そのため、自身で開発環境を用意する必要がなく、低コストかつ
短時間でアプリの作成をおこなうことができます。
・自分が本当に必要とするアプリを作成できる
PowerAppsを利用する最大のメリットは自分自身でアプリを作成できる点だと思います。自分で作成するということは自分が本当に必要とする
機能をアプリに反映させられるため、開発者と利用者の間で起こりうる仕様違いを防ぐこともできるでしょう。
・様々な端末から利用できる
PowerAppsで作成したアプリはWeb上で動作するためPCやタブレット、スマートフォンなど端末の種類を問わずアプリを利用することが可能です。
・連携できるデータソース・サービスが豊富
PowerAppsには外部のサービスと連携するための「コネクタ」というものが存在します。このコネクタの種類が非常に豊富で、これを利用することで
簡単にデータベースやメールソフト、クラウドストレージなど様々なサービスと連携させることができます。詳しくはこちらを確認ください。
ただし、コネクタにも「標準コネクタ」と「プレミアムコネクタ」があり、プレミアムコネクタは有償ライセンスでのみ利用可能です。

キャンバスアプリのデメリット

・アプリの一般公開はできない
PowerAppsによって作成したアプリは組織内での利用が基本となります。外部の方に利用して頂く場合にはゲストユーザーとして追加する
必要があり、相手側にもライセンスが必要となるため、不特定多数の一般向けアプリの作成には向いていません。
・複数人での開発は行えない
誰かがアプリを編集している間はそのアプリは他の方が編集することはできません。もし、複数人でアプリを作成する場合は作業する時間を
ずらすなどの工夫が必要になります。
・画面デザインが単調になる
既存の部品を配置して画面を作成するというのはアプリ開発の初心者や時間を短縮したい方にとってはおそらくメリットでしょう。
しかし、裏を返せば凝った画面デザインができないため、どうしても単調なデザインになってしまいます。
・委任機能に注意が必要
PowerAppsではデータベースからデータを取得する際、委任という機能が存在します。この機能は取得するデータの抽出をデータベース側で
行ってもらうための機能になります。
この委任が機能しない場合はデータベース側での抽出が行われず、PowerApps側で抽出することになります。その際、アプリに負荷がかかり
過ぎないよう、取得するデータ件数に上限がかけられています。デフォルトの設定で500件、最大で2000件まで設定できます。
つまり、委任が機能しないデータ取得を行うと最大でも2000件までのデータしか取得できず、自分が望むデータが取得出来なかったり、
取得したデータの集計が実は正しくなかったりといろいろと問題が発生する可能性があります。
そのため、アプリで使用するデータソースが委任に対応しているか、またPowerAppsの関数によっても委任に対応していないものがあるため、
詳しくはこちらを確認いただき、アプリを作成する際には注意してください。

まとめ

PowerAppsでアプリを作成する場合は関数についてある程度勉強すれば簡単なアプリぐらいならすぐに作成できるようになると思います。
開発環境の用意が必要なく、アプリの利用者自身がアプリの作成を行うため費用や時間といったコストを抑えられるのが最大のメリットであり、
Microsoftの製品は勿論のこと、他のサービスとも簡単に連携できるのもPowerAppsの強みといえるでしょう。
ただし、紹介したようなデメリットもあり、開発経験豊富な技術者がわざわざ利用する必要はないように感じたため、アプリ開発初心者の方が
社内業務を効率化させるために必要なアプリを作成するのに向いているサービスだと思いました。
一覧へ戻る