前回が 9 月だったので、およそ 3 か月ぶりとなる Logic Apps Live が行われました。今回は恒例のクリスマス仕様で行われ、Logic Apps Live 初となる「スライド無しで喋りっぱなし」な回となりました・・・が、後ほどスライド部分が別動画としてアップされていましたので、なんとかなりましたw
二つの動画を見てのまとめとなります。
DataGridView や DataRepeater にこだわりつつ
時代は Workflow Foundation などと言い続けていたら
これからは LogicFlow だろ! と思い始めてきた
色々浅く広くやっていく古い技術者の Blog
前回が 9 月だったので、およそ 3 か月ぶりとなる Logic Apps Live が行われました。今回は恒例のクリスマス仕様で行われ、Logic Apps Live 初となる「スライド無しで喋りっぱなし」な回となりました・・・が、後ほどスライド部分が別動画としてアップされていましたので、なんとかなりましたw
二つの動画を見てのまとめとなります。
先日、#IntegrationAMA として、いろいろな質問に答えるよ的な Twitter 上でのオンラインイベントが行われていました。その中で面白い話題があったので、試してみました。
@ToonVanHoutte さんがまとめられていた内容をもとにしています。ありがとうございます!
PowerApps でアプリを作成している時、試験的な機能を利用しようとすると一部プラットフォームでしか利用できない事があります。更新履歴を見ていると、どの機能がプラットフォーム限定な制限があるのかも併せて記載されていますが、時と場合によってはその制限を知ったうえで、全プラットフォームで動作するアプリを作成することもあります。
そのような場合に、どのようにしてプラットフォームを判断するのかを試してみました。
Microsoft Flow を利用していて多くの人が感じるものに、作成したコネクタの接続情報が定期的に接続エラーになってしまう、というものがあります。接続時に利用しているアクセストークンの期限切れなどが理由で、気が付くとエラーになっていたりするのですが、毎回ポータルから確認するというのも手間でした。
今回、このチェックを Flow にて自動化してみました。
エントリとして結構長いので、先に確認したい方は github にエクスポートしたパッケージを用意してありますので、こちらもご利用ください。
今週に開始された MIcrosoft の大型イベント Ignite で、久々に Logic Apps チームによる Logic Apps Live が行われていました。事前告知がなかったので、気づいたのは放送終了後・・・。
LogicFlow で利用できるトリガの中には、設定を色々行えるものがあります。その際に、大体は直接的な値を設定することが多いのですが、場合によっては LogicFlow の関数を利用したいこともあります。ところが現状の仕様ではそれは面倒を招いてしまっていました。
日頃 JSON の値と戯れていると、時々その値をどうこうするときに面倒くさいと思うことが多いかと思います。配列な値が関連すると、面倒くささはさらに増してしまうので、このあたりをなんとかできないかなと考えてみました。
例えば上記の例な場合です。通常であれば SampleArray でループさせて一つずつ値をチェックすることでしか、現状の Logic Apps や Flow では対応ができないので、ここを少しでも楽にしたいというのが目的です。
Logic Apps/Flow それぞれに LUIS のコネクタは用意されているのですが、現在 LUIS V2 API へ切替られたということもあり、デザイナー上での挙動に問題があるのと、コネクタがいつまで使えるかが不明だという問題があります。一時しのぎ的な対応方法はあるのですが、根本的にコネクタが V2 API に対応されないと解決にはならない不安もあり、HTTP で直接利用する方法も必要になるかと思うので、まとめてみました。
最近追加されたコネクタに Flow Management for Admin コネクタというのがあり、これまでの Flow 管理コネクタと比較すると、より管理系のアクションが増えたものとなっています。その中で、Remove Approval というアクションがあったので、どのような動きになるのか確認してみました。
Logic Apps や Flow を利用するシーンとして、外部から JSON 値を渡してもらい色々と処理を行うケースというのが多々あります。その際、Logic Apps/Flow としては、スキーマを定義しておくことで LogicFlow の作成が楽になるという点があるのですが、このスキーマ作成は開発者でなければ戸惑うところの筆頭でもあります。
色々な形を試してみて、利用する際に注意する場面をまとめてみました。
こういったブログをやっていると、LogicFlow の全体図キャプチャを取るのが非常にどうしたもんだかと悩んでいたのですが、Chrome の機能でうまいことキャプチャを取る手段があったのでメモメモ。
Slack でメッセージが投稿された際に、外部を呼び出す仕組みとして OutGoing Webhook がありますが、こちらはどこで廃止するかわからない状態へと変わったのもあり、今後は Event API など別の仕組みを利用する必要がありました。
今回は Event API の仕組みを利用して、Slack で投稿されたら反応する Bot を LogicFlow で組んでみました。
大人の都合(?)もあり、配送されているものが今どういった状況化を調べるのに、どういったやり方がいいかなというのを探していた最中に、面白いサービスを見つけたので利用してみました。afterShip というサービスで、色々な配送業者から情報を取得することができるサービスです。今回は Flow のボタントリガを使って、自分に届く荷物が今どんな状態なのか調べるものを作ってみました。
Logic Apps や Flow では、エラー処理のためのパターンが利用できます。プログラムを書く方にはおなじみの Try-Catch-Finally な形式です。
とある人から「Logic Apps のタイムアウト 120 秒、なんとかならんですか」という質問が飛んできたので、面白そうなのもあり試してみました。
現在ロンドンでは Integrate 2018 というイベントが行われています。これは、Integration 、システム統合をメインの話題にしたイベントで、Logic Apps や Flow も当然扱われています。Twitter 上でいろいろと興味深い話題が流れていたので、自分用にまとめました。
今回はアメリカで開催されている Build 会場から、Live の名前通りな形で行われた Logic Apps Live。会場のネットワークの問題なのか、映像も音声もあまり良くない品質での配信で、YouTube での音声認識もところどころ行えておらず英語のわからない自分にとってはなかなかに困った回となっていましたw
とある事情があって、API 接続を含んだ Logic Apps をテンプレート化して配布しようと色々やっていたのですが、配布の際に気を付ける点や Template の書き換えに結構手間取ったので備忘録としてまとめてみます。
なおこのエントリは Sacha Bruttin さんの素晴らしいエントリを参考に行いました。
Deploy Logic Apps & API Connection with ARM
https://www.bruttin.com/2017/06/13/deploy-logic-app-with-arm.html
とある理由でアカウント登録をするような LogicFlow を作成していたのですが、その際に初期パスワードをどうしたものだか、という課題がありました。Azure Functions でも使えばさっくりいけるのですが、そこを LogicFlow でやってみることにしました。
以前のアップデートで、Logic Apps の IF コネクタが更新され、新しくネストした条件であっても記述が非常に楽になりました。少し前まで日本語訳がアレなのはありましたけども、複数の判定条件を扱いやすくなっています。ですが、これまでの IF コネクタと記載方法が変わっており、自動でアップデートされることはありません。これをアップデートするには、CodeView で直接記述を変更する必要があるので、どう書き換えるのかをまとめました。
Flow 公式ブログでアナウンスされているように、Flow で利用している承認機能はバックグラウンドに CommonDataService を利用するよう更新されました。ただし、現在はプレビュー機能扱いなので既存環境ではまだ利用できません。このあたりを含めて試す手順をまとめました。
昔々に試したときは、アカウントの作成やらなんやらでうまいこと動作させることができなかったのをすっかり忘れていて、つい最近ようやく試すことができました。
毎日動作させている、LogicApps と Flow の新規コネクタ検索、昨日からエラーとなっていたのと2日続けて同じコネクタが新規登録扱いとなっていたので調べてみたところ、TableStorage コネクタで怪しい挙動があるのがわかりました。
ここ最近 EventGrid を利用した LogicFlow を色々作っているのですが、その途中で EventGrid トリガがエラーとなってしまうことがあり、非常にどうしたもんだかと思ったのでその対応を残しておきます。
LogicFlow で JSON オブジェクトの値を操作するための setProperty 関数ですが、子要素を書き換えたいと思った場合、少し手間をかけて行う必要がありました。
LogicFlow に限らずエラー処理はほとんどの場合必要です。たとえエラー発生時に何も処理を行う必要がなくとも、エラーが起きたことを知る必要はあります。LogicFlow でどういった対応がとれるかをまとめてみました。