Dataverse検索機能をオンにする

# そもそもDataverse検索とは

Power Appsのモデル駆動型アプリの一番上に表示される検索バーを使った検索を「Dataverse検索」といいます。
複数テーブルの**行に対する検索**や**添付ファイル内の文字列**まで検索できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2883014/1ef8607b-868c-289c-834b-1c560a572dbe.png)

## Dataverse検索のここがすごい！
- 検索エンジンライクにDataverse内のデータをテーブル横断で高速に検索をかけることが標準で可能
- Dataverseに保存されている添付ファイル内の文字列も検索対象（OfficeドキュメントやPDF等）
- 柔軟な検索条件を設定可能(あいまい検索、AND・OR条件、完全一致、前方後方ワイルドカード)
- 裏側はAzure AI Searchの仕組みを採用

::: note warn
検索対象になるファイルは、メモ（Note(annotation)）テーブルに保存されたファイルです。
現在ファイル列は対象外となっております。
:::

::: note warn
現状、環境を作成するときに設定するベース言語をベースに裏で動いてるAzure Cognitive Searchのインデックスアナライザーが動くため、異なる言語を使用すると、上手く単語を区切ってくれません。

https://learn.microsoft.com/ja-jp/power-platform/admin/configure-relevance-search-organization#availability-and-language-support
:::

# Dataverse検索機能をオンにする
その環境のDataverse検索機能は連動してます。
つまり、一つの環境でDataverse検索をオンにすると、その環境内のすべてのモデル駆動型アプリに反映されます。

これを追加する方法を後述します。

:::note warn
テーブルの行に対してDataverse検索をオンにするには各テーブルで設定する必要があります。
[検索バーでテーブルの行に対して検索をかけられるようにする方法](https://qiita.com/skuramoto/items/ae17c3903751e4cd9517)

また、どの列に検索をかけるのか、検索結果にどんな列を表示するかを設定するには簡易検索ビューをカスタマイズし、追加しないといけません。
[簡易検索ビューをカスタマイズする](https://qiita.com/skuramoto/items/4ca639a9527c6b45aca3)
:::

# 検索機能の追加手順
1. Power Apps画面で右の歯車マークをクリックし設定メニューを開き、[管理センター]を選択
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2883014/ec348e2f-279d-2ebf-2302-330ae6e8caab.png" width=50%>

2. Power Platform管理センターが開いたら[環境]を開いて対象の環境を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2883014/46499dd3-34be-21c0-539c-7ba5fe7feaad.png)

3. 環境の詳細画面に移ったら、[設定]をクリック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2883014/c4d69d05-0490-8013-00aa-bac07ce4fa62.png)

4. [製品]を開き、[機能]を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2883014/92763859-ccb7-5c46-7798-5083fe476a37.png)

5. [検索]の[Dataverse検索]をオンにして、画面下の保存ボタンを押す
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2883014/9842a486-8fc1-672f-8ced-66056f2e1fdc.png)<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2883014/d0452d8b-a446-d387-ecfa-b6151a403d0c.png" width=40%>

:::note warn
Dataverse検索を有効後は初回のインデックス作成処理が発生するため、実際に検索が有効になるのは1時間から最大12時間かかります。
:::
同じ環境内のPowerAppsホーム画面やモデル駆動型アプリに表示されます。


## モデル駆動型アプリでビューを追加する
対象のビューを追加しないと検索バーで検索をかけてもページが表示されません。


2.  モデル駆動型アプリ編集画面で[ページ]＞対象のビュー＞[ビューの追加]＞簡易検索ビューであるビューを選択
簡易検索ビューのカスタマイズは別で必要です。簡易検索ビューの「列の検索」に検索対象にしたい列の追加をするとこのDataverse検索にも反映されます。
簡易検索ビューの作成方法についてはこちら↓から
[簡易検索ビューをカスタマイズする](https://qiita.com/skuramoto/items/4ca639a9527c6b45aca)<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2883014/435ed156-7855-32c4-e991-db5d58a33489.png" width=100%>


3. [公開]する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2883014/ffb50062-a09f-10e6-a6bd-94ef4fc40416.png)

2. [再生]して、実際のアプリ操作画面にて、簡易検索ビューにある列で検索をかけることができる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2883014/27f430ab-d767-a767-344b-245f0ad47b90.png)


# まとめ
今回はDataverse検索機能をオンにする方法について書きました。
検索バーを追加するだけでアプリ内の検索が便利になりますので、是非、やってみてください！

https://learn.microsoft.com/ja-jp/power-platform/admin/configure-relevance-search-organization#select-searchable-fields-and-filters-for-each-table