Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Dataverseの検索列について
Search
MiyakeMito
April 26, 2025
Technology
2k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Dataverseの検索列について
MiyakeMito
April 26, 2025
More Decks by MiyakeMito
See All by MiyakeMito
Power Automateアップデート情報
miyakemito
0
340
マルチステージとAI承認について
miyakemito
0
170
Copilot Studioについて
miyakemito
7
10k
AI Builder について
miyakemito
3
1.2k
Microsoft Copilot Studio についてざっくり説明
miyakemito
2
1.9k
Power Automateのデータ操作(Data Operation)について (Ver.モダンデザイナー)
miyakemito
5
4.2k
JSON攻略法.pdf
miyakemito
13
7.3k
ガンダムBotを1分でつくってみせろよ
miyakemito
1
930
Microsoft Copilot Studio について
miyakemito
0
8.6k
Other Decks in Technology
See All in Technology
Genie Code ワークショップ 基礎編 / Genie-Code-Workshop-fundamental
databricksjapan
PRO
0
340
[RSJ26] AnoleVLA: Lightweight Vision-Language-Action Model with Deep State Space Models for Mobile Manipulation
keio_smilab
PRO
0
120
Where Is JetBrains AI Heading- — Central CLI, Air Alpha, and the Agentic Development Stack
x5gtrn
PRO
0
120
多層防御と最⼩権限で実現する、安全なAIエージェント設計パターン
lycorptech_jp
PRO
0
150
生成AI時代の クレデンシャルとパーミッション設計
nrinetcom
PRO
3
1.5k
Bet AI Day 2026丨Production-Ready AI Agents — エンタープライズの実務を任せるための設計と運用
layerx
PRO
3
2k
Jetpack Compose で挑む新聞紙面UI ─ 複合ジェスチャー・ポリゴン記事領域・適応的ページ構成という3つの壁/droidkaigi2026
nikkei_engineer_recruiting
0
190
Nav2、Nav3 ... はたまた自作?〜 作って理解する Nav3 の設計意図 〜 / Nav2, Nav3 ... or Build Your Own? — Understanding Nav3's design intent by building it from scratch
yanzm
0
200
全社に広がるMCPサーバーを、 どう安全に管理するか MCPass開発の舞台裏
mtpooh
3
280
「重なり」は迎える側がつくる ― 人もAIエージェントも歓迎するプロダクトエンジニアリング ―
go0517go
PRO
0
220
少人数データチームのDevin活用実践事例
runandy16
2
430
IDperturb: Enhancing Variation in Synthetic Face Generation via Angular Perturbation
sansantech
PRO
0
130
Featured
See All Featured
Believing is Seeing
oripsolob
1
210
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
700
4 Signs Your Business is Dying
shpigford
187
23k
Bash Introduction
62gerente
615
220k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
720
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
290
The Curious Case for Waylosing
cassininazir
1
490
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
300
Tell your own story through comics
letsgokoyo
1
1.1k
Transcript
Dataverse の 検索列について 気ままに勉強会 #110 1
今日の目標 Dataverse の検索列を 使いこなそう 2
アジェンダ Microsoft Dataverse トリガー Microsoft Dataverse アクション Dataverse 検索列とは Dataverse
検索列のCRUD Power Automate編 Dataverse 検索列のCRUD Power Apps編 Dataverse 選択肢列とは Dataverse 選択肢列のCRUD Power Automate編 Dataverse 選択肢列のCRUD Power Apps編 3
Miyake @MiTo60448639 https://qiita.com/MiyakeMito 株式会社アイシーソフト Technical Manager www.icsoft.jp https://speakerdeck.com/miya kemito 4
免責事項 当スライドは、 2025年4月現在のバージョンでの情報です 今後のアップデート等により、 仕様変更する可能性があります また、私の見解による内容が含まれます 間違いなどありましたらご指摘ください 6
Microsoft Dataverse トリガー
Microsoft Dataverse のトリガー 8 このトリガーにより、ビジネス プロセス フローのス テップで [フローの実行] ボタンがクリックされた時に、
フローを開始できます。 Microsoft Dataverse アクションの完了時にトリガーしま す。 このトリガーを使用すると、Microsoft Dataverse テーブ ルで行が追加、変更、または削除された場合に、選択し たオプションと一致するフローを開始できます。 コマンド バーの [フロー] メニューで行が選択されたとき にフローをトリガーします。
Microsoft Dataverse アクション
この操作により、Microsoft Dataverse テーブルの ID と一致する行を取得します。 10 この操作により、選択した Microsoft Dataverse テーブルに新しい行を追加します。
この操作により、関連性検索で Microsoft Dataverse 環境を検索して、検索語句に最 も近い行を取得します。 このアクションにより、Microsoft Dataverse テーブルの選択した行を変更できます。 Microsoft Dataverse のアクション①
この操作を実行すると、Microsoft Dataverse のテーブル間に一対多または多 対多の関連付けがある場合に、テーブル間で行と行のリンクを削除できます。 11 この操作により、選択したオプションと一致する Microsoft Dataverse テーブル行 を一覧で表示します。
この操作を実行すると、Microsoft Dataverse のテーブル間に一対多または多 対多の関連付けがある場合に、テーブル間で行と行のリンクを作成できます。 この操作により、Microsoft Dataverse テーブルから行を削除します。 Microsoft Dataverse のアクション②
12 この操作を実行すると、Microsoft Dataverse コネクタの処理グループを、1 つのトランザクションとして実行できます。いずれかの処理が失敗した場合、 成功したすべての処理がロールバックされます。 Microsoft Dataverse のアクション③
13 Dataverse 検索列とは
検索 列 14 ◼ 多対一 (N:1) のテーブル関係を関連付けするもの ◼ N側のテーブルに作成する ◼
1側のテーブルの 一意識別子(GUID)などを含む構造化データがセッ トされる Microsoft Dataverse におけるテーブルの関連付けについて - Power Apps | Microsoft Learn 車 モデル 自動車メーカー bf894e82- JULIA ALF 7bfdf6c6- MiTo ALF adb35bff- アバルト595 ABA メーカー ID メーカー名 f62dbf6f- ALF Alfa Romeo 57549554- ABA ABARTH [車] テーブル [メーカー] テーブル 検索 列 多(N) 一(1)
Dataverse 検索列の設定
検索 列の設定方法 16 その1 ➢ テーブルを開き [新規]-[リレーションシップ] ➢ 多対多の設定も可能 その2
➢ 列を追加-[検索]-[検索] ➢ 多側(N側)から作り、 一側(1側)のテーブルを指定
Dataverse 検索列の 参照(Read)
検索列の値で抽出 18 ◼ 検索列に対し、直接、値でフィルタリングすることはできない ◼ 多対一 (N:1)における一側(1側)のテーブルを検索し、そのレ コードの一意識別子(GUID)で検索する ◼ GUIDで検索する際は、検索列を
_<列の論理名>_value で指定する 車 モデル 自動車メーカー bf894e82- JULIA ALF 7bfdf6c6- MiTo ALF adb35bff- アバルト595 ABA メーカー ID メーカー名 f62dbf6f- ALF Alfa Romeo 57549554- ABA ABARTH ALFで 検索したい ① 1側を検索 ② 一意識別子で検索 [車] テーブル [メーカー] テーブル 多(N) 一(1)
検索列の値で抽出 19 検索列を _<列の論理名>_value で指定する テーブル名(動的コンテンツ) エンティティのインスタンスを 表す一意識別子 Odata クエリ演算子については
Web API を使用したデータのクエリ - Power Apps | Microsoft Learn 列の指定、ソートキーも _<列の論理名>_value outputs('行を一覧にする’) ?['body/value']?[0]?['new_manufacturerid']
クエリの展開 20 https://learn.microsoft.com/ja-jp/power- apps/developer/data-platform/webapi/multitable- lookup?wt.mc_id=-MVP-5005122 検索列 のスキーマ名を指定 ◼ 多対一 (N:1)における多側(N側)検索時に、関連する一側(1
側)レコードのデータも取得できる ◼ 一側の<スキーマ名>を指定、または、 <スキーマ名>($select=<列の論理名>)で指定する
Fetch Xml クエリ 21 【Power Automate】Dataverse の高度なフィルターを簡単に作成する話 - ふらりのメモ書き モデル駆動型アプリはテーブルの
詳細画面から作る <fetch version="1.0" mapping="logical" savedqueryid="72ceffd3-20be-4df7-9e31-7290da6c522e" no- lock="false" distinct="true"> <entity name="new_car"> <attribute name="statecode"/> <attribute name="new_carid"/> <attribute name="new_id"/> <attribute name="createdon"/> <order attribute="new_id" descending="false"/> <attribute name="new_carmanufacturer"/> <filter type="and"> <condition attribute="new_carmanufacturer" operator="eq" va lue="{f62dbf6f-7712-f011-9989-002248eff0b4}" uiname="ABA" uitype="new_manufacturer"/> </filter> </entity> </fetch> テーブル名(動的コンテンツ) uiname は、抽出に 影響しない(が消し ておく方がよいか も)
Dataverse 検索列の 更新(Update)
検索列の値を更新 その① 23 ◼ 検索列に対し、行の関連付けを行う ◼ 多対一 (N:1)における一側(1側)のテーブルを検索し、そのレ コードの一意識別子(GUID)を、多側(N側)の検索列に関連付ける ◼
「行を関連付ける」アクションを利用する 車 モデル 自動車メーカー bf894e82- JULIA ALF 7bfdf6c6- MiTo ALF adb35bff- アバルト595 ALF メーカー ID メーカー名 f62dbf6f- ALF Alfa Romeo 57549554- ABA ABARTH ABAに 変更したい [車] テーブル [メーカー] テーブル 多(N) 一(1) ① 1側を検索 ③ 行を関連付ける ② N側を検索
検索列の値を更新 その① 24 多側(N側)のテーブルを指定 テーブル名(動的コンテンツ) エンティティのインスタンス を表す一意識別子 Odata ID (動的コンテンツ)
一側(1側)のテーブルを指定 OData 行 ID
検索列の値を更新 その② 25 ◼ 「行を更新」アクションでも可能 ◼ 検索列に対し、<列の論理名>([GUID]) で指定する ◼ 多対一
(N:1)における一側(1側)のテーブルを検索し、そのレ コードの一意識別子(GUID)を、多側(N側)の検索列にセットする 車 モデル 自動車メーカー bf894e82- JULIA ALF 7bfdf6c6- MiTo ALF adb35bff- アバルト595 ALF メーカー ID メーカー名 f62dbf6f- ALF Alfa Romeo 57549554- ABA ABARTH ABAに 変更したい [車] テーブル [メーカー] テーブル 多(N) 一(1) ① 1側を検索 ② 行を更新
検索列の値を更新 その② 26 テーブル名(動的コンテンツ) 一側(1側)のテーブルを指定 [<1側のテーブルのセット名>](<1側のテーブル名>) エンティティのインスタンス を表す一意識別子 テーブル名(動的コンテンツ) エンティティのインスタンス
を表す一意識別子 次ページ
テーブルのセット名 取得方法 27
Dataverse 検索列の 追加(Create)
検索列の値を追加 その① 29 ◼ 検索列に対し、行の関連付けを行う ◼ 多対一 (N:1)における一側(1側)のテーブルを検索し、そのレ コードの一意識別子(GUID)を、多側(N側)の検索列に関連付ける ◼
「行を関連付ける」アクションを利用する 車 モデル 自動車メーカー bf894e82- JULIA ALF 7bfdf6c6- MiTo ALF アバルト595 ABA メーカー ID メーカー名 f62dbf6f- ALF Alfa Romeo 57549554- ABA ABARTH 行を追加 したい [車] テーブル [メーカー] テーブル 多(N) 一(1) ① 1側を検索 ② 行を関連付ける
検索列の値を追加 その① 30 多側(N側)のテーブルを指定 テーブル名(動的コンテンツ) エンティティのインスタンス を表す一意識別子 Odata ID (動的コンテンツ)
一側(1側)のテーブルを指定 OData 行 ID
検索列の値を追加 その② 31 ◼ 「新しい行を追加する」アクションでも可能 ◼ 検索列に対し、<列の論理名>([GUID]) で指定する ◼ 多対一
(N:1)における一側(1側)のテーブルを検索し、そのレ コードの一意識別子(GUID)を、多側(N側)の検索列にセットする 車 モデル 自動車メーカー bf894e82- JULIA ALF 7bfdf6c6- MiTo ALF アバルト595 ABA メーカー ID メーカー名 f62dbf6f- ALF Alfa Romeo 57549554- ABA ABARTH 行を追加 したい [車] テーブル [メーカー] テーブル 多(N) 一(1) ① 1側を検索 ② 行を追加し、関連付ける
検索列の値を追加 その② 32 一側(1側)のテーブルを指定 テーブル名(動的コンテンツ) エンティティのインスタンス を表す一意識別子 [<1側のテーブルのセット名>](<1側のテーブル名>)
Dataverse 検索列の 削除(Delete)
検索列の値をクリア 34 ◼ 検索列に対し、行の関連付けを解除する ◼ 多対一 (N:1)における一側(1側)のテーブルを検索し、そのレ コードの一意識別子(GUID)を、多側(N側)の検索列に関連付ける ◼ 「行の関連付けを解除する」アクションを利用する
車 モデル 自動車メーカー bf894e82- JULIA ALF 7bfdf6c6- MiTo ALF adb35bff- アバルト595 ABA メーカー ID メーカー名 f62dbf6f- ALF Alfa Romeo 57549554- ABA ABARTH ABAを 削除したい [車] テーブル [メーカー] テーブル 多(N) 一(1) ① 1側を検索 ③ 関連付けを解除する ② N側を検索
検索列の値をクリア 35 多側(N側)のテーブルを指定 テーブル名(動的コンテンツ) エンティティのインスタンス を表す一意識別子 Odata ID (動的コンテンツ) 一側(1側)のテーブルを指定
OData 行 ID
検索列を含む行を削除 36 ◼ 「行を削除する」アクションを利用する ◼ 削除対象の行の一意識別子(GUID)を指定する 車 モデル 自動車メーカー bf894e82-
JULIA ALF 7bfdf6c6- MiTo ALF adb35bff- アバルト595 ABA メーカー ID メーカー名 f62dbf6f- ALF Alfa Romeo 57549554- ABA ABARTH 行を 削除したい [車] テーブル [メーカー] テーブル 多(N) 一(1) ② 行を削除 ① 検索
一側のレコードを削除した場合 37 ◼ 多対一 (N:1)における一側(1側)のテーブルからレコードを削除 すると、多側(N側)の検索列の値も削除される ◼ 高度な関連付け動作により、動きは変わる 車 モデル
自動車メーカー bf894e82- JULIA AFL 7bfdf6c6- MiTo ALF adb35bff- アバルト595 ABA メーカー ID メーカー名 f62dbf6f- ALF Alfa Romeo 57549554- ABA ABARTH 行を 削除すると [車] テーブル [メーカー] テーブル 多(N) 一(1) 検索列の値も 削除される
Dataverse 検索列 キャンパスアプリ
検索列の値で抽出 39 ◼ 検索列に対し、直接、値でフィルタリングすることはできない ◼ 検索列の表示名.一側(1側)テーブルの表示名 を、条件式に指定するこ とで、検索可能 車 モデル
自動車メーカー bf894e82- JULIA ALF 7bfdf6c6- MiTo ALF adb35bff- アバルト595 ABA メーカー ID メーカー名 f62dbf6f- ALF Alfa Romeo 57549554- ABA ABARTH ALFで 検索したい [車] テーブル [メーカー] テーブル 多(N) 一(1) Filter( 車, 自動車メーカー.ID = "ABA" )
検索列の値を更新 ① 40 車 モデル 自動車メーカー bf894e82- JULIA ALF 7bfdf6c6-
MiTo ALF adb35bff- アバルト595 ALF メーカー ID メーカー名 f62dbf6f- ALF Alfa Romeo 57549554- ABA ABARTH ABAに 変更したい [車] テーブル [メーカー] テーブル 多(N) 一(1) ② 行を関連付ける ◼ 検索列の表示名.一側(1側)テーブルより、リレーションしたいレコー ドをレコード(Record)型で指定する Patch(車, LookUp(車, モデル="アバルト595"), {自動車メーカー:LookUp(メーカー,ID = "ABA")}) ① 行をレコード型で特定 Lookup(),First(),Index() 等の関数 Gallery.Selected, ThisRecord など
検索列の値を更新 ② 41 車 モデル 自動車メーカー bf894e82- JULIA ALF 7bfdf6c6-
MiTo ALF adb35bff- アバルト595 ALF メーカー ID メーカー名 f62dbf6f- ALF Alfa Romeo 57549554- ABA ABARTH ABAに 変更したい [車] テーブル [メーカー] テーブル 多(N) 一(1) ② 行を関連付ける ◼ Relate() 関数で、関連付けも可能。一側(1側)にリレーションに対し、 多側(N側)のレコードをレコード(Record)型で指定する Relate(LookUp(メーカー, ID="ALF").車, LookUp(車, モデル="アバルト595")) ① 行をレコード型で特定 Lookup(),First(),Index() 等の関数 Gallery.Selected, ThisRecord など
検索列の値を追加 42 ◼ 検索列の表示名.一側(1側)テーブルより、リレーションしたいレコー ドをレコード(Record)型で指定する 車 モデル 自動車メーカー bf894e82- JULIA
ALF 7bfdf6c6- MiTo ALF アバルト595 ABA メーカー ID メーカー名 f62dbf6f- ALF Alfa Romeo 57549554- ABA ABARTH [車] テーブル [メーカー] テーブル 多(N) 一(1) ① 行をレコード型で特定 Lookup(),First(),Index() 等の関数 Gallery.Selected, ThisRecord など Patch(車,Defaults(車), {モデル:"アバルト595", 自動車メーカー:LookUp(メーカー,ID = "ALF")}) 行を追加 したい
検索列の値をクリア 43 ◼ 検索列に対し、Blank() をセットする。 ◼ Unrelate() でも可能。 車 モデル
自動車メーカー bf894e82- JULIA ALF 7bfdf6c6- MiTo ALF adb35bff- アバルト595 ABA メーカー ID メーカー名 f62dbf6f- ALF Alfa Romeo 57549554- ABA ABARTH ABAを 削除したい [車] テーブル [メーカー] テーブル 多(N) 一(1) Patch(車, LookUp(車, モデル="アバルト595"), {自動車メーカー: Blank() }) Unrelate(LookUp(メーカー, ID="ALF").車, LookUp(車, モデル="アバルト595"))
まとめ
まとめ Dataverse の検索 列は とっても便利! でもクセがあるので、 困ったら見に来てね! 61
ありがとうございました 62