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
1.9k
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
290
マルチステージとAI承認について
miyakemito
0
160
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.1k
JSON攻略法.pdf
miyakemito
13
7.3k
ガンダムBotを1分でつくってみせろよ
miyakemito
1
910
Microsoft Copilot Studio について
miyakemito
0
8.6k
Other Decks in Technology
See All in Technology
PLaMoを毎日の開発で使い育てていく
pfn
PRO
0
170
NetBoxを利用した作業効率化の試み_NetDevNight4
tnoha
0
420
数値で見る Microsoft MVP 〜Spec Kit と GitHub Copilot Agent で作るデータ可視化ダッシュボード〜
yutakaosada
0
180
BigQuery を検索ソースとした AI Agent の作り方って 〇〇 通りあんねん
satohjohn
0
150
AIエージェントの知識表現と推論に なぜグラフが使われるのか - 記号的AIの復権とニューラルAIとの統合
yohei1126
1
250
Escolhendo LLMs na Prática: Lições Reais em Busca Agêntica no Mercado Livre —TDC 2026 Floripa
jpbonson
0
120
AI エージェント時代のデジタルアイデンティティ
fujie
2
1.3k
[MIRU26] To What Extent Does MLLM-as-a-Judge Exhibit Cross-Model Preference Bias?
keio_smilab
PRO
0
100
個人OSSが、机の上から世界に広がるまでの話
shinyasaita
1
200
脱Jenkins、インターン生が挑んだCIツールGitHubActions移行
mixi_engineers
PRO
1
300
Retriever と Reranker、結局どうする?
kazuaki
1
570
組織にどうSREを根付かせるか?〜IVRyの場合〜
abnoumaru
0
240
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
560
How to train your dragon (web standard)
notwaldorf
97
6.7k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
400
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
680
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
From π to Pie charts
rasagy
0
240
Leo the Paperboy
mayatellez
8
2k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
600
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
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