今回は、Filter関数を使用してデータソース内のレコードを複数の条件でフィルタリングする方法を紹介します。
↓Filter関数の基本的な使い方はこちらの記事で紹介しています。
今回用意したデータソース
SharePointに「契約書管理台帳」というリストを用意しました。
列の種類
- 契約書番号:数値
- 契約書名:タイトル
- 契約先:1行テキスト
- 契約開始日:日付と時刻
- 契約終了日:日付と時刻
- 担当部署:1行テキスト
- 担当者1:1行テキスト
- 担当者2:1行テキスト
検索窓
今回は、こちらの検索窓を準備しました。
- 契約書番号:テキスト入力(数値)
- 契約書名:テキスト入力(テキスト)
- 契約先:テキスト入力(テキスト)
- 担当部署:テキスト入力(テキスト)
- 担当者1:テキスト入力(テキスト)
- 担当者2:テキスト入力(テキスト)
- 契約開始日:日付の選択
- 契約終了日:日付の選択
Gallery【Items】のコード
Filter(契約書管理台帳,
//契約書番号
IsBlank(Number.Text) || Number.Text = 契約書番号,
//契約書名
StartsWith(Title , Name.Text),
//契約先
StartsWith(契約先 , Company.Text),
//担当部署
StartsWith(担当部署 , Department.Text),
//担当者1
StartsWith(担当者1 , Manager1.Text),
//担当者2
StartsWith(担当者2 , Manager2.Text),
//契約開始日
'StartData-Start'.SelectedDate <= 契約開始日 || IsBlank(Text('StartData-Start'.SelectedDate)),
'StartData-End'.SelectedDate >= 契約開始日 || IsBlank(Text('StartData-End'.SelectedDate)),
//契約終了日
'EndData-Start'.SelectedDate <= 契約終了日 || IsBlank(Text('EndData-Start'.SelectedDate)),
'EndData-End'.SelectedDate >= 契約終了日 || IsBlank(Text('EndData-End'.SelectedDate))
)
ポイント
Filter関数は、結果が trueとなるレコードを返します。
Filter関数は、結果が trueとなるレコードを返すので、検索窓に何も入力していない時は、
全ての条件がtrueとなっていた方が良いです。
Falseとなっている条件が存在した場合、検索窓に何も入力していないのにも関わらずレコードが一つも表示されなくなります。
//契約書番号
IsBlank(Number.Text) || Number.Text = 契約書番号,
↓条件式を下の条件式に変更してみます。
//契約書番号
Number.Text = 契約書番号,
検索窓「契約書番号」が空欄だった場合、「Number.Text = 契約書番号」のみの条件式だと、Falseを返してしまい、
一つもレコードが表示されなくなってしまいます。
条件式の例
trueを返す条件式を紹介します。
テキスト入力(完全一致)
//契約書番号
IsBlank(Number.Text) || Number.Text = 契約書番号,
テキスト入力(完全一致)の場合は、IsBlank関数と組み合わせます。IsBlank関数は空白だった場合は、trueを返します。
テキスト入力(部分一致)
//契約書名
StartsWith(Title , Name.Text),
StartsWith関数は、検索窓「契約書名」が空だった場合、trueを返します。
日付の選択
//契約開始日
'StartData-Start'.SelectedDate <= 契約開始日 || IsBlank(Text('StartData-Start'.SelectedDate)),
'StartData-End'.SelectedDate >= 契約開始日 || IsBlank(Text('StartData-End'.SelectedDate)),
こちらも同様に、IsBlank関数と組み合わせることで空の場合、falseを返すのを回避できます。
まとめ
今回は、Filter関数を使用してデータソース内のレコードを複数の条件でフィルタリングする方法を紹介しました。
検索機能を充実させることで、社内のユーザーが使いやすいアプリを作っていきましょう!
コメント
コメント一覧 (279件)
LOTTERY DEFEATER SOFTWARE
BOOSTARO
NAGANO TONIC REVIEWS
ALPHA BITES REVIEWS
Lottery defeater
Lipozem review
Fitspresso
norethindrone 5mg cost – purchase lumigan sale generic yasmin
Alpha bites review
buy yasmin medication – purchase arimidex without prescription order anastrozole online
TURMERIC HACK RECIPE
LIPOZEM REVIEW
PURAVIVE REVIEW
Having read this I thought it was very informative. I appreciate you taking the time and effort to put this article together. I once again find myself spending way to much time both reading and commenting. But so what, it was still worth it!
order dostinex 0.25mg pills – buy alesse sale buy alesse sale
There is noticeably a bundle to know about this. I assume you made certain nice points in features also.
LipoSlim review
LipoSlim review
NERVOVIVE
Alpha bites reviews
Alphabites
гѓ—гѓ¬гѓ‰гѓ‹гѓігЃ®йЈІгЃїж–№гЃЁеЉ№жћњ – гѓ—гѓ¬гѓ‰гѓ‹гѓі и–¬е±ЂгЃ§иІ·гЃ€г‚‹ г‚ўг‚ёг‚№гѓгѓћг‚¤г‚·гѓіг‚ёг‚§гѓЌгѓЄгѓѓг‚Ї йЂљиІ©
バイアグラ её‚иІ© гЃЉгЃ™гЃ™г‚Ѓ – シルデナフィルジェネリック йЂљиІ© г‚їгѓЂгѓ©гѓ•г‚Јгѓ«йЂљиІ©гЃ§иІ·гЃ€гЃѕгЃ™гЃ‹
FREE SUGAR PRO REVIEW
Alpha bites review
Lipozem reviews
Lipo Slim reviews
Alpha bites reviews
гѓ—гѓ¬гѓ‰гѓ‹гѓійЂљиІ©гЃ§иІ·гЃ€гЃѕгЃ™гЃ‹ – イソトレチノイン гЃЇйЂљиІ©гЃ§гЃ®иіј г‚ўг‚гѓҐгѓ†г‚¤гѓійЊ 20 mg еј·гЃ•