Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
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
360
マルチステージとAI承認について
miyakemito
0
180
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
Claude in Chrome 入門 / Introduction to Claude in Chrome
cielo1985
0
830
AI 時代のスタートアップエコシステ厶から考究する技術的負債との向き合い方
m3m0r7
PRO
2
2.1k
AIを活用するために決めた "やらないこと" - 価値に注目する / Not betting on AI
soudai
PRO
2
540
え、こんなに早く改修できるの?──新人エンジニアとスクラムマスターの2人が語る、AI×アジャイル開発の現場
ysasago
0
140
OpenTelemetryのメトリクスをCloudWatchに送ってPromQLで見てみた
ota1022
0
150
10Xに技術的負債をもたらした「2つの境界の歪み」その構造と解消への営み
10xinc
0
2k
俺の仕事は AIに奪われないし、たぶんその BIも要らない
hikaruri
0
490
顧客に向き合う開発組織へ。リアーキテクチャとフィーチャーチーム化で挑む組織改革
safie
0
2k
aws-iot-platform-architecture-use-cases.pdf
ma2shita
0
210
作品が生態系になった ─ Mini Tokyo 3D から世界へ
nagix
0
190
AI に書かせたその API、 “信頼” できますか?
nagix
0
110
Screen Lens - 今見てる画面を翻訳する
komagata
0
320
Featured
See All Featured
Navigating Team Friction
lara
192
16k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.8k
Optimizing for Happiness
mojombo
378
71k
Being A Developer After 40
akosma
91
590k
How STYLIGHT went responsive
nonsquared
100
6.3k
Building the Perfect Custom Keyboard
takai
2
870
Accessibility Awareness
sabderemane
1
210
The browser strikes back
jonoalderson
0
1.7k
Tell your own story through comics
letsgokoyo
1
1.1k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
910
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
76k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
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