こんにちは、あんこ先生です。
コネクタと接続してアプリを作成中、不意にIDの入力を要求されて困ったことありませんか?
以前調べたけど、もうやり方覚えてないやって人も多いんじゃないでしょうか?
安心してください。
この記事で紹介するアプリを作成しておけば、そんな悩みも解決します。
こんな人にオススメ
- え?なに?IDって食べられるの?
- IDを調べる作業から解放されたい
- 同僚から一目置かれたい
今回は、コネクタとデータをやりとりするための各種IDを調べるアプリを作成します。
このアプリがあるとないとでは、作業効率に雲泥の差がでます。
なぜなら、一度作成するだけで簡単にIDを調べることができますし、共有すればその恩恵は同僚にも波及します。
実際に職場で共有してみたところ、特に経験の浅い同僚から「これずっと悩んでました、ありがとうございます」と感謝されました。
もちろん、自分しかアプリ作成していない場合でも十分効果がありますので、ぜひ作ってみてください。
Contents
01│コネクタのIDって何?
コネクタって何?
コネクタとは、基盤になるサービスが PowerPlatform(Apps、Automate等)と通信できるようにする APIのプロキシです。
ひらたく言うと、事前に用意されたアクションやトリガーを用いて、他のサービスからデータを持ってきたり送ったりとアプリでできることが増えるってことです。
一般的なコネクタの例としては、Office365、Salesforce、Twitter、Google サービスなどがありますが、わたしはOffice365しか試したことがありません。
IDって何?
コネクタで接続したサービスから、やりとりするデータなどを特定するために使用するものです。
豆腐を買ってきて!と言われても、木綿なのか絹なのか、はたまた焼き豆腐なのかわかりませんよね。
そのため、どの豆腐なのか指定する必要があります。
Plannerで例えると、「こしあん推進プロジェクト」(プラン)にどのようなバケットがあるか調べたいとします。
この場合、プランIDを指定する必要があります。
アプリは指定されたプランIDをもとに「こしあん推進プロジェクト」にたどり着き、どんなバケットがあるのか調べて返すことができます。
さらにそのバケットにどんなタスクがあるのか調べたい場合は、同じようにバケットを特定するためのバケットIDを指定します。
02│IDの調べ方(ブラウザ使用)
IDの調べ方は簡単です。
ブラウザで開いて、アドレスバーを確認するだけです。
上の画像で解説すると、こしあん推進プロジェクトのチームIDはthreadIdの後に続く部分です。
この方法だとデスクトップアプリからいちいちブラウザを起動、さらにながーい文字列から目視で探し出すという手間があります。
一文字でもずれると特定できないため、結構もやもやしますし、複数のIDを調べるのは骨が折れます。
そういった問題を解決するために、IDを確認するためだけのアプリを作成するに至りました。
03│IDの調べ方(アプリ使用)
今回はOffice365のサービス(Office365ユーザー、Teams、Planner)に限定します。
なぜなら職場で外部サービスへの接続が禁止されており、わたしの経験がないためです。
ごめんなさい。プライベート環境で接続に挑戦してみます。
結果がだせたら記事に追記しますね。
作り方はひとつ覚えれば流用できますので、チャレンジしてみてください。
視認性を高めるため、Galleryコントロールを主軸に作成していきます。
Office365ユーザー
ユーザーを特定するために使用します。今回紹介するものの中では、特に利用頻度の高いものではないでしょうか?
作りは至ってシンプルです。TextInputコントロールに入力した内容でユーザーを検索し、その結果をGalleryコントロールに表示します。
- TextInput01
特に設定は必要ありません。 - Gallery01
Items=Office365ユーザー.SearchUser({searchTerm:TextInput01.Text,top:50}) - Gallery01内にLabelコントロールを2つ追加します。
.Label01
Text=ThisItem.DisplayName
.Label02
Text=ThisItem.Id
大きい職場は事業所名(Department)も表示すると同姓同名対策に有効です。
Gallery内に他の項目も加えておくと詳細な情報が一覧できて便利です。
Teams
チームやチャネルを特定して投稿する、反対に投稿した内容を取得するなど使い方は幅広いです。
左のGalleryコントロールに自分が参加しているチーム一覧、右のGalleryコントロールに選択したチームのチャネル一覧を表示します。
- Gallery02
Items=MicrosoftTeams.GetAllTeams().value - Gallery02内にLabelコントロールを2つ追加します。
.Label03
Text=ThisItem.displayName
.Label04
Text=ThisItem.id - Gallery02_1
Items=MicrosoftTeams.GetChannelsForGroup(Gallery02.Selected.id).value - Gallery02_1内にLabelコントロールを2つ追加します。
.Label03_1
Text=ThisItem.displayName
.Label03_1
Text=ThisItem.id
ThisItem以降の頭文字が小文字になっている点に注意してください。
Planner
アプリから直接タスクを抽出したり完了させたりできます。チームメンバーのタスク状況を確認するのにも便利です。
左のGalleryコントロールに自分が参加しているプラン一覧、右のGalleryコントロールに選択したプランのバケット一覧を表示します。
- Gallery03
Items=Planner.ListMyPlansV2().value - Gallery02内にLabelコントロールを2つ追加します。
.Label05
Text=ThisItem.title
.Label06
Text=ThisItem.id - Gallery02_1
Items=Planner.ListBucketsV2(Gallery03.Selected.id).value - Gallery02_1内にLabelコントロールを2つ追加します。
.Label05_1
Text=ThisItem.name
.Label06_1
Text=ThisItem.id
04│まとめ
いかがでしたか?
思ったより簡単にできたと思います。
まとめると
- コネクタを使うときは大抵IDが必要
- ブラウザ経由でも確認できるがめんどい
- 調査用アプリを作って共有しておくとみんな助かる
これでIDを探す方法を調べる作業から解放されます!
Twitterと接続して自分の発言やいいねもらった回数を集計したり、Amazonと接続して消耗品の再購入間隔など調べてたりしてみたいですね。
今回確認したIDを活用した機能を紹介した記事です。併せて読んでください。