Skip to Content
Menu
This question has been flagged
1 Reply
2520 Views

In my custom model i have button when i clicking that it will generate MO also i want to perform that the onchange function in the product_id or the bom_id , is it possible

Avatar
Discard
Author

@Mehjabin Farsana, that didi'nt work, i want to perform the function in on change, ex;
@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

Best Answer

Hi,
You can call the function from anywhere using it’s object.

suppose you have a onchange function defined on product model then you can call it as below:

self.product_id._onchange_function()

Hope this will help you

Thanks

Avatar
Discard
Related Posts Replies Views Activity
2
Aug 23
2165
2
May 23
2360
0
Jun 22
1421
3
Mar 24
2767
1
May 23
2096