PowerAppsはさまざまなサービス/データソースを利用して、コーディングレスでビジネスモバイルアプリ/Webアプリを作成するためのツールだ。
PowerAppsはコーディングの必要なく、モバイルアプリ/Webアプリを作成するためのツールだ。PowerAppsを使うと、さまざまなクラウドサービスにあるさまざまなデータソースに接続し、そこに格納されているデータを表示/操作するアプリを非開発者が簡単に作成できる。
作成したアプリはiOS/Android/Webブラウザでも動作し、組織内でアプリを共有することも可能だ。このことから、組織内でデバイスの種類やユーザーの現在位置を問わずに迅速にビジネスデータにアクセスするためのアプリ作成にもってこいのツールといえる。
以下では、筆者が個人的に契約しているOffice 365 Businessのアカウントを利用して動作を確認している。
アプリの作成には「PowerApps Studio for Windows」か「PowerApps Studio for Web」を使用する(後者は現在プレビュー版であり、機能面で違いがある)。本稿では「for Windows」を利用している。
アプリ作成時にコーディングは不要であり、ビジュアルデザイナーを用いて、画面に表示するコントロールを設置したり、それらのプロパティを個別に指定したりしていくだけだ。さらにテンプレートが数多く提供されていて、データソースからアプリを自動生成した場合には画面の設定(コントロールの配置など)の手間を大幅に省ける。
PowerAppsで作成するアプリはOffice 365、Dropbox、Twitterなどのサービスに接続可能だ。詳細については「Connection list」ページを参照されたい。また、クラウドストレージ(OneDrive、Dropboxなど)に保存されているExcelワークシートなどを基に自動的にアプリを生成することが可能だ。
例えば、Dropboxに、以下に示すExcelファイルがあったとする(アプリで使用するデータはテーブル化しておく必要がある)。
このワークシートから自動生成したアプリの実行画面を以下に示す。
上に示したように、自動生成されたアプリは、データの一覧表示(左)/詳細表示(中央)/編集または追加(右)の各操作を行う3つの画面で構成される。つまり、基になったExcelドキュメントのデータ構造に対応して、基本的なデータ操作を行うひな型のアプリが簡単な操作で作成可能だ。
PowerAppsではMicrosoft Flowで作成されているフロー(の一部)も利用できる。ここでいう「フロー」とは、さまざまなサービスやアプリを連結し、何らかの事象をトリガーとして、それら連結されたアプリやサービスを順次実行しながら、ファイルの同期、データの取得、通知の発行などの処理を行うワークフローのことだ。
以下はPowerAppsで作成したアプリで何らかのコントロールが選択(クリック)されたら、OneDrive上のExcelワークシートにメッセージを挿入するというフローだ。本稿執筆時点(2016年8月18日)ではフローの記述はPowerApps Studio for Windowsでは行えず、PowerAppsのWebサイトから行う必要があるようだ。
フローの最下部にある[MESSAGE]というのは、ワークシート内のテーブルに定義されている列のこと(ここでは列は1つだけ)。そして、ここで指定している「Insertrow_message」の値は、PowerAppsで作成するアプリ側で設定する。このフローを利用しているアプリを以下に示す。
作成したフローをPowerAppsで作成したアプリに取り込むには[Action]タブにある[Flow]ボタンをクリックする(上の画面の(1))。これにより、右側のペーンにフローが一覧されるので必要なものを選択する(同(2))。後はこれを利用するだけだ。ここではボタンが選択(クリック)されたときに、その時間とテキストボックスに入力された文字列を連結してフローに渡すことにする。
これを行っているのが、上の画面の(3)の部分だ。「OnSelect」プロパティの値を「HelloFlow.Run(Text(Now(), "yyyy/mm/dd hh:mm:ss") & ": " & TextBox1.Text)」にしている。
アプリを実行してボタンをクリックすると、作成したフローが実行され、OneDrive上のExcelファイルに時間とメッセージが挿入される。
このように、アプリとは独立した何らかの処理をフローとして記述しておき、これを複数のアプリから共通的に使用できる。実際には何かの処理を行ったら、あるいは興味深い考察が得られたら、同僚にメールを飛ばしたり、Slackにメッセージを書き込んだりといったことができるだろう。
PowerAppsはコーディングレスで、モバイルアプリ/Webアプリを作成するためのツールだ。さまざまなサービスに接続し、さまざまなデータソースを利用して、ビジネスアプリを迅速に作成できる。また、フロー機能と組み合わせることで、一連の処理を自動実行することも可能だ。なお、本稿執筆時点(2016年8月18日)では、アプリ開発には「職場、学校用のMicrosoftアカウント」が必要である。
Copyright© Digital Advantage Corp. All Rights Reserved.