This question has been flagged
4 Replies
8199 Views

Hi all,

Here i tried the following,

1.add a dropdown field for product category in sale oder line.

2.in that sale order line list the products respective to selected product category.

Please suggest any ideas

Thanks in advance.

Avatar
Discard

can you post your code here, whatever you have tried so far.

Best Answer

Hi,
you can use this method. you have to do things in the sale order line then you must inherit sale.order.line.

class SaleOrderLineExt(models.Model):
_inherit = 'sale.order.line'  

categ_id = fields.Many2one('product.category') 

@api.onchange('categ_id')
def _onchange_categ(self):
    return {'domain': {'product_id': [('categ_id', '=', self.categ_id.id)]}
I think this will help you, don't forget to add this category field in the UI.
Regard,
Avatar
Discard
Best Answer

Make onchange for the product category.

select category then search product ids on the basis of category_id pass the domain of product ids in return result of onchange hope this will help you.

Avatar
Discard
Best Answer

Is this code coorect  :

    @api.onchange('x_product_categories')

    def _show_list_of_products(self):

        for order in self:

            selected_category_id = order.x_product_categories

            product_id = fields.One2many('product.product' , domain=['category_id', '=','selected_category_id'])

Avatar
Discard