Skip to Content
เมนู
คุณต้องลงทะเบียนเพื่อโต้ตอบกับคอมมูนิตี้
คำถามนี้ถูกตั้งค่าสถานะ
1 ตอบกลับ
2663 มุมมอง

Hi,

I try to create a simple automated action which verifies the existing name and email upon contact creation.

The code 1 :

---

name_count = env['res.partner'].search_count([('name', '=ilike', record.name)])

if name_count :
  raise Warning('Ce Nom+Prénom \''+str(record.name)+'\' existe déjà : '+str(name_count))
else :
  name_count = 0
  raise Warning('Name found : '+str(name_count))

---

Raises correctly 'Name found: 0' when I create a contact with unique name.

But a small change commenting the last line of the code makes the first Warning to raise with name_count equal to 1.

What could be the issue with the code that makes it working in such a weird way ?

อวตาร
ละทิ้ง
ผู้เขียน คำตอบที่ดีที่สุด

Finally, I've found a way to make it working, by assuming that the name_count is always >=1.

So, the code which works is the following (with some message improvement in French):

name_count = env['res.partner'].search_count([('name', '=ilike', record.name)])
if name_count > 1 :
raise Warning('Ce Nom+Prénom \''+str(record.name)+'\' existe déjà ('+str(name_count-1)+' fois)')


อวตาร
ละทิ้ง
Related Posts ตอบกลับ มุมมอง กิจกรรม
1
พ.ย. 23
2093
2
ธ.ค. 23
5677
1
พ.ย. 22
2567
1
ส.ค. 22
2630
2
ม.ค. 22
5776