From ec5cbcc7857a172f302ca952650ed711254dbdb9 Mon Sep 17 00:00:00 2001 From: "pso (OpenERP)" Date: Mon, 25 Apr 2011 18:33:41 +0530 Subject: [PATCH] [IMP] analytic_user_function: Improved on_change_user_id method bzr revid: pso@tinyerp.com-20110425130341-tkjmjmeg9e76sxyg --- .../analytic_user_function/analytic_user_function.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/addons/analytic_user_function/analytic_user_function.py b/addons/analytic_user_function/analytic_user_function.py index 79f3a17fdbc..d9d260c6940 100644 --- a/addons/analytic_user_function/analytic_user_function.py +++ b/addons/analytic_user_function/analytic_user_function.py @@ -106,7 +106,7 @@ class hr_analytic_timesheet(osv.osv): res ['value']['general_account_id']= a return res - def on_change_user_id(self, cr, uid, ids, user_id, account_id, unit_amount=0): + def on_change_user_id(self, cr, uid, ids, user_id, account_id, unit_amount=0.0): res = {} if not (user_id): #avoid a useless call to super @@ -133,11 +133,12 @@ class hr_analytic_timesheet(osv.osv): 'for this product: "%s" (id:%d)') % \ (r.product_id.name, r.product_id.id,)) # Compute based on pricetype - amount_unit = self.on_change_unit_amount(cr, uid, ids, - r.product_id.id, unit_amount, False, r.product_id.uom_id.id)['value']['amount'] + if unit_amount: + amount_unit = self.on_change_unit_amount(cr, uid, ids, + r.product_id.id, unit_amount, False, r.product_id.uom_id.id)['value']['amount'] - amount = unit_amount * amount_unit - res ['value']['amount']= - round(amount, 2) + amount = unit_amount * amount_unit + res ['value']['amount']= - round(amount, 2) res ['value']['general_account_id']= a return res