From a1dcde1af6700bfb1664105a4a43cd59fe7ce544 Mon Sep 17 00:00:00 2001 From: "Ujjvala Collins (OpenERP)" Date: Tue, 18 Oct 2011 12:33:03 +0530 Subject: [PATCH 1/2] [FIX] account_asset: Fixed problem of category onchange when assets are created using supplier invoice. lp bug: https://launchpad.net/bugs/876320 fixed bzr revid: uco@tinyerp.com-20111018070303-iohtamc0x19wxmcu --- addons/account_asset/account_asset.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/addons/account_asset/account_asset.py b/addons/account_asset/account_asset.py index bacd29f1607..8b72c952311 100644 --- a/addons/account_asset/account_asset.py +++ b/addons/account_asset/account_asset.py @@ -296,6 +296,9 @@ class account_asset_asset(osv.osv): return depreciation_obj.create_move(cr, uid, depreciation_ids, context=context) def create(self, cr, uid, vals, context=None): + if vals.get('category_id'): + res = self.onchange_category_id(cr, uid, [], vals['category_id'], context=context) + vals.update(res['value']) asset_id = super(account_asset_asset, self).create(cr, uid, vals, context=context) self.compute_depreciation_board(cr, uid, [asset_id], context=context) return asset_id From 24815c7bc648da834cb9565bd9833be481738492 Mon Sep 17 00:00:00 2001 From: "Ujjvala Collins (OpenERP)" Date: Wed, 9 Nov 2011 17:12:55 +0530 Subject: [PATCH 2/2] [IMP] account_asset: Improved code to avoid using overriden create method. bzr revid: uco@tinyerp.com-20111109114255-qm5nwa4zdrd15hvq --- addons/account_asset/account_asset.py | 3 --- addons/account_asset/account_asset_invoice.py | 2 ++ 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/addons/account_asset/account_asset.py b/addons/account_asset/account_asset.py index 8b72c952311..bacd29f1607 100644 --- a/addons/account_asset/account_asset.py +++ b/addons/account_asset/account_asset.py @@ -296,9 +296,6 @@ class account_asset_asset(osv.osv): return depreciation_obj.create_move(cr, uid, depreciation_ids, context=context) def create(self, cr, uid, vals, context=None): - if vals.get('category_id'): - res = self.onchange_category_id(cr, uid, [], vals['category_id'], context=context) - vals.update(res['value']) asset_id = super(account_asset_asset, self).create(cr, uid, vals, context=context) self.compute_depreciation_board(cr, uid, [asset_id], context=context) return asset_id diff --git a/addons/account_asset/account_asset_invoice.py b/addons/account_asset/account_asset_invoice.py index 167502cb09f..8fad5ca2d17 100644 --- a/addons/account_asset/account_asset_invoice.py +++ b/addons/account_asset/account_asset_invoice.py @@ -51,6 +51,8 @@ class account_invoice_line(osv.osv): 'company_id': line.invoice_id.company_id.id, 'currency_id': line.invoice_id.currency_id.id, } + changed_vals = asset_obj.onchange_category_id(cr, uid, [], vals['category_id'], context=context) + vals.update(changed_vals['value']) asset_id = asset_obj.create(cr, uid, vals, context=context) if line.asset_category_id.open_asset: asset_obj.validate(cr, uid, [asset_id], context=context)