[FIX] purchase: unlink PO
A PO must be in state cancel to be canceled. Before the fix, it was possible to cancel a draft PO then if a PO linked to a procurement was deleted with being canceled, the procurement stayed in running state. opw:666311
This commit is contained in:
@@ -182,7 +182,7 @@ class PurchaseOrder(models.Model):
|
||||
@api.multi
|
||||
def unlink(self):
|
||||
for order in self:
|
||||
if order.state not in ['draft', 'cancel']:
|
||||
if not order.state == 'cancel':
|
||||
raise UserError(_('In order to delete a purchase order, you must cancel it first.'))
|
||||
return super(PurchaseOrder, self).unlink()
|
||||
|
||||
|
||||
@@ -13,15 +13,19 @@
|
||||
self.unlink(cr, uid, [ref("purchase_order_1")])
|
||||
except Exception,e:
|
||||
pass
|
||||
-
|
||||
I delete a cancelled order.
|
||||
-
|
||||
!python {model: purchase.order}: |
|
||||
from openerp.exceptions import UserError
|
||||
try:
|
||||
self.unlink(cr, uid, [ref("purchase_order_7")])
|
||||
except UserError:
|
||||
pass
|
||||
-
|
||||
I delete a draft order.
|
||||
-
|
||||
!python {model: purchase.order}: |
|
||||
self.unlink(cr, uid, [ref("purchase_order_5")])
|
||||
-
|
||||
I delete a cancelled order.
|
||||
-
|
||||
!python {model: purchase.order}: |
|
||||
self.unlink(cr, uid, [ref("purchase_order_7")])
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user