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

Hi everyone!


I'm coding a server action to check the available quantity of the products before booking them!

I want this server action be launched only when the user is going to save or confirm the order and not when he wants to cancel it. Could you help please?

  produit = env['product.product'].search([('default_code', '=', record.product_id.default_code)])

  if record.product_uom_qty > record.product_id.immediately_usable_qty:

    if action != model.action_cancel() or action != model.action_create_reservation():

      raise Warning(str(record.product_id.default_code) + ": Seulement " + str(record.product_id.immediately_usable_qty) + " en stock!")



Avatar
Discard
Best Answer

Hi,
In this case you don’t need to write a server action. You can simply do the same thing using @api.constrains() decorator. It will trigger while save the record and you can check the conditions whatever you want and also raise a Warning.

@api.constrains('field_1', 'field2')
def _check_sequence(self):
produit = self.env['product.product'].search([('default_code', '=', record.product_id.default_code)])
if record.product_uom_qty > record.product_id.immediately_usable_qty:
raise Warning(str(record.product_id.default_code) + ": Seulement " + str(
record.product_id.immediately_usable_qty) + " en stock!")
Regards


Avatar
Discard
Related Posts Replies Views Activity
4
Jun 20
3204
2
Jan 23
3472
2
Aug 24
180
0
Jun 24
180
0
May 24
329