Skip ke Konten
Menu
Pertanyaan ini telah diberikan tanda
1 Balas
2645 Tampilan

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 ?

Avatar
Buang
Penulis Jawaban Terbai

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)')


Avatar
Buang
Post Terkait Replies Tampilan Aktivitas
1
Nov 23
2082
2
Des 23
5654
1
Nov 22
2563
1
Agu 22
2623
2
Jan 22
5760