跳至內容
選單
此問題已被標幟
1 回覆
471 瀏覽次數

How to restrict users from creating companies? I want them to have permissions to create individuals only.

Both individuals and and companies come under Partner.

(Odoo 18 community edition)

頭像
捨棄
最佳答案

Use this to restrict users from creating contacts:

from odoo import models, api, _
from odoo.exceptions import ValidationError

class ResPartner(models.Model):
    _inherit = 'res.partner'

    @api.model
    def create(self, vals):
        if vals.get('is_company') and not self.env.user.has_group('base.group_system'):
            raise ValidationError(_("You are not allowed to create companies. Please create individuals only."))
        return super(ResPartner, self).create(vals)

    def write(self, vals):
        if vals.get('is_company') and not self.env.user.has_group('base.group_system'):
            raise ValidationError(_("You are not allowed to convert a contact into a company."))
        return super(ResPartner, self).write(vals)


Optional: Hide or Disable the “Is a Company” Checkbox in the Form

頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
3
7月 25
739
1
6月 25
1202
1
5月 25
1491
3
3月 25
2150
1
3月 25
1618