我想删除Odoo 11中的所有销售订单/报价单。
对于报价,我使用Odoo GUI批量删除它们。但对于销售订单,我必须先删除它们才能删除。这种方式非常耗时(因为我们无法批量取消销售订单)。
所以我认为以编程方式做这件事会更好(就时间而言)。但是,当前代码
orders = self.env['sale.order'].search([('external_id', '!=', '')])
for order in orders:
order.unlink()
提出
的例外您无法删除已发送的报价单或销售订单!尝试先取消它。
如何在order
之前取消unlink()
?
答案 0 :(得分:2)
解决。在odoo源代码中深入了解之后。我认为这就是我想要的:
orders = self.env['sale.order'].search([('external_id', '!=', '')])
for order in orders:
order.action_cancel()
order.unlink()