@api.onchange('product_id', 'picking_type_id', 'company_id')
def _onchange_product_id(self):
print(1)
""" Finds UoM of changed product. """
if not self.product_id:
self.bom_id = False
elif not self.bom_id or self.bom_id.product_tmpl_id !=
self.product_tmpl_id or (self.bom_id.product_id and
self.bom_id.product_id != self.product_id):
picking_type_id = self._context.get('default_picking_type_id')
print(picking_type_id)
picking_type = picking_type_id and self.env['stock.picking.type'].browse(picking_type_id)
bom = self.env['mrp.bom']._bom_find(self.product_id,
picking_type=picking_type, company_id=self.company_id.id,
bom_type='normal')[self.product_id]
print(bom)
if bom:
print('pqwewe')
self.bom_id = bom.id
self.product_qty = self.bom_id.product_qty
self.product_uom_id = self.bom_id.product_uom_id.id
else:
self.bom_id = False
self.product_uom_id = self.product_id.uom_id.id
I want to perform the all function, but i only get the print(1), not working the other things
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
- CRM
- e-Commerce
- Бухгалтерия
- Склад
- PoS
- Проекты
- MRP
Этот вопрос был отмечен
2
Ответы
3337
Представления
Hi,
Please check the value of self.product_id and bom.You can use print to check if the conditions are satisfied.
The conditions may not be satisfied, and that might be the reason the other prints are not working.
Не оставайтесь в стороне – присоединяйтесь к обсуждению!
Создайте аккаунт сегодня, чтобы получить доступ к эксклюзивным функциям и стать частью нашего замечательного сообщества!
Регистрация| Похожие посты | Ответы | Просмотры | Активность | |
|---|---|---|---|---|
|
|
2
мая 23
|
3485 | ||
|
|
1
апр. 23
|
3693 | ||
|
|
0
июн. 22
|
2525 | ||
|
|
3
мар. 24
|
5096 | ||
|
|
1
мая 23
|
3524 |