OdooWiki OCA HUB

Advanced filters

web_advanced_filter folder_open OCA/web open_in_new
Tools License: AGPL-3

This addon allows users to apply set operations on filters: Remove or add certain ids from/to a selection, but also to remove or add another filter's outcome from/to a filter. This can be stacked, so the filter domain can be arbitrarily complicated.

The math is hidden from the user as far as possible, in the hope it's still user friendly.

auto_awesome What this module does

AI-generated from the code · Odoo 12.0

Lets users build advanced saved filters by adding or removing the results of other filters, and by turning the current search or the ticked records into a new filter.

This module extends Odoo's saved filters (ir.filters) so a filter can be built from other filters instead of a single search rule.

On the filter form you get two new lists: "Add the result of following filters" and "Remove the result of following filters". The records matched by the filters you add are included, and the records matched by the filters you remove are excluded. The final search rule is recalculated automatically, and the plain rule is kept separately as "Domain without helpers".

Two buttons appear at the top of the filter form: - "Test filter" opens the matching records in a list. - "Freeze filter" replaces the filter with the exact list of records it matches right now; this cannot be undone.

In the search bar, next to the favourites menu, an "Advanced filters" menu appears when you have typed a search or ticked records. From there you can save the current search or the ticked records as a new filter, add them to an existing filter, or subtract them from an existing filter. A small wizard asks which existing filter to combine with.

When a filter is saved, it is private to you unless you tick "Share with all users". Helper filters created behind the scenes are cleaned up automatically when no longer used.

Depends on

web
Models and fields (2)
  • ir.filters · extends an existing modeldomain, is_frozen (Frozen), domain_this (Domain without helpers), save_as_public (Share with all users), union_filter_ids, evaluate_before_join (Evaluate this filter before joining), complement_filter_ids, evaluate_before_negate (Evaluate this filter before negating)
  • ir.filters.combine.with.existing · new modelmodel (Model), action, domain (Domain), context (Context), filter_id (Filter)

Text generated by AI (DeepSeek) from reading the Odoo 12.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 1 confirmed, 8 with no information of 9 versions.

terminal Installation and usage

OCA documentation · Odoo 12.0

After this addon is installed, every search view shows a new menu Advanced filters. Here the set operations can be applied as necessary.

Note the menu is only visible when there's search criteria or some record selected.

No verified information in OCA: Installation, Configuration.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.