İçereği Atla
Menü
Bu soru işaretlendi
1 Cevapla
2322 Görünümler

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
Vazgeç
En İyi Yanıt

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
Vazgeç
Üretici

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.

İlgili Gönderiler Cevaplar Görünümler Aktivite
1
Eyl 21
2025
2
Kas 24
2908
1
May 24
3156
1
Kas 23
3193
0
Eki 23
1456