1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

PowerAppsとPowerAutomateを連結してAADの拡張項目を取得する

Posted at

はじめに

PowerAppsからアプリを作るケースって大抵の場合社内システムみたいなものが多いと思います。で、大抵の場合コネクタとしてOffice365ユーザーとかAzureADみたいなものを使って社内の情報を取得するんじゃないかと。そんでもって、キーは社員番号にしてデータを登録する。なんていうのがテンプレだと思っています。勝手に。

AzureActiveDicrectoryの設定画面を見ると従業員IDというものがあります。
一部マスキングしてますが、私の場合はこの2016XXXXの箇所が社員番号にあたります。

無題.png

従業員IDが取れない

あとは、PowerAppsのAzureADコネクタを使って、この情報を引っ張ってくればOK。とか思っていたのですが、、ない。
image.png

てっきり、AzureAD.GetUser().EmplyeeIdみたいな形で取れると思ってたのですが、項目が存在しません。同様に、Office365ユーザー.MyProfileV2().EmployeeIdも存在しません。

あと付けの拡張項目だから取れない説

@fukasuke様の記事(https://qiita.com/fukasuke/items/9fc3dd6b4594bce89393)
にあるように従業員IDというのは後で追加された拡張項目です。

AzureD.GetUser()やOffice365ユーザー.MyProfileで取得できるのは最初からある項目だけのような気がします。

PowerAutomateを呼び出して取得する

@fukasuke様の記事を見ると、graphAPIで頑張れば取れるみたいなのでカスタムコネクタを作って取る方法が手っ取り早そうですが、カスタムコネクタはまた別途お金がかかります。じゃあ、PowerAppsからPowerAutomateを呼び出せば取れるんじゃないかと。

GetEmployeeIdToPowerAppsという従業員IDを取得するPowerAutomateを作ります。
無題2.png

でこれをPowerAppsのonStart時に呼び出して変数EmployeeIdに入れて置けば任意の場所でEmployeeId.idで取得できます。(ID.idってなんか変だけど変数名はまぁテキトーに変えて下さい。GetEmployeeIdToPowerAppsという英語も変ですね。)
無題.png

所感

個人的にはPowerAutomateよりFlowって名前の方が好きです

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?