Skip to Content
Menu
This question has been flagged
1 Reply
1503 Views

In my case, I need to allow the users to duplicate so, they can prevent typing the City, Province, Country, and Other extra information. But I have to restrict saving the same lead name twice.

I already used Automated Actions to prevent duplication but it's not letting to duplicate leads.


The code I used in Automated Action is:

existing_name = env['crm.lead'].search([('id', '!=', record.id), ('name', '=', record.name)])
if existing_name:
         raise UserError(record.name + ' already exists!')


Is there are any ways to allow the duplication but while saving it has to show a different name or else the warning message has to pop up.


Thanks in advance.

Avatar
Discard
Best Answer

You can do this way


@api.constrains('name')
def _check_something(self):
existing_name = self.env['crm.lead'].search([('id', '!=', self.id), ('name', '=', self.name)])
if existing_name:
raise UserError("%s already exists!" % self.name)

Avatar
Discard
Author

Thanks for the code, Could you please explain to me where can I use this code?

I am using Odoo cloud not Odoo SH or on-premise.

Related Posts Replies Views Activity
1
Sep 21
1356
2
Nov 24
1035
1
May 24
1433
1
Nov 23
1404
0
Oct 23
657