今回は、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件)
Boostaro
Fitspresso
Sight Care review
Lipozem
The genius wave
ALPHA BITES
Puravive reviews
Nanodefense pro
PROSTAVIVE
Lipozem
PROSTAVIVE REVIEWS
PROSTAVIVE REVIEWS
Boostaro reviews
Fitspresso
Alphabites reviews
Quietum plus reviews
buy cleocin 150mg pills – cleocin 300mg generic buy generic indomethacin for sale
buy losartan without prescription – cheap cephalexin buy cephalexin 125mg for sale
nitric boost review
The genius wave review
Alphabites reviews
Lipozem
crotamiton drug – bactroban ointment sale aczone for sale
PROVADENT REVIEWS
modafinil pills – modafinil over the counter buy melatonin 3 mg for sale
Alpha bites
ALPHA BITES REVIEW
LIPOZEM REVIEW
Show the camsex girls your hard cock. They are keen to see it when they fuck themselves with the dildo. With Cam To Cam it gets really hot in front of the sex cam. Simply choose your live sex and switch on your live cam. Jerk off together and climax together. This is how sexcam sex becomes satisfying.
nitric boost results
buy zyban without prescription – orlistat pills order shuddha guggulu generic
Alphabites reviews
xeloda cheap – buy danocrine 100mg buy danocrine 100 mg
lean body tonic weight loss
Plantsulin reviews
Alpha bites reviews
Lipozem reviews
Lottery defeater software
progesterone 200mg oral – order ponstel generic cheap fertomid generic
NAGANO TONIC
LOTTERY DEFETAER REVIEWS
ALPHA BITES
Alpha bites
Fitspresso
Alpha bites reviews
Alphabites
alendronate 70mg over the counter – buy pilex for sale cheap provera
LOTERRY DEFEATER REVIEWS
BOOSTARO
FITSPRESSO REVIEWS