From c02ff8aebd27db5af2fec684e64365a803003988 Mon Sep 17 00:00:00 2001 From: Richard Mathot Date: Mon, 28 Sep 2015 11:53:39 +0200 Subject: [PATCH] [FIX] sale_stock: reintroduce field sale_id on stock.picking This field has been removed by e57ac16476bf127c9bd989092e4247e7c12bd5be (let's break everything, it is more fun!). But some people needeed it... This patch proposes thus a new-API version of the sale_id field. --- addons/sale_stock/sale_stock.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/addons/sale_stock/sale_stock.py b/addons/sale_stock/sale_stock.py index 59b9f24dfce..6df996035b8 100644 --- a/addons/sale_stock/sale_stock.py +++ b/addons/sale_stock/sale_stock.py @@ -240,3 +240,18 @@ class StockMove(models.Model): for line in todo: line.qty_delivered = line._get_delivered_qty() return result + + +class StockPicking(models.Model): + _inherit = 'stock.picking' + + @api.depends('group_id') + def _compute_sale_id(self): + SaleOrder = self.env['sale.order'] + for picking in self: + sale_order = False + if picking.group_id: + sale_order = SaleOrder.search([('procurement_group_id', '=', picking.group_id.id)], limit=1) + self.sale_id = sale_order.id if sale_order else False + + sale_id = fields.Many2one(comodel_name='sale.order', string="Sale Order", compute='_compute_sale_id')