PowerAppsでGoogleみたいに複数ワードで検索をする方法
はじめに
PowerAppsの開発をしていると、Galleryの検索機能はどのアプリにも追加しますよね。アプリによっては、Google検索のようにテキストボックスの中に自由に入力した複数ワードを使って検索シたいと思います。
当方自身もフリーワードで検索するアプリを作成するときに検索したところ
3ワードまでであれば検索する方法の紹介はありました。
ただ、本来やりたいことは、何ワードでも上限なしに検索を行いたいです。
このときは、一度諦めてMax3ワードでの検索機能でリリースしていました。
どうやるの?
GalleryのItemsプロパティに以下のように指定することで、検索ワードの上限なく検索することができます。
※ 実際には検索ワード数を大量に指定すると、負荷が高くなる可能性があります。未確認。
OR検索
With(
{
SearchTextList: Split( Trim( Inputbox.Text) )
},
Filter(
Datasource,
Or(
IsBlank(Inputbox.Text),
true in ForAll(SearchTextList,
Or(
Lower(ThisRecord.Result) in Lower([検索対象フィールド1]),
Lower(ThisRecord.Result) in Lower([検索対象フィールド2])
)
)
)
)
)
)
AND検索
With(
{
SearchTextList: Split( Trim( Inputbox.Text) )
},
Filter(
Datasource,
Or(
IsBlank(Inputbox.Text),
!(false in ForAll(SearchTextList,
Or(
Lower(ThisRecord.Result) in Lower([検索対象フィールド1]),
Lower(ThisRecord.Result) in Lower([検索対象フィールド2])
)
))
)
)
)
)
あとがき
Reza Dorrani さんのYoutube動画を参考にさせていただきました。
デザインともに大変参考になりますのでぜひご覧ください。
この記事が気に入ったらサポートをしてみませんか?