[IMP] base_import: defer parent store

Makes possible to choose `defer_parent_store_computation` in UI.

Closes #21320
This commit is contained in:
Nicolas Seinlet
2017-12-12 12:05:51 +01:00
committed by Nicolas Martinelli
parent b610e2a812
commit 68cb2ade09
2 changed files with 13 additions and 1 deletions
@@ -316,6 +316,7 @@ var DataImport = Widget.extend(ControlPanelMixin, {
this.$('.oe_import_float_decimal_separator').val(result.options.float_decimal_separator).change();
if (result.debug === false){
this.$('.oe_import_tracking').hide();
this.$('.oe_import_deferparentstore').hide();
}
var $fields = this.$('.oe_import_fields input');
@@ -454,10 +455,12 @@ var DataImport = Widget.extend(ControlPanelMixin, {
return $(el).select2('val') || false;
}).get();
var tracking_disable = 'tracking_disable' in kwargs ? kwargs.tracking_disable : !this.$('#oe_import_tracking').prop('checked')
var defer_parent_store = 'defer_parent_store' in kwargs ? kwargs.defer_parent_store : !!this.$('#oe_import_deferparentstore').prop('checked')
delete kwargs.tracking_disable;
delete kwargs.defer_parent_store;
kwargs.context = _.extend(
{}, this.parent_context,
{tracking_disable: tracking_disable}
{tracking_disable: tracking_disable, defer_parent_store_computation: defer_parent_store}
);
return this._rpc({
model: 'base_import.import',
@@ -63,6 +63,15 @@
Track history during import
</label>
</div>
<div title="If the model uses parent/child relations, computing the
parent / child relation occurs on every line, and lead to a slower import.
Defering it can speed up import."
class="oe_import_deferparentstore">
<input type="checkbox" id="oe_import_deferparentstore" checked="checked"/>
<label for="oe_import_deferparentstore">
Defer parent/child computation
</label>
</div>
<input type="checkbox" class="oe_import_has_header"
id="oe_import_has_header" checked="checked"/>
<label for="oe_import_has_header">The first row