From 2e704bea383c7e60a963df5d372fa393cd389cca Mon Sep 17 00:00:00 2001 From: Bertrand Chenal Date: Mon, 6 Oct 2008 15:00:32 +0200 Subject: [PATCH] Show purchase instead of purchase line on request object --- purchase_request.py | 12 ++++++++++++ purchase_request.xml | 6 +++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/purchase_request.py b/purchase_request.py index d0a4899394..8c7dc4a77d 100644 --- a/purchase_request.py +++ b/purchase_request.py @@ -25,6 +25,9 @@ class PurchaseRequest(OSV): domain="[('type', '=', 'warehouse')]", readonly=True) purchase_line = fields.Many2One( 'purchase.line', 'Purchase Line',readonly=True) + purchase = fields.Function( + 'get_purchase', type='many2one', relation='purchase.purchase', + string='Purchase') company = fields.Many2One( 'company.company', 'Company', required=True, readonly=True) state = fields.Function( @@ -48,6 +51,15 @@ class PurchaseRequest(OSV): context=context)[0] return False + def get_purchase(self, cursor, user, ids, name, args, context=None): + res = {} + for request in self.browse(cursor, user, ids, context=context): + if request.purchase_line and request.purchase_line.purchase: + res[request.id] = request.purchase_line.purchase.id + else: + res[request.id] = None + return res + def get_state(self, cursor, user, ids, name, args, context=None): res = {}.fromkeys(ids, 'draft') for request in self.browse(cursor, user, ids, context=context): diff --git a/purchase_request.xml b/purchase_request.xml index 7a50c565a7..9af6ee3b2c 100644 --- a/purchase_request.xml +++ b/purchase_request.xml @@ -24,8 +24,8 @@