Monetize360

Configuring Dashboard Filters

Learn how to configure global filters for dashboards, including filter criteria, widget mapping, and join information

Configuring Dashboard Filters

Dashboard filters allow you to apply global filters that affect multiple widgets on a dashboard. Filters can filter data across different Objects and widgets, enabling powerful cross-object filtering and data synchronization.

What are Dashboard Filters?

Dashboard filters enable you to:

  • Filter Multiple Widgets: Apply a single filter that affects multiple widgets simultaneously
  • Cross-Object Filtering: Filter data across different Objects using relationships
  • Dynamic Filtering: Change filter values to update all affected widgets in real-time
  • Widget Mapping: Map filter fields to widget-specific fields for flexible filtering
  • Join Information: Configure relationships between Objects for complex filtering scenarios

How Dashboard Filters Work

Filter Flow

  1. Filter Definition: Define a filter using a reference object and field
  2. Filter Criteria: Configure filter conditions (operator, value)
  3. Widget Mapping: Map the filter field to fields in each widget
  4. Filter Application: When filter value changes, all mapped widgets update automatically

Key Concepts

  • Reference Object: The Object that provides the filter field
  • Reference Field: The field from the reference object used for filtering
  • Widget Mapping: Links filter fields to widget-specific fields
  • Join Information: Defines relationships between Objects for cross-object filtering

Creating Filters

1. Open Filter Configuration

Click the "Add Filter" button in the filters section of the dashboard designer to open the filter configuration modal.

2. Configure Filter Basic Information

Filter Name

Enter a descriptive name for the filter. This name will be displayed in the filter chips above the dashboard.

Required: Yes

Field: Filter Name

Best Practice: Use clear, descriptive names that indicate what the filter does (e.g., "Date Range", "Customer Filter", "Status Filter").

Filter Description

Provide an optional description explaining the filter's purpose or usage.

Required: No

Field: Filter Description

3. Select Reference Object

Choose the Object that provides the filter field. This is the source object for your filter criteria.

Required: Yes

How to select: Use the dropdown to select an Object. The dropdown shows Objects that are used by widgets on the dashboard.

Note: The reference object must be associated with at least one widget on the dashboard.

4. Select Reference Field

Choose the field from the reference object that will be used for filtering.

Required: Yes

How to select: After selecting a reference object, use the field selector to choose a field. Available fields include:

  • Regular fields from the Object
  • Lookup fields (fields that reference other Objects)
  • System properties (id, created_at, etc.)

Field Types: You can filter by any field type (String, Number, Date, Picklist, Lookup, etc.).

5. Configure Filter Criteria

Configure the filter condition using the query builder interface.

Filter Operator

Select the comparison operator for the filter:

String/Text Fields:

  • Equals: Exact match
  • Not Equals: Not equal to value
  • Contains: Contains substring
  • Not Contains: Does not contain substring
  • Starts With: Begins with value
  • Ends With: Ends with value
  • Is Null: Field is null
  • Is Not Null: Field is not null
  • In: Field value is in list
  • Not In: Field value is not in list

Numeric Fields:

  • Equals: Equal to value
  • Not Equals: Not equal to value
  • Greater Than: Greater than value
  • Greater Than or Equal: Greater than or equal to value
  • Less Than: Less than value
  • Less Than or Equal: Less than or equal to value
  • Between: Between two values
  • Is Null: Field is null
  • Is Not Null: Field is not null
  • In: Field value is in list
  • Not In: Field value is not in list

Date Fields:

  • Equals: Equal to date
  • Not Equals: Not equal to date
  • Greater Than: After date
  • Greater Than or Equal: On or after date
  • Less Than: Before date
  • Less Than or Equal: On or before date
  • Between: Between two dates
  • Is Null: Field is null
  • Is Not Null: Field is not null
  • Date Literals: Today, Yesterday, Last Week, Last Month, etc.

Picklist Fields:

  • Equals: Equal to picklist value
  • Not Equals: Not equal to picklist value
  • In: Field value is in list of picklist values
  • Not In: Field value is not in list of picklist values
  • Is Null: Field is null
  • Is Not Null: Field is not null

How to select: The operator dropdown automatically shows operators that are valid for the selected field's data type.

Filter Value

Enter the filter value based on the selected operator:

Single Value Operators (Equals, Contains, Greater Than, etc.):

  • Enter a single value in the input field
  • For picklist fields, select from dropdown
  • For date fields, use date picker or date literals (Today, Yesterday, etc.)
  • For lookup fields, select from related Object records

Multiple Value Operators (In, Not In):

  • Enter multiple values (tags mode)
  • Select multiple values from dropdown
  • For picklist fields, select multiple picklist values

Between Operator:

  • Enter two values (start and end)
  • For dates, select date range
  • For numbers, enter min and max values

Null Operators (Is Null, Is Not Null):

  • No value input required
  • Operator alone defines the condition

Value Input Types:

  • Text Input: For string/text fields
  • Number Input: For numeric fields
  • Date Picker: For date fields
  • Dropdown: For picklist fields
  • Typeahead: For lookup fields (searches related Object records)

6. Configure Widget Mapping

Map the filter field to fields in each widget that should be affected by this filter.

Understanding Widget Mapping

Widget mapping connects the filter field to widget-specific fields:

  • Filter Field: The reference field you selected (e.g., "Customer ID")
  • Widget Field: A field in a widget that should be filtered (e.g., "Order Customer ID")

