Commit Graph
24 Commits
Author SHA1 Message Date
Christophe Simonis 9e159ef204 [MERGE] forward port branch saas-11 up to f830c7c3e3 2017-04-12 18:51:16 +02:00
Goffin Simon 428d9e8177 [FIX] odoo: Copy a record in other language than US
When copying a record in an other language L than US, first a translation
was created for L by the create called in the copy function and afterwards,
a second translation was created by the function copy_translations

So there were two duplicated translations for L instead of one.

opw:706865
2017-04-06 17:13:15 +02:00
Raphael Collet 9e23458d40 [FIX] models: ensure recomputation after inversing fields (#15683)
When updating record using "record.field = value", we need to ensure that
all fields in cache depending on "record.field" will be recomputed.
2017-03-23 17:11:00 +01:00
Christophe Simonis 7abeace770 [MERGE] forward port branch saas-11 up to 5c4744cd1f 2017-03-01 15:17:55 +01:00
Christophe Simonis ffd4442b06 [MERGE] forward port branch saas-11 up to 06e9e45d03 2017-02-10 11:49:35 +01:00
Christophe Simonis 59d1f9b564 [IMP] core: only mark updated fields as modified at model reflection
`model` field of `ir.model` may be used as related stored field.
Marking it as modified force recomputation of these, even no change
occurs (by definition).
2017-01-31 13:56:28 +01:00
Christophe Simonis 879c323578 [MERGE] forward port branch saas-11 up to 6825ddf9ad 2017-01-18 14:42:04 +01:00
Raphael Collet 7d19661fb6 [FIX] models: allow @constrains on fields with inverse method 2016-12-15 09:53:58 +01:00
Christophe Simonis 18456b9d42 [MERGE] forward port branch saas-11 up to 321b7dc 2016-12-09 15:44:01 +01:00
Raphael Collet b62d078c9d [FIX] models: identify sparse fields with field.sparse 2016-12-08 11:08:01 +01:00
Christophe Simonis 53d8f76a40 [MERGE] forward port branch saas-12 up to e8e4145 2016-10-17 16:00:39 +02:00
Sébastien BEAU f72c7c3adf [REF] models: rename __export_rows to _export_rows to make it inheritable
Closes #10270.
2016-10-14 15:00:37 +02:00
Christophe Simonis 0acd63d073 [MERGE] forward port branch saas-12 up to 27dc061 2016-10-12 17:03:55 +02:00
Christophe Simonis 341bea8f88 [MERGE] forward port branch saas-12 up to 43cb4ac 2016-10-10 13:00:05 +02:00
Raphael Collet 6b1f6aa1d4 [IMP] models: in model/field reflection, trigger recomputations
This enables extensions of `ir.model` and `ir.model.fields` with computed
fields without messing up too much with reflection itself.
2016-09-28 16:55:51 +02:00
Raphael Collet 1c4661ee9d [IMP] models: refactor _add_manual_fields to make it extendable 2016-09-28 16:55:51 +02:00
Martin Geubelle 442355518d [ADD] add default view for kanban and graph 2016-09-28 16:55:51 +02:00
Christophe Simonis 856476d441 [MERGE] forward port branch saas-12 up to b1b700a 2016-09-22 15:23:45 +02:00
Raphael Collet f642727248 [IMP] models: in _read_group_fill_results, rewrite the merge of results 2016-09-16 17:35:24 +02:00
Raphael Collet fa082019a0 [IMP] models: change API of _group_by_full
The dictionary `_group_by_full` is replaced by a field parameter `group_expand`
that is assigned to the method name.  The API of the method has been simplified
as well:

    @api.multi
    def _read_group_stage_ids(self, domain, read_group_order=None, access_rights_uid=None):
        # the stages are given by self.ids (wrong model);
        # read_group_order is the order given to read_group() on self;
        # return stages.name_get(), {stage.id: stage.fold)

    _group_by_full = {'stage_id': _read_group_stage_ids}

is now written:

    stage_id = fields.Many2one(..., group_expand='_read_group_stage_ids')

    @api.model
    def _read_group_stage_ids(self, stages, domain, order):
        # stages is a recordset;
        # order is the order to use on stages' model;
        # return a recordset which is a superset of stages
2016-09-16 17:35:24 +02:00
Raphael Collet 1e5ecfd183 [REF] models: add methods to efficiently concatenate and union recordsets 2016-09-06 12:23:01 +02:00
Olivier Dony 6ea36beec5 [FIX] models: preserve order when merging recordsets
RecordSets were not preserving order when combined
with AND/OR set operators. Order was lost as well
through mapped().

This caused various recurring "heisenbugs" during
tests executions on runbot, specifically comming
in the test of stock_landed_costs.

Using OrderedSets instead of basic Sets to resolve
these operation avoids the indetermination.

This required an implementation of __or__ / __and__
for OrderedSet.
2016-09-05 12:17:04 +02:00
Raphael Collet 4a700d0ad9 [FIX] odoo: rename imports and adapt import hooks 2016-09-02 17:28:12 +02:00
Raphael Collet 9e64f9f951 [REF] openerp: move openerp to odoo 2016-09-02 17:28:12 +02:00