Filterを使用するとWork Withで作成したSelection画面で効率的にデータ検索を実施することができます。
Ignia Framework Patternのでは、Basic FilterとAdvanced Filterの2種類を提供しております。
Basic Filter:
Basic Filterは、GeneXus Work Withで提供されている機能と同様の機能を提供しております。Ignia Framework Patternにおける違いは魅了的なデザインです。
Defaultで作成されたインスタンスには、Filterは追加されておりません。Filterを追加する場合は、ノードセレクションを右クリックし、AddオプションでFilter項目をクリックします。
Filter追加後、ノードセレクションの下にAttributesノードとConditionsノードが含まれるFilterノードが表示されます。
- Attributes: Filterに利用されるAttributeや変数
- Conditions: Filterに利用されるAttributesや変数に関するCondition
AttributesやConditionsを追加するためには、GeneXusPatternで行われるのと同様の手順を追加していきます。これらのノードのプロパティは既存プロパティと同類です。
Generateすると、次のように表示されます。
Filterは折り畳み式パネル内にあり、ユーザーは表示/非表示をコントロールするとが可能です。また、パネルの右上には適用したFilterをクリアするためのボタンも表示されます。
Advanced Filter:
Gridでの検索パターンを柔軟に対応するために、一度に複数のFilterを定義することが可能です。Advanced Filterでは、Patternを適用した時点でFilterがインスタンスに適用されており、
トランザクションに定義されているAttributeを含む初期Filterが設定されます。
Advanced Filterでは、Attribute階層の下位に指定することでGrid上でFilterとして使用することが可能です。
各Attributeには、Conditionの詳細を設定するFilter Operatesが用意されております。
Advanced FilterノードのPropertiesでは、実行時に設定されるFilter数を指定するMax Filters Propertiesが用意されております。
例えば、UserName Attributeに対してMax Filters=2と定義した場合、以下のようにFilterが表示されます。
1つ目のCombo BoxにはAdvanced Filterに追加したAttributes、2つ目のCombo Boxには1つ目のCombo Boxに対するFilter Operaterが表示されます。
3つ目の入力エリアは、Filterに対して指定する値を入力できるようになっております。
Attributeのデータタイプによってコントロールタイプは異なり、ユーザーはAttributeノード内にあるコントロールタイププロパティで変更することが可能です。
プロパティの詳細についてはAttribute & Variables Propertiesを確認してください。
Attributes (Filter Attribute)
Attributeには様々なプロパティが用意されており、大部分はBasic Filterのプロパティと同様です。以下のプロパティは、Basic Propertiesとは違うPropertiesです。
- When: どのような場合にFilterを適用させるか、Conditionを定義することで指定できます。
- Case Sensitive: Filter ConditionがCase Sensitiveかそうでないかを定義できます。このプロパティは利用されているDBMSの設定に依存します。
Operators (Filter Operator)
Filter Operaterでは、次の指定が可能です。
- Caption: Combo Boxに対して表示するテキストを定義します。
- Operator: 適用するFilter Operatorを指定します。Attributeのデータタイプに対して適切な値をものを選択する必要があります。