name: centering layout: true class: center, middle --- name: coverpage background-image: url(img/wankuma_bg_o68.png) # Microsoft Flowと PowerApps、Power BIで創るVBP Masayoshi Nomura / @nmrmsys 2016/11/19 わんくま同盟 大阪勉強会 #68 ??? VBP(Visual Business Programming)は適当 --- class: center, middle ## スライドはこちらからご覧頂けます。 [](https://nmrmsys.github.io/) ??? 参照URLにも簡単にジャンプ出来〼ので、お気軽に~ --- layout: false ## 自己紹介 .introduce-left[ ### ■ なまえ: 野村 昌由 ### ■ 業務システム開発
とインフラ業 ### ■ .NETerだけど最近はAWSばっか
過去は閉鎖環境でツール作成など
シェル芸は実用主義派、Docker
Terraformなどにも興味あり ### ■ 所属してる会社が絶賛人手不足
iOS・業務・インフラ・ハード・
その他スゴ腕エンジニアの方々
お助け下さい! ] .introduce-right[ .center[ [](https://twitter.com/nmrmsys) ### @nmrmsys ] ] ??? 本名のローマ字綴りを子音だけにしたもの、アバターは SSR Tim O'Reillyさん
オライリーメディアの創立者であり、Web2.0の提唱者の一人でもある
--- ## 会社紹介 [](http://www.asx.co.jp/) 事業所は、新大阪、新橋、大連にあります。 ??? 昔はアスリーダーつってたけど、海外ではアレなので
今はアズリーダーって、名乗ってます。
--- class: center, middle ## 最近、東京国際フォーラムにて [](http://asx.co.jp/news/info/?p=474) ## プライベートセミナーを開催しました! ??? といっても、名前から想像する様な大規模カンファレンスでは無いです
--- ## こんなのや [](https://asreader.jp/catalog/) ??? マウント用のマグネット付きジェケット+本体
10m以上の長距離交信(タグの種類によりますが)
Barcode/RFID(UHF)のComboタイプ
--- ## こんなのや [](https://asreader.jp/catalog/) ??? 1次元・2次元バーコードとUHF帯RFID
バーコード・RFIDが混在する環境向け
HF帯RFID(NFC)は医療機器向け
--- ## こんなのと [](https://asreader.jp/catalog/) ??? アンテナと本体モジュールのセパレート
本体はLAN接続
--- ## こんなのも [](https://asreader.jp/catalog/) ??? UHF帯RFIDリーダーライターをUSBでPC接続
リーダーはHID、ライターはUSBシリアル
--- [](https://asreader.jp/catalog/) ## Welcome to the RFID Solution World!! ??? タグまでの距離や方向を高精度に測定が可能
--- template: centering class: inverse # ダ イ マ 終 了 ??? 随所に闇を折り込んでいくスタイル
--- #
話は変わって。。。 ??? 闇から光の世界へ
--- class: center, middle ## ネットで見かけた、こんな記事 [](http://memo.tyoshida.me/powerapps/how-two-students-used-powerbi-powerapps-for-store-management/) ## 私もリテール業界の常識を覆したい!! ??? 日本語情報、いつも助かっております!!
--- ## 内容を詳しく読んで見てみると。。。 [](http://memo.tyoshida.me/powerapps/how-two-students-used-powerbi-powerapps-for-store-management/) ## Squareからエクスポートしたデータを
OneDriveに上げて連携してるのかー ??? 偶然にもこの女子高生のお父さんはMSのPM兼PowerBIのエヴァだそうで
どうもPowerAppsアプリは寄付先登録用でスタンドアローンっぽい
とはいえ、EUCでモバイルアプリが簡単に作成出来るのはスゴイ便利
新学期が始まったため HandMeUpsは現在閉店、リテール業界の常識とは?
--- class: inverse ##
連携する度に手動 ## それはちょっと嫌だなって。。。 ??? やっぱ自動でデータ連携させたいジャン
--- ## どうする? アプリを作り込む? [](https://developer.asreader.jp/) ## ※弊社バーコードリーダーには
SDKがございます!! ??? ダイマは終了したと言ったが、ステマをしないとは言ってない
--- ## Cordova? Xamarin?  ## そんなのも関係したくない!! ??? 昔ちょっとだけネイティブやってたけど、結局ネイティブの闇にヤラレタ
--- class: inverse #
悲しいけど # 業務SEなのよね。。。 ??? 但しスーパー業務SEは除く
--- ## それで結局、弊社謹製ブラウザアプリに [](http://apple.co/2elwaVD) ## 自作のレガシーなWebアプリを添えて ~ ??? 対応iOSのバージョンにより Asweb, Asweb2, Asweb3がある
--- ## いつものJQueryと今回Knockout初挑戦 [](https://github.com/nmrmsys/AsWebODM) ## データエントリだけは、これでやって
後はWeb/クラウドサービスに任せた ??? 設定やスキャン内容はローカルストレージで保存してるので接続が切れても安心
--- #
ん? クラウドサービスに
任せるって、どうやるの? ??? 可能な限りワザとらしく
--- ## そこで Microsoft Flow ですよ [](https://flow.microsoft.com/ja-jp/) ## 無料でどなたでもお使い頂けます。 ??? 可能な限りドヤ顔で
--- ## 自分のフローを選択して、一から作成  ## 要求トリガーを追加 JSONスキーマ入力 ??? Requestを要求に訳してしまうMSのセンスに絶望した
--- ## 新しいステップを押下、さらに追加から  ## それぞれへの適用の追加を選択したけど
それって一体どーなっちゃうの? ??? こっちは、それよりさらに酷い翻訳ですね
--- ## 何とビックリ Apply to each でしたー  ## 明細オブジェクトを選択してループ処理 ??? 何か一時期バグってたのか、ちゃんと動作しなくて焦った記憶
--- ## アクションの追加で OneDrive上の  ## Excelブックのテーブルへ行挿入 ??? アクションのタイトルが微妙に分かりづらいの、何とかならんか
--- ## サインイン情報とファイル・テーブル名  ## フィールドへのセット値を指定した状態 ??? 新しいUIでテーブルを作るの意外と手古摺ったのは内緒
--- ## 最後に応答アクションで端末への  ## レスポンス設定、デバッグ用に元JSON ??? 他の人も言ってたけど、ネストしたオブジェクトの取り扱いがが
--- ## フローの作成で保存すると、要求に  ## データPOST先のURLが生成されている ??? このURLを眺めてみると、なるほどなーと
--- ## フローが有効になってるのを確認して  ## 端末から実際にデータを送信してみよう
PCからも試せる、そうWebアプリならね ??? ドヤ(ry
--- class: center, middle  ??? 鬼が出るか、蛇が出るか
--- ## デモが失敗した時もあろうかと。。。  ## 実行結果はフロー一覧のiマークから
状態、開始時刻、期間の確認が可能 ??? 掛けれる保険を掛けておくのはじうやう
--- ## さらに詳細表示で各アクションごとの  ## 実行状態、実行時間も見ることができ ??? この辺は凝り過ぎじゃね?
--- ## さらにさらに、トリガー・アクションの  ## 入出力パラメータもバッチリ丸見え ??? という感も有るが
--- ## ループ内のアクションはこんな感じで  ## 実行回数分の全ての内容が確認可能 ??? デバッグには必要か、とも思ったり
--- ## それで、得られた結果はというと  ## ねっ、簡単でしょ? ??? 簡単とは言ってない
--- template: centering .Huge-font[ 閑話
休題 ] ??? ここからが本当の地獄の始まりだ(違
--- #
如何にして私が
Microsoft Flowを
愛する様になったか
のお話し ??? 1/3の異常な愛情
--- ## その昔、閉鎖環境で作ったりしてた [](https://github.com/nmrmsys/FFT) ## ファイル処理用のVBSフレームワークも ??? ちょっとしたファイル処理ツールを作るのには、今も便利に使ってる
--- ## インフラ業を兼任するようになって [](http://qiita.com/nmrmsys/items/5b4a4bd2e3909db161b1) ## 使い始め、極めようと思ったシェル芸も ??? 全ての道はシェル芸に通ず
--- class: center #
みんな同じ形をしている ??? BLEACHより、ワートリが好きです
--- class: center #
そうか、全ては
データフロー
パイプライン
 なんだ! ??? 悟りの境地に達した者、未来は明るい!
--- template: centering .Huge-font[ 与太話
終了 ] ??? 以下、同じ進行が続きます。苦手な方はブラウザバックで
--- #
よーく考えよう~
データ(ストレージ)は
大事だよ~ ??? アノテーション可能なデータ保存メディアとしては Excelが最強論者
--- # Azure SQL Database
もいいけどそれ以外もね [](https://azure.microsoft.com/ja-jp/services/sql-database/) ??? マネージドDBよりも、さらにユーザ寄りでカジュアルなのをくれ
--- ## オンプレミスデータゲートウェイ [](https://azure.microsoft.com/ja-jp/documentation/articles/analysis-services-gateway/) ## うんうん、それもまたサーバーレスだね ??? 管理しないといけないサーバの無い、大義のサーバーレス
--- ## Microsoft共通データサービス [](https://powerapps.microsoft.com/en-us/blog/powerapps-cds-ga/) ??? ベータ時代はMicrosoft共通データモデルって名前でした
--- ## 簡単に言うとWebで使えるAccess  ??? 正式公開でブラウザ上からもデータメンテ出来るようになって大満足
--- template: centering .large-font[ よぉーし
君に決めた! ] ??? ティンと来てたのに。。。
--- template: centering class: inverse # ところがぎっちょん # プレミアム(有償) # プランです!! ??? 良いものにはお金を払おう(血涙
--- ## Offce 365 Bussinesを個人で契約して [](https://products.office.com/ja-jp/business/compare-office-365-for-business-plans) ## 試用版でも1ヶ月くらいは試せます。 ??? 延長申請すれば、さらに倍
--- ## 嘘...だろ...? CDSはo365だと 有償!? [](https://powerapps.microsoft.com/ja-jp/pricing/) ## しかもオンプレゲートウェイも不可 ??? 複数環境対応とか配布の考慮あるけど、CDSの為だけにこの金額は。。。
--- ## MicrosoftFlowも有償プランが必要とか [](https://flow.microsoft.com/ja-jp/pricing/) ## 今使えてるのはβプレビュー者だから? ??? セット割りとか無いのかな。。。世間は厳しい!!
--- ## ともあれPowerAppsの基本機能は使用可 [](https://powerapps.microsoft.com/ja-jp/) ## データソース選択は後日考えるとして ??? まあジッサイ、これだけでもスゴイ事なのだけれど
--- ## その後の調べでSharePointOnlineの [](https://blogs.technet.microsoft.com/microsoft_office_/2016/08/05/modern-sharepoint-lists-are-here-including-integration-with-microsoft-flow-and-powerapps/) ## カスタムリストを使うのが良さそう ??? Offce 365 Bussines Premiumで契約すると、Windowsクライアント版のAccessが使えて
https://blogs.technet.microsoft.com/microsoft_office_/2016/11/09/microsoft-access-now-included-in-office-365-business-and-business-premium-with-new-enhancements/
そちらでも SharePointOnlineのカスタムリストをリンクテーブルとしてアタッチ可能
http://qiita.com/muramoto_jp/items/be9702663e2e3a3fbbe3
--- ## クラウドサービスと連携自在の [](https://powerapps.microsoft.com/ja-jp/tutorials/getting-started/) ## モバイル対応なRAD環境が今ここに ??? RADはRapid Application Development、つまり超高速開発
Delphi RAD Studio(遠い目
--- ## デザインツールはWindows10版と [](https://powerapps.microsoft.com/ja-jp/downloads/) ## まだプレビュー状態のWeb版がある ??? サンプルアプリのコードが見れないのはWeb版の未実装だと思ってたら、そうじゃない?
--- ## Web版の画面はこんな感じ [](http://memo.tyoshida.me/powerapps/powerapps-studio-for-web-preview-released/) ## VBライクだが、データ処理などは独特 ??? VBライクというのも、最近はもうこれ分かんねえな?だけど
PowerAppsの特色は値設定のデフォルトが数式というのに尽きる
https://powerapps.microsoft.com/ja-jp/tutorials/working-with-variables/
つまりアプリの様な顔をしてるが、コイツは実質的にはExcelシートとほぼ等価の存在で
各コントロールはセル、そこに数式でデータバインドしてファンクショナルな挙動を取らせる
必然的にデータソースへの操作もSQLでは無くなり、ワークシート関数を用いる事になっている
あ、勿論この方式しか無い訳で無く、イベントハンドラからの変数操作も書こうと思えば書ける
https://powerapps.microsoft.com/ja-jp/tutorials/working-with-tables/
昔そんな感じのExcelシートアプリ化を考えてたので、やっぱ有りだよなーと思ったりしたけど
何でこの方式を採用したのかを想像すると、開発ツールなのにリボンUIを採用してる所からしても
純粋にビジネスユーザーの為のツールを追求した結果こうなってるのに哲学を観て宇宙を感じるw
Gallery, Display form, Edit formコントロールで典型的な画面パターンの構築を行うのが基本で
https://powerapps.microsoft.com/ja-jp/tutorials/working-with-forms/
使えるコントロールの種類はこれぐらいで、実際の配置・プロパティ設定はこんな感じ
https://powerapps.microsoft.com/ja-jp/tutorials/add-configure-controls/
データを使用して開始を選択すると上記3画面パターンを自動仮生成した状態で始まるが
空のアプリを選択して、同様の画面デザインを行うには、下記の手順を参照
https://powerapps.microsoft.com/ja-jp/tutorials/get-started-create-from-blank/
コントロールと関数のリファレンスとか
https://powerapps.microsoft.com/ja-jp/tutorials/reference-properties/
https://powerapps.microsoft.com/ja-jp/tutorials/formula-reference/
--- #
なぜ、MSはこれらの
ツール群を創ったのか? ??? ガイアの夜明けOP風
--- ## これが、そのツール群の全体像だ! [](https://businessplatform.microsoft.com/en-us/) ## モダンな業務アプリを高速に構築する ??? そして、それはビジネスの現場に立つ力を持った人々だと
--- ## 我々開発者は、その領域を拡張させる [](http://blogahf.blogspot.jp/2016/05/logicapps-powerapps-flow_3.html) ## LogicAppsはFlowの自由度が高いもの ??? 熱く生きていこうぜ、真っ直ぐにYO
--- ## 我々開発者は、その領域を拡張させる [](http://www.slideshare.net/harutama/logic-apps-api-apps) ## ApiAppsでトリガー・アクションを実装 ??? 以上、スペシャルサンクス的なヤツでした
--- template: centering class: inverse # ー最終章ー # “データの向こう側”へ ??? 何でか、このページだけChromePDFに保存からのパワポ変換でレイアウトが崩れる。。。
--- ## 業務データ利用の最後のピース [](https://powerbi.microsoft.com/ja-jp/) ## ユーザー対話型のセルフサービスBI ??? データの民主化とか、その辺
社畜マインドだとBI何それ美味しいの?ってなるのが切ない
--- ## ファイル、DB、サービスを問わず [](https://powerbi.microsoft.com/ja-jp/guided-learning/powerbi-learning-0-0-what-is-power-bi/) ## データソースとして、視覚化・分析 ??? GitHubをデータソースにする事も出来たり
https://powerbi.microsoft.com/ja-jp/guided-learning/powerbi-learning-0-3-dashboards-cloud-services/
--- ## リレーションビューで仮想データ統合 [](https://powerbi.microsoft.com/ja-jp/documentation/powerbi-desktop-relationship-view/) ## そして、いずれはエンタープライズDBへ ??? DOA界隈の皆さん、お元気ですかーっ!
--- class: inverse ###
良い質問とは、正しい答えを求めるものではない
良い質問とは、すぐには答えが見つからない
良い質問とは、現在の答えに挑むものだ
良い質問とは、思考の新しい領域を創り出すものだ ### 良い質問とは、その答えの枠組み自体を変えてしまうものだ
良い質問とは、さらに他の良い質問をたくさん生み出すものだ
良い質問とは、マシンが最後までできないかもしれないものだ
良い質問とは、人間だからこそできるものだ ### Kevin Kelly - The Inevitable: Understanding the 12
Technological Forces That Will Shape Our Future
Chapter 11, QUESTIONING ??? ※今日紹介したツール群が実業務に耐えうるかは未知数であり、各個人で地雷を踏み抜いていくしかありません
お言葉はケヴィン・ケリーさんの「〈インターネット〉の次に来るもの―未来を決める12の法則」から
とても示唆的な本なので、皆さんも読んでみると宜しいかと https://www.amazon.co.jp/dp/4140817046/