diff options
| author | Raphael Collet <rco@openerp.com> | 2015-09-04 10:06:11 +0200 |
|---|---|---|
| committer | Raphael Collet <rco@openerp.com> | 2015-09-04 13:25:51 +0200 |
| commit | f5e5bbdae0d799b10fa6e59547d14b1a42e87f89 (patch) | |
| tree | e34534dd7042c4375ed982da37c1f609015ab15d /addons/analytic_user_function/security | |
| parent | 1658bee8d45d37d7fabd0ac230b894a4a6b89303 (diff) | |
[FIX] expression: fix search on one2many field with inherited inverse field
Consider the following setting:
- on model A, field F is computed, stored, and depends on field G
- on model A, field one2many G to model B, with inverse field H
- on model B, field many2one H is inherited (_inherits) from model C
- on model C, field many2one H is stored
When adding records of model B, the field F must be recomputed. In order to
determine which records to recompute, one searches model A with a domain like
[(G, 'in', ids)]. In expression.py, this is resolved with an SQL query like
select H from B where id in {ids}
This query fails, since the field H is not stored in model B. This happens in
general if H is not stored (it may be any computed field). In that case, one
should instead browse records from B, and read field H through the ORM.
A test case has been added: it introduces a many2one field in a parent model,
and a one2many field using the inherited many2one on a child model. The test
checks whether one can search on the one2many field.
Diffstat (limited to 'addons/analytic_user_function/security')
0 files changed, 0 insertions, 0 deletions
