diff options
| author | Christophe Simonis <chs@odoo.com> | 2015-03-25 19:14:46 +0100 |
|---|---|---|
| committer | Christophe Simonis <chs@odoo.com> | 2015-03-25 19:14:46 +0100 |
| commit | 2565aa60e06f62e9689a2d139c7c9d9da3f3caa1 (patch) | |
| tree | 24ba29ee26289539d1f206385c968f0a3a89ae8a /addons/web/static | |
| parent | 2783f2e0a7727cbf2f67ec23cad83ef61fa45d6d (diff) | |
| parent | c2b476686083876df3c27a17885581592303c8f5 (diff) | |
[MERGE] forward port of branch saas-6 up to c2b4766
Diffstat (limited to 'addons/web/static')
| -rw-r--r-- | addons/web/static/src/js/views/form_view.js | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/addons/web/static/src/js/views/form_view.js b/addons/web/static/src/js/views/form_view.js index 6c97c076781..9c4b9add4f1 100644 --- a/addons/web/static/src/js/views/form_view.js +++ b/addons/web/static/src/js/views/form_view.js @@ -845,6 +845,16 @@ var FormView = View.extend(common.FieldManagerMixin, { } } } + // Heuristic to assign a proper sequence number for new records that + // are added in a dataset containing other lines with existing sequence numbers + if (!self.datarecord.id && self.fields.sequence && + !_.has(values, 'sequence') && !_.isEmpty(self.dataset.cache)) { + // Find current max or min sequence (editable top/bottom) + var current = _[prepend_on_create ? "min" : "max"]( + _.map(self.dataset.cache, function(o){return o.values.sequence}) + ); + values['sequence'] = prepend_on_create ? current - 1 : current + 1; + } if (form_invalid) { self.set({'display_invalid_fields': true}); first_invalid_field.focus(); |
