oca-ocb-sale/odoo-bringout-oca-ocb-point_of_sale/point_of_sale/models/ir_sequence.py
Ernad Husremovic 73afc09215 19.0 vanilla
2026-03-09 09:32:12 +01:00

21 lines
700 B
Python

from odoo import api, models, _
from odoo.exceptions import UserError
class IrSequence(models.Model):
_inherit = 'ir.sequence'
@api.ondelete(at_uninstall=False)
def _unlink_sequence(self):
configs = self.env['pos.config'].search(domain=[
'|', '|', '|',
('order_seq_id', 'in', self.ids),
('order_line_seq_id', 'in', self.ids),
('device_seq_id', 'in', self.ids),
('order_backend_seq_id', 'in', self.ids)
])
if len(configs):
raise UserError(_(
"You cannot delete a sequence used in an active POS config: %s",
configs.order_seq_id.mapped('name')
))