Easier and more powerful searching tools
More powerful and easy to use search, especially for related fields.
Table of contents
To use this module, you need to:
- Open Filters in a search view
- Select any relational field
- Select one of operators: is equal to, is not equal to, is child of, or is parent of
- The text field changes to a relational selection field where you can search for the record in question
- Click Apply
To search for properties of linked records (ie invoices for customers with a credit limit higher than X):
- Open Filters in a search view
- Select Add Advanced Filter
- Edit the advanced filter
- Click Save
Note that you can stack searching for properties: Simply add another advanced search in the selection search window. You can do this indefinetely, so it is possible to search for moves belonging to a journal which has a user who is member of a certain group etc.
- Note also the domain dialog offers an editable preview in debug mode:
Improvements to the domain widget, not exclusively related to this addon:
- Use relational widgets when filtering a relational field
- Allow to filter field names
Improvements to the search view in this addon:
- Use widgets one2many_tags when searching one2many fields
- Use widgets many2many_tags when searching many2many fields
- Allow to edit current full search using the advanced domain editor
Improvements to the is child of/is parent of operators:
- Show the operators only for models with _parent_store = True
Fix initialization of 1st domain node
Sometime the dialog is not ready yet, like on EE version. Hence when you inject the 1st domain node the dialog must be already opened.
Fix undefined in x2m fields
Before this patch, when searching with the "equals to" operator in any x2many field, the searched parameter was always undefined.
The problem was that the underlying field manager implementation was treating those fields as x2many, while the widget used was the one2many one.
This patch simply mocks the underlying fake record to make think that any relational field is always a one2many. This sets all pieces in place and makes the field manager work as expected, and thus you can search as expected too.
Make linter happy
Rename, refactor, migrate to v11
Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed feedback.
Do not contact contributors directly about support or help with technical issues.
- Holger Brunn <email@example.com>
- Vicent Cubells <firstname.lastname@example.org>
- Jairo Llopis <email@example.com>
- Rami Alwafaie <firstname.lastname@example.org>
- Jose Mª Bernet <email@example.com>
- Simone Orsi <firstname.lastname@example.org>
- Dennis Sluijk <email@example.com>
- Alexey Pelykh <firstname.lastname@example.org>
This module is maintained by the OCA.
OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.
This module is part of the OCA/web project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.