Odoo Mindscape. Understand Odoo faster. Explore modules, fields, dependencies and version differences in one place instead of digging through the source code.

Module: Purchase

Entity: account.move

Compute Method: _compute_purchase_warning_text

Inputs Method Outputs
  • move_type
  • partner_id
  • partner_id.purchase_warn_msg
  • partner_id.name
  • partner_id.display_name
  • partner_id.parent_id
  • partner_id.parent_id.purchase_warn_msg
  • purchase_line_warn_msg
  • display_name
if not self.env.user.has_group('purchase.group_warning_purchase'):
            self.purchase_warning_text = ''
            return
for move in self:
            if move.move_type != 'in_invoice':
                move.purchase_warning_text = ''
                continue
            warnings = OrderedSet()
            if partner_msg := move.partner_id.purchase_warn_msg:
                warnings.add((move.partner_id.name or move.partner_id.display_name) + ' - ' + partner_msg)
            if partner_parent_msg := move.partner_id.parent_id.purchase_warn_msg:
                parent = move.partner_id.parent_id
                warnings.add((parent.name or parent.display_name) + ' - ' + partner_parent_msg)
            for product in move.invoice_line_ids.product_id:
                if product_msg := product.purchase_line_warn_msg:
                    warnings.add(product.display_name + ' - ' + product_msg)
            move.purchase_warning_text = '\n'.join(warnings)

Back to entity