PowerApps を待ちながら、特徴を簡単に整理してみた

この投稿は Office 365 Advent Calendar 2015 に参加しています。

まだ触ったことがないままで、PowerApps について整理してみました。
名前だけ先行してしまった感のある PowerApps について、興味を持ってもらえればうれしいです。


(念のため) PowerApps に触ってみたい方のために

PowerApps は現在 Preview です。
利用するためには、招待依頼を送って招待状が届くのを待つ必要があります。私もまだ招待状を受け取っていません。

これを機に触ってみようかという方は、

https://powerapps.microsoft.com/ja-jp/

で招待依頼をどうぞ。

2015-12-14 0-27-17


PowerApps は、1) 既存のデータソースを 2) 開発者以外でも 3) 簡単にアプリ化できる のが特徴です。

データソース

全てのプランに共通のデータソースは、オンラインの Excel ファイル、SharePoint Online を含む Office 365 のデータ、他社の CRM データです。
Enterprise プランでは、これにオンプレミスのデータ (SQL Server や CRM) が加わります。
(どちらも、製品版リリース時にどうなるかは不明ですが)

2015-12-19 19-05-52

CRM のデータや Excel で台帳管理しているデータを、見やすく表示したり編集をしたりするツールだと言えそうです。汎用の開発ツールではありませんが、用途や目的がはっきりしている分、扱いやすいと思います。

”Power” つながりで言うと Power BI がありますが(ちょっと無理矢理)、データへの向き合い方は異なっています。
PowerBI はデータの集計・分析やデータの視覚化を指向しているのに対して、PowerApps は対象のデータを安全に扱うツールを目指しているようです。
棲み分けは簡単です。

アプリの配布やアクセス権設定

データソースの種類から分かるとおり、PowerApps が主に対象とするのは社内で管理しているデータです。アプリを共有したい相手は、社員(か特別に許可された取引先などの社員)でしょう。

作成した PowerApps アプリはファイルベースのアプリケーションなので、OneDrive for Business や SharePoint Online にファイルを置くのが一般的な形になるので。

アプリを通して関係者外にアプリを利用されないようにアクセス権の設定が必要です。PowerApps は裏側に Azure AD がいるので、アプリを共有する側が、相手のメールアドレスと許可するアクセス権(参照を許可、または変更まで許可)を指定することで簡単にアプリケーションを共有できます。

2015-12-19 21-39-25

https://powerapps.microsoft.com/ja-jp/tutorials/share-app/

アプリ開発の手順

PowerApps の開発は、主に以下の手順で進めます。

  1. データソースを選択
  2. 自動生成された画面のレイアウトをカスタマイズする
    2015-12-19 22-04-512015-12-19 22-05-51
  3. テーマ(背景やフォントの色など)をカスタマイズする
    2015-12-19 22-07-01

https://powerapps.microsoft.com/ja-jp/tutorials/get-started-create-from-data/

凝ったことはできませんが、手順が一般化しているので、これなら本当に誰でもアプリを作れそうですね。


プロ開発者にとっての PowerApps

まずデータソースを決めて、自動生成された画面をカスタマイズするのが一般的な開発手順です(フルスクラッチで作ることもできますが)。
プロの開発者には物足りないかもしれませんが、いくつか使い道はありそうです。

プロ開発者にとって PowerApps との付き合い方は、こんな感じでしょうか。

  • お手軽アプリをサクッと作る・・・「誰でも簡単にアプリ開発」なので、プロならばさらに簡単に作れるはず。がんばらなくてもアプリができるので、サクッとアプリを作って業務改善のお手伝いができます。
  • Logic Flow ・・・PowerApps は、トリガーに対して何かアクションを実行する Logic Flow を作れます。タイマー実行が可能なので、ちょっとしたバッチ処理なら Logic Flow で済ますことができるかも。
  • カスタム API ・・・PowerApps は Swagger 2.0 API (=RESTful な、データ操作用の API)に対応しています。既定のデータソース以外を対象とするカスタム API を開発すれば、CRM や Excel、SharePoint Online のリストに限らず社内の多くのデータを対象にできます。カスタム API は Visual Studio での開発が必要なので、プロ開発者にしかできないです。

想像だけで書いたので、概要レベルのまとまりのない文章になってしまいました・・・。興味を持った方はぜひ 招待依頼 を出して PowerApps に早く触れるようにしてみてください。

私も招待状が届いたら、改めて PowerApps について投稿します。

