diff --git a/addons/account/models/account_move.py b/addons/account/models/account_move.py index 48425a084f5..083cd7f2c42 100644 --- a/addons/account/models/account_move.py +++ b/addons/account/models/account_move.py @@ -1650,15 +1650,15 @@ class AccountPartialReconcile(models.Model): 'amount_currency': self.amount_currency and line.currency_id.round(-line.amount_currency * amount / line.balance) or 0.0, 'partner_id': line.partner_id.id, }) - if newly_created_move: - if move_date > self.company_id.period_lock_date and newly_created_move.date != move_date: - # The move date should be the maximum date between payment and invoice (in case - # of payment in advance). However, we should make sure the move date is not - # recorded before the period lock date as the tax statement for this period is - # probably already sent to the estate. - newly_created_move.write({'date': move_date}) - # post move - newly_created_move.post() + if newly_created_move: + if move_date > self.company_id.period_lock_date and newly_created_move.date != move_date: + # The move date should be the maximum date between payment and invoice (in case + # of payment in advance). However, we should make sure the move date is not + # recorded before the period lock date as the tax statement for this period is + # probably already sent to the estate. + newly_created_move.write({'date': move_date}) + # post move + newly_created_move.post() def _create_tax_basis_move(self): # Check if company_journal for cash basis is set if not, raise exception diff --git a/addons/product/models/product.py b/addons/product/models/product.py index ed37bd6fbc6..9cffb5725e7 100644 --- a/addons/product/models/product.py +++ b/addons/product/models/product.py @@ -253,7 +253,7 @@ class ProductProduct(models.Model): def _compute_partner_ref(self): for supplier_info in self.seller_ids: if supplier_info.name.id == self._context.get('partner_id'): - product_name = supplier_info.product_name or self.default_code + product_name = supplier_info.product_name or self.default_code or self.name break else: product_name = self.name diff --git a/addons/purchase/views/purchase_views.xml b/addons/purchase/views/purchase_views.xml index c81044e36a1..d68375973b0 100644 --- a/addons/purchase/views/purchase_views.xml +++ b/addons/purchase/views/purchase_views.xml @@ -187,8 +187,8 @@
diff --git a/doc/reference/security.rst b/doc/reference/security.rst index bacb02c787f..fd6402893c3 100644 --- a/doc/reference/security.rst +++ b/doc/reference/security.rst @@ -71,8 +71,6 @@ This means the first *group rule* restricts access, but any further .. warning:: record rules do not apply to the Administrator user :class: aphorism - although access rules do - .. _reference/security/fields: Field Access diff --git a/odoo/modules/loading.py b/odoo/modules/loading.py index bff7bc7a3ba..915172bd7fb 100644 --- a/odoo/modules/loading.py +++ b/odoo/modules/loading.py @@ -387,7 +387,7 @@ def load_modules(db, force_demo=False, status=None, update_module=False): cr.execute("""select model,name from ir_model where id NOT IN (select distinct model_id from ir_model_access)""") for (model, name) in cr.fetchall(): if model in registry and not registry[model]._abstract and not registry[model]._transient: - _logger.warning('The model %s has no access rules, consider adding one. E.g. access_%s,access_%s,model_%s,,1,0,0,0', + _logger.warning('The model %s has no access rules, consider adding one. E.g. access_%s,access_%s,model_%s,base.group_user,1,0,0,0', model, model.replace('.', '_'), model.replace('.', '_'), model.replace('.', '_')) # Temporary warning while we remove access rights on osv_memory objects, as they have