29 lines
1.0 KiB
Python
29 lines
1.0 KiB
Python
# -*- coding: utf-8 -*-
|
|
from odoo import api, fields, models
|
|
|
|
class ProductTemplate(models.Model):
|
|
_inherit = 'product.template'
|
|
|
|
def action_archive(self):
|
|
# Use sudo() to bypass multi-company checks during archival cascade
|
|
return super(ProductTemplate, self.sudo()).action_archive()
|
|
|
|
def write(self, vals):
|
|
# Use sudo() during archival write to bypass multi-company checks
|
|
if 'active' in vals and not vals['active']:
|
|
return super(ProductTemplate, self.sudo()).write(vals)
|
|
return super().write(vals)
|
|
|
|
class ProductProduct(models.Model):
|
|
_inherit = 'product.product'
|
|
|
|
def action_archive(self):
|
|
# Use sudo() to bypass multi-company checks during archival cascade
|
|
return super(ProductProduct, self.sudo()).action_archive()
|
|
|
|
def write(self, vals):
|
|
# Use sudo() during archival write to bypass multi-company checks
|
|
if 'active' in vals and not vals['active']:
|
|
return super(ProductProduct, self.sudo()).write(vals)
|
|
return super().write(vals)
|