When the filter value changes, widgets with mappings update to show only records matching the filter.

Add Widget Mappings

For each widget on the dashboard:

  1. Select Widget: The widget is automatically listed if it uses an Object related to the reference object
  2. Select Widget Field: Choose the field in the widget that corresponds to the filter field
  3. Data Type Matching: The widget field must have a compatible data type with the filter field

Required: At least one widget mapping is required

How it works:

  • Only widgets with mappings are affected by the filter
  • Widgets without mappings continue to show all data
  • Multiple widgets can be mapped to the same filter

Widget Mapping Rules

  • Data Type Compatibility: Widget fields must have compatible data types with the filter field
  • Field Availability: Only fields from widgets that use Objects related to the reference object are available
  • Multiple Mappings: You can map the filter to multiple widgets
  • Optional Mappings: Not all widgets need to be mapped (only those you want filtered)

7. Join Information (Automatic)

Join information is automatically generated when:

  • Filter fields reference other Objects (lookup fields)
  • Widget fields reference other Objects
  • Cross-object relationships exist

How it works: The system automatically detects relationships and generates join information to enable cross-object filtering.

Manual Configuration: Join information is typically handled automatically, but you can verify it in the filter configuration.

8. Save Filter

Click "Save" to create the filter. The filter will:

  • Appear as a filter chip above the dashboard
  • Be available for editing and deletion
  • Apply to all widgets with mappings when values are set

Managing Filters

Viewing Filters

Filters are displayed as chips above the dashboard:

  • Filter Name: Displayed as the chip label
  • Filter Value: Shows current filter value (if set)
  • Operator Icon: Visual indicator of the operator type
  • Edit Icon: Click to edit the filter
  • Delete Icon: Click to remove the filter

Editing Filters

To edit an existing filter:

  1. Click the Edit icon (pencil icon) on the filter chip
  2. The filter configuration modal opens with current settings
  3. Modify filter name, description, criteria, or widget mappings
  4. Click "Save" to apply changes

Note: Editing a filter updates it for all widgets that use it.

Removing Filters

To remove a filter:

  1. Click the Delete icon (X icon) on the filter chip
  2. Confirm deletion in the confirmation dialog

Warning: If a widget is deleted and it was the only widget mapped to a filter, the filter will also be deleted. You'll be notified about affected filters before deletion.

Clearing Filter Values

To clear a filter value without deleting the filter:

  1. Click the Clear icon on the filter chip
  2. The filter value is cleared, and all widgets show unfiltered data

Note: Clearing a filter value doesn't delete the filter configuration. You can set a new value later.

Applying Filters

Filters are applied automatically when:

  • Filter value is set or changed
  • Dashboard is loaded with saved filter values
  • Filter is edited and saved

Real-time Updates: Widgets update in real-time when filter values change.

Multiple Filters

Adding Multiple Filters

You can add multiple filters to a dashboard:

  1. Click "Add Filter" to create additional filters
  2. Configure each filter independently
  3. Each filter can have different reference objects, fields, and widget mappings

Filter Combination Logic

When multiple filters are active:

  • AND Logic: All active filters are applied together (records must match all filters)
  • Independent Operation: Each filter works independently
  • Combined Effect: Widgets show only records that match all active filters

Example: If you have "Date Range" and "Status" filters active, widgets show records that match both the date range AND the status.

Filter Priority

  • All filters have equal priority
  • Filters are applied in the order they were created (for display purposes)
  • No filter overrides another filter

Best Practices

Filter Design

  • Meaningful Names: Use clear, descriptive filter names
  • Appropriate Fields: Choose fields that make sense for filtering
  • User-Friendly Values: Use filters that users can easily understand and set

Widget Mapping

  • Map Relevant Widgets: Only map widgets that should be filtered together
  • Data Type Matching: Ensure widget fields have compatible data types
  • Test Mappings: Verify that widget mappings work correctly after configuration

Performance

  • Limit Filter Count: Avoid creating too many filters (typically 2-5 filters)
  • Efficient Operators: Use efficient operators (Equals is faster than Contains)
  • Indexed Fields: Prefer filtering on indexed fields for better performance

User Experience

  • Default Values: Consider setting default filter values for common use cases
  • Clear Labels: Use filter names that clearly indicate what they filter
  • Filter Documentation: Add descriptions to explain filter purpose

Cross-Object Filtering

  • Relationship Understanding: Understand Object relationships before configuring cross-object filters
  • Join Verification: Verify that join information is correctly generated
  • Test Scenarios: Test filters with different data scenarios

Common Use Cases

Date Range Filtering

Filter widgets by date ranges:

  • Reference Object: Orders Object
  • Reference Field: Order Date
  • Operator: Between
  • Widget Mapping: Map to Order Date fields in report and datagrid widgets

Status Filtering

Filter widgets by status:

  • Reference Object: Tasks Object
  • Reference Field: Status (Picklist)
  • Operator: Equals or In
  • Widget Mapping: Map to Status fields in task-related widgets

Customer Filtering

Filter widgets by customer:

  • Reference Object: Customers Object
  • Reference Field: Customer ID
  • Operator: Equals
  • Widget Mapping: Map to Customer ID fields in order, invoice, and payment widgets

Cross-Object Filtering

Filter widgets using related Object data:

  • Reference Object: Customers Object
  • Reference Field: Customer Name (via lookup)
  • Operator: Contains
  • Widget Mapping: Map to Customer Name fields in order widgets (using join information)