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

I need to assign a sequence default_code to created products depending on their categories using an Automated Action.

 

My problem is that I can't access the categ_id. Does anyone know how to solve this problem?

 

Example:


code: 

if not record.default_code:
  if record.categ_id
== 1:
    record.write({
      'default_code':
env ['ir.sequence'].next_by_code('cat1')
    })
  else:
    record.write({
      'default_code':
env ['ir.sequence'].next_by_code('cat2')
    })
 

log:

 

2022-09-08 16:14:27,094 4 WARNING odoo-categories-test-5807939 odoo.models: unsupported operand type(s) for "==": 'product.category()' == '1' (None:15)


Avatar
Vazgeç
En İyi Yanıt

Hi Christian Cabral, 

Your code is right, Just need to change the category comparison code for category id instead of category record set.

Just like this: 

code: 

if not record.default_code:
if record.categ_id.id == 1:
record.write({
'default_code': env ['ir.sequence'].next_by_code('cat1')
})
else:
record.write({
'default_code':env ['ir.sequence'].next_by_code('cat2')
})

Hope it will help you. 

Please Vote Up.
Thanks

Avatar
Vazgeç
İlgili Gönderiler Cevaplar Görünümler Aktivite
0
Mar 22
2244
1
Kas 23
2337
0
Kas 23
1425
2
Ara 23
5954
1
Mar 23
9660