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

hello, i am trying to restrict sales order confirmation by checking if the specified quantity within the order lines is available in the inventory.

for example if someone using the sales module wants to create a quotation and selects a product and sets quantity to 1,000 but there are only 900 units in the inventory i want it to reject this sales order or maybe even trigger an error.

thanks 

p.s. im using odoo 15

Avatar
Discard
Best Answer

Hi,

Try refer the following code.

from odoo import models, api, exceptions

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

@api.multi
def action_confirm(self):
for line in self.order_line:
product_qty_available = line.product_id.qty_available
if product_qty_available < line.product_uom_qty:
raise exceptions.Warning('Not enough stock available for product %s. Available quantity: %s' % (line.product_id.name, product_qty_available))
return super(SaleOrder, self).action_confirm()

Regards

Avatar
Discard
Related Posts Replies Views Activity
1
Dec 24
185
2
Mar 24
696
2
Mar 24
1330
0
Sep 23
354
1
Sep 23
461