LT 「 Project Siena で誰でも Office 365 開発者 (前編) 」 (Japan SharePoint Group 勉強会 #17 – 2014/12/13) #jpsps

 

12月13日(土) に開催された Japan SharePoint Group 勉強会 #17 で LT 枠を 1コマいただきました。

テーマは

Project Siena で誰でも Office 365 開発者 (前編) 

です。

 

Project Siena を使うと、SharePoint Online のカスタムリストを参照するアプリケーションを非常に簡単に開発できます。

  1. Project Siena が対応しているデータソースの中から SharePoint Online を選択してアドレスを入力
  2. 認証情報を入力→この後は数十秒程度時間がかかります
  3. アプリの認証(Azure AD のコンセント UI)
  4. あとは Project Siena の開発手順通り。ギャラリーを配置して、ラベルなりテキストボックスなりを配置

これだけです。

LT 資料の後半にも参考情報として操作手順のスクリーンキャプチャーを貼っていますので、簡単に分かると思います。

プロの開発者が本気のアプリ開発で使うツールではありませんし、Visual Studio の代わりになるものでもありませんが、非開発者の人にとって、また開発者でもサクッと済ませられるようなお手軽ツールを作ってあげる場合などに、便利なツールです。

無償ですし、ぜひダウンロードして一度触ってみてください。

http://aka.ms/projectsiena

が製品サイトです。


“前編” って何よ、という話ですが、すでに このブログで後編を公開 しているから。
公開の順番は逆なんですが、アプリ開発の手順としては今回の LT が SharePoint Online のリスト参照なので順番としては先。前のブログ記事はリストの更新系の処理について書いたので後編、というわけです。
LT の5分という時間を考えると、さすがに更新系の処理は紹介するのが無理なので逆にしました。

それにしても LT はメチャメチャ緊張しました。人生で一番緊張する登壇だったかも。
(手が震えて仕方なかった /笑)

Project Siena で誰でも Office 365 開発者 (後編)

この記事は Office 365 Advent Calendar に参加しています。

 

11月に公開された Project Siena Beta Refresh (November 2014) は SharePoint Online のリストを操作することができます。 Siena らしくとても簡単に作れる・・・はずなんですが、情報量が少ないんですよね。分かってしまえば簡単ですが、しばらく悩みました。

そこで本稿では SharePoint Online のリスト更新の方法を紹介します。

「そもそも、Projectb Siena って何?」という方は、ひとまず開発ツールの一つだと理解してください。操作が簡単で、プロの開発者でなくても使えます。

 


■本稿で対象とするリスト

本稿では SharePoint Online 上にあるリストを使用します。Siena にはリスト自体を作成する機能はないので、事前に SharePoint Online にリストを用意します。

ここでは “Animals” というカスタムリストにしました。
必要なカラムは2つです。[タイトル] 列は [日本語] に列名を変えます。さらに [英語] という名前の 1行文字列 を追加します。
(今になって考えたら和英辞典でもよかったみたいです /笑)

2014-12-09 21-23-22

 


■データソースの追加~リスト参照

データソースの追加から SharePoint Online 上のリストの参照までの手順は以下の通りです。
近いうちに説明動画も公開します。どうしてもやり方がわからないという方は、しばらくお待ちを。

  1. データソース画面で [SharePoint Online] を選択して、SharePoint Online の URL を指定
  2. 認証に成功すると、指定したサイトのコンテンツ名が表示されるので対象とするリストを指定する。ここでは “Animals” をチェック
  3. スクリーンにビジュアルを追加。ここではテキストギャラリーを配置
  4. ギャラリーのデータセットを設定。ここではもちろん “Animals”
  5. ギャラリーアイテムの各テキストに表示するメンバーを指定します。
    今回は 2個のテキストにそれぞれ “ThisItem!日本語“、”ThisItem!英語” を指定します。

 

2014-12-08 21-52-052014-12-08 21-59-022014-12-08 22-05-282014-12-08 22-07-40

2014-12-08 23-54-532014-12-08 23-58-172014-12-08 23-58-26

 


■既存のリストアイテムの更新

今日の本題である、更新系の処理について。

Project Siena では、既存のリストアイテムを変更する場合も新規のアイテムを追加する場合も、2段階で SharePoint Online を更新します。

  1. データセットの更新・・・データセットとは、対象のリストのローカルキャッシュです。Siena では、まずはデータセットに対してデータを変更します。
    この時点ではデータセットの内容と SharePoint Online 上のリストの内容には差異があります。
  2. データソースに反映・・・データセットに加えられた変更は任意のタイミングで SharePoint Online に反映します。これでリストの更新が完了します。
    Siena ではユーザーが明示的に “SharePoint の更新” ボタンを選択(クリック/タップ)する必要があります。

2014-12-09 0-46-05

 

実際の操作は以下の通り。

1. ラベルとテキストとをスクリーンに配置
ラベルにはギャラリーの選択項目の “日本語” を、テキストには選択項目の “英語” をそれぞれ指定します。

Gallery1!Selected!日本語
Gallery1!Selected!英語

日本語をラベルにしたのは変更不可にするためです。このあとの操作で使う UpdateIf の条件としてラベルの値を使います。

2014-12-09 0-33-59 2014-12-09 0-34-22

 

2. ボタンを配置

データセットの更新用に、ボタンを一つ配置します。
[選択時] には、

UpdateIf(Animals, 日本語=UpdJapanese!Text, {英語:UpdEnglish!Text})

と入力します。Excel ライクな記述なので、Excel 関数を知っている人には馴染みやすいかと思います。
関数の意味は、

「Animals の日本語フィールドの値が UpdJapanese (先ほど配置したラベル)の Text の値と同じアイテムを探して、そのアイテムの英語フィールドに UpdEnglish の Text の値を代入してね」

という意味です。
([選択時] の日本語訳が少し分かりづらいですが、英語だと “OnSelect” なのでここには選択時のアクションを記述するんだなというのが直感的に理解しやすいですね。)

2014-12-09 0-34-442014-12-09 0-35-00

 

3. “SharePoint の更新” を配置

最後に “SharePoint の更新” を配置して、データソースに “Animals” を指定します。データソースへの反映に必要なのはこれだけ。

2014-12-09 0-44-50

 


■新規のリストアイテムの追加

リストアイテムの追加も、やはり 2段階で操作します。既存のアイテムの更新と同じです。

  1. データセットにアイテムを追加・・・Collect 関数を使います。既存アイテムの更新も新規アイテムの追加も、任意の順番でデータセットを更新してから、まとめてデータソースに反映できます。
  2. データソースの更新・・やはり “SharePoint の更新” ボタンを選択して SharePoint Online に登録します。

こちらも実際の操作を見てみましょう。

1. テキスト 2つをスクリーンに配置

“日本語” を入力するテキスト、”英語” を入力するテキストを配置します。

2014-12-09 21-52-29

2. ボタンを配置

データセットにアイテムを追加するために、ボタンを 1つ配置します。
[選択時] には、

Collect(Animals, {日本語:InsJapanese!Text, 英語:InsEnglish!Text})

と入力します。「Animals データセットに { ~ } のアイテムを追加してね」 という意味です。

2014-12-09 21-53-052014-12-09 21-53-51

 

3. “SharePoint の更新” を配置

リストアイテムの追加の場合も “SharePoint の更新” が必要です。
既存アイテムの更新の手順で既に “SharePoint の更新” を配置していれば、改めて配置しなおす必要はありません。

 


■既存のリストアイテムの削除

既存のリストアイテムを削除するには RemoveIf 関数を使用します。手順は、既存アイテムの更新と同様なのでここでは省略します。

 


長い記事になってしまいました。おつかれさまでした。(お互いに /笑)

ところで、「前編」が見当たらないことに気付いた方もいるかもしれません。なにか事情があるんだろうなと思って、数日間だけそっとしておいてください。
12月13日くらいに理由が分かる かもしれません。
(追記: Japan SharePoint Group 勉強会 #17 で LT やりました。資料公開しました。)

Project Siena Beta Refresh (November 2014) がリリースされました。目玉は Office365 対応

内容に間違いがあったため修正しました。(11/29)
SharePoint Online にも対応しています。

 

先日 Project Siena のリフレッシュ版ベータが公開されました。

Project Siena Beta Refresh (November 2014): Bringing the power of productivity to business user created apps 

今回のアップデートの目玉は Office 365 対応です。

 

「よしっ!」 と思って触ってみました。
一見 Exchange Online のように見えたのですが、ちゃんと SharePoint Online にも対応しています。 (SharePoint Online についてはまた別の記事で)
Office 365 対応といえばその通りなんですが、今回は Exchange Online の対応です。SharePoint Online はまだ対応されていません。(ちょっと残念) Office 365 対応の第一歩と思って、今のところ良しとしますか。

 

この記事は Exchange Online の範囲ですが、 Project Siena  らしく非常に簡単にアプリが作れます。Outlook もどきは2分程度で開発できます。
(実際には認証や Office 365 の接続待ちがあるので 2分半といったところです)

2014-11-23 14-21-25

 

開発手順を動画にしました。
ビジュアル (コントロール) の位置・サイズの変更の他には、データバインドを3か所変更するだけです。Exchange Online に接続するアプリが簡単に開発できることを理解してもらえると思います。

LT 資料 「Project Siena 的 Mobile Services 利用」を公開しました (JAZUG 4周年総会 a.k.a. 日本DCオープン記念後夜祭 カッコカリ 2014年9月20日(土) 開催)

9月20日 (土) に開催された JAZUG 4周年総会に参加してきました。
当日は東京とあわせて、福岡、名古屋、仙台でも同時開催という盛況なイベントでした。

で、そこで5分間時間をいただいて LT をしました。
Project Siena 的 Mobile Services 利用」  というタイトルです。Azure ネタに見せかけて Project Siena について喋りました。
中味が薄くてスカスカな資料ですが、せっかくなので公開します。

分かる人は分かると思いますが、8月の IoT セッションからクライアント部分を抜き出したものです。
今回の LT では時間の都合で省きましたが、 モバイルサービスのデータを Siena にインポートするには zz_config という名前のテーブルを用意する必要があります。zz_config については こちらの資料 を見てください。

なにしろ簡単な Project Siena です。
モバイルサービスをデータソースにすることができるので、サクッとデータを参照・閲覧するには便利なツールです。
本気のシステムにはもちろん力不足ですが、ちょっとしたツールには使えますよ。一度お試しください。

「IoT 入門 ~ .NET Gadgeteer で簡単プログラミング」セッション資料を公開しました(2014年8月30日 “夏祭り!つながる、広がる、IT女子” Windows女子部イベント)

2014年8月30日(土) に開催された 「夏祭り!つながる、広がる、IT女子」(Windows 女子部イベント) にお邪魔してきました。
自分の認識している範囲では私は女性ではないんですがそれでも参加できたのは、1コマセッションを担当させていただいたからです。

「IoT 入門」 というテーマで、そもそも IoT で何?どんな風に使えるの?という話と .NET Gadgeteer + Azure Mobile Services + Project Siena で IoT のデモを行いました。

IoT はインターネットの第三の波であること、.NET Gadgeteer を使えばハードウェアの知識なしに IoT 開発ができることをお話ししました。

学生や非プログラマーがたくさん参加するということで、できるだけ技術的なところに入らずに IoT の面白さをお伝えしたつもりです。参加された方、いかがでしたか?
技術的なところに少しでも興味を持った方は、今回の資料と 先週使った資料 とを覗いてみてください。

足りない部分は、がんばってブログでフォローするようにします。

それにしても、今どきの若い人たち、学生さんはしっかりしてますね。
自分が恥ずかしかったです。彼女たちに笑われないようにがんばらないといけないです。

「初めてでも大丈夫!SharePoint 開発の第一歩」資料を公開しました (2014年5月10日 第8回 Office 365 勉強会)

第8回 Office 365 勉強会/技術ひろば合同開催が5月10日(土) に開催されました。

一コマいただいて「初めてでも大丈夫!SharePoint 開発の第一歩」というタイトルでお話ししました。

当日は開発者が2~3割で、業務に関係ないよという方もいらっしゃったかもしれませんね。
Office 365 / SharePoint をより活用するにはアプリ開発は一つの大事な要素だと思います。アプリを作るにはまずはどうするのか、を概要を理解するお手伝いができたようでしたらうれしいです。

「第一歩」ということで具体的な開発テクニックまで触れることができませんでしたので、ブログでフォローしていきますね。
LightSwitch、クラウドビジネスアプリについては・・・まあいつも通りで(笑)。
“Napa” や ASP.NET の SharePoint 用アプリについてもこれから情報を共有していきます。と言っても、私も勉強中の身です。

SharePoint 2013 になって新しいプログラミングモデルが追加されました。
Web 標準の技術が利用でき、Apps for SharePoint のように利用者がまず使う SharePoint サイトの外で動作するアプリケーションも作れます。従来よりも SharePoint 特有のハードルは低くなってきました。

ぜひ SharePoint 用アプリ開発にチャレンジしてみてください。

 

5月の SharePoint 月間の第2弾、「Office 365 / SharePoint 勉強会~活用・連携編」は5月17日(土) の開催です。
まだ受け付けていますので、Office 365、SharePoint に興味のある方はぜひいらしてください。こちらのページ からお申し込みください。

Project Siena Beta 2 がリリースされています

Build 2014 と Windows 8.1 のアップデートで世間が賑わっている中、失礼します。

全然気付いてなかったんですが、Project Siena  Beta 2 がリリースされていました。どうやら 3月下旬に公開されていた模様。

Project Siena = 簡単な業務アプリを開発するためのツール。ターゲットは Windows ストアアプリであり、Project Siena 自体もストアアプリ。

本当につい先ほど気付いたばかりなのでまだ全然触れていないんですが、目に付いたところを 2点紹介。

アプリバーが格好良くなってます

ProjectSienaBeta2

最初の Beta の時は地味~な感じのアプリバーだったんですが、ちょっと格好良くなりました。

 

・データソースの種類が増えてます

ProjectSienaDataSource

データソースを眺めてみるとなんと Yammer の文字が!
これは面白くなってきました。(Facebook とか BingTranslator なんてのもそそられますが)
残念ながら SharePoint はまだオンプレミスのみで、オンラインには対応していないようですが、Project Siena の方向性が少し見えた気がします。次くらいにはきっと SharePoint Online にも対応してくれるでしょう。(強い期待)
簡単なツールなので、今のうちから触ってみてはいかが?

詳しくは Project Siena のサイト をどうぞ。

「SharePoint 開発ツールの比較」セッションを担当しました (2014年3月22日 MVP Community Camp) #‎MVPComCamp

3月22日(土) に開催された MVP Community Camp 東京会場のカンファレンス(オフラインイベント)東京会場で 1枠いただき、SharePoint 開発ツールについてお話ししました。

LightSwitch (クラウドビジネスアプリ)、Access、Project Siena で SharePoint / Office 365 用のアプリケーションを開発できます。これらがそれぞれ出来ること/出来ないこと、得意なこと/苦手なことを紹介しました。
SharePoint の Web パーツを作ったり CSOM でクライアントを作ったり、という内容は全く触れていません。(InfoPath にも触れていません)
Officd 365 のおかげで中小企業でも SharePoint を使いやすくなったわけですが、当然 SharePoint のカスタマイズなりアプリ開発なりまでは充分な費用をかけられないこともあると思います。そういうケースで高い生産性で社内システム、業務アプリを開発できるといいよね、LightSwitch や Access を使うとそれを実現できるよ、というメッセージをお伝えしました。

LightSwitch の認知度はまだまだですが、それでも少しずつ知られてきて、興味を持ってもらえるようになってきたかなと思っています。やはり Office 365 対応、特にクラウドビジネスアプリの発表以降は肌で感触を感じられるようになってきました。
簡単に開発ができすぎるがために、かえってビジネスになりづらいという開発ツールですが、活用できるシーンは多いと思います。
今回初めてセッションでお話しした Access も SharePoint / Office 365 開発ツールとして非常に優秀です。Project Siena もそう。
これからも LightSwitch, Access, Project Siena の高い生産性を(勝手に)訴求していきたいと思います。

技術ひろばの勉強会では Ustream 配信はしていないのですが、今回はライブ配信、収録をしていただきました。復習やちょっと興味を持ったから聞いてみようかなという方は、ぜひこちらのページで視聴してみてください。

http://www.ustream.tv/recorded/45145052

3月22日(土) は日本各地の MVP Community Camp に参加しませんか

MVP ComCamp

3月17日(月)~22日(土) の1週間、MVP Community Camp なるイベントがあります。

平日の間はオンラインでのセミナーがあり、22日の土曜日は日本各地、アジアパシフィックの各地でのカンファレンスが開催されます。カンファレンスはオフライン+Ustream 配信されます。これまでにないコミュニティーイベントですね。

IT 業界の皆さんにとっては消費税引き上げ前の期末の忙しい時期だと思いますが、ぜひぜひお近くの会場に参加することをお勧めします。

さて、22日は瀬尾も東京会場で 1コマ担当させていただきます。

テーマは「SharePoint 開発ツールの比較」です。

comcamp_seo

SharePoint 特有の API を使ったSharePoint 開発は “一言触れるだけ” です。というより「今日はそこはお話しません」と宣言するだけです。

当日のテーマはクラウドビジネスアプリ(LightSwitch)、Access、Project Siena を使った SharePoint 連携アプリ、SharePoint クライアント開発についてです。
Office 365 のおかげで大企業以外の方でも SharePoint に触れる機会が増えてきたと思います。ただ小さい規模の会社だと SharePoint の拡張の費用はそんなには出せないことが多い。となると、がっつり作り込む代わりに、いい意味で “お手軽な” 開発が求められるはず。そのためのツールの紹介と比較をしてみます。

もちろん他のセッションも面白そうなものが揃っていて、できることなら喋る代わりに他のセッションを聞いて回りたいくらいです(笑)。
東京近郊にお住まいの皆さんは、ぜひ東京会場でお会いしましょう!
それ以外の地域の方は、それぞれの地域でそれぞれ特色のあるセッションを楽しんでください。

MVP Community Camp のお申し込みは MS さんのこちらのページ からどうぞ。