İçereği Atla
Menü
Bu soru işaretlendi
1 Cevapla
4466 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
2582
1
Kas 23
2763
0
Kas 23
1825
2
Ara 23
6556
1
Mar 23
10497