From 5f8af38fad9f2968309e36f89fbf47c000cccde6 Mon Sep 17 00:00:00 2001 From: "Ujjvala Collins (OpenERP)" Date: Thu, 2 Jun 2011 14:07:18 +0530 Subject: [PATCH 1/9] [IMP] account_asset: Improved asset analysis report. bzr revid: uco@tinyerp.com-20110602083718-gwdqbemjzq2ftanj --- .../report/account_asset_report.py | 76 +++++++++-- .../report/account_asset_report_view.xml | 123 ++++++++++++------ 2 files changed, 143 insertions(+), 56 deletions(-) diff --git a/addons/account_asset/report/account_asset_report.py b/addons/account_asset/report/account_asset_report.py index c8e3af013fa..1b80b120631 100644 --- a/addons/account_asset/report/account_asset_report.py +++ b/addons/account_asset/report/account_asset_report.py @@ -1,3 +1,24 @@ +# -*- encoding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# Copyright (C) 2004-2009 Tiny SPRL (). +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################## + import tools from osv import fields,osv @@ -6,20 +27,49 @@ class asset_asset_report(osv.osv): _description = "Assets Analysis" _auto = False _columns = { - 'date': fields.date('Asset Date', readonly=True), - 'asset_id': fields.many2one('account.asset.asset',string='Asset'), -# 'asset_category': fields.many2one('account.asset.category',string='Asset category'), - 'state': fields.related('asset_id','state',type='char', string='State', readonly=True), + 'name': fields.char('Year', size=64, required=False, readonly=True), + 'month':fields.selection([('01', 'January'), ('02', 'February'), \ + ('03', 'March'), ('04', 'April'),\ + ('05', 'May'), ('06', 'June'), \ + ('07', 'July'), ('08', 'August'),\ + ('09', 'September'), ('10', 'October'),\ + ('11', 'November'), ('12', 'December')], 'Month', readonly=True), + 'day': fields.char('Day', size=128, readonly=True), + 'date': fields.date('Depreciation Date', readonly=True), + 'purchase_date': fields.date('Asset Date', required=True), + 'asset_id': fields.many2one('account.asset.asset', string='Asset', readonly=True), + 'asset_category_id': fields.many2one('account.asset.category',string='Asset category'), + 'state': fields.selection([('draft','Draft'),('open','Running'),('close','Close')], 'state', required=True, readonly=True), + 'remaining_value': fields.float('Amount to Depreciate', required=True, readonly=True), + 'depreciated_value': fields.float('Amount Already Depreciated', required=True, readonly=True), + 'depreciation_date': fields.date('Depreciation Date', size=64, readonly=True), + 'move_check': fields.boolean('Posted', readonly=True), + 'nbr':fields.integer('# of Depreciation Lines', readonly=True), } + def init(self, cr): - tools.drop_view_if_exists(cr, 'asset_asset_report') - cr.execute(""" - create or replace view asset_asset_report as ( - select id as id, - asset_id as asset_id, - date as date, - state as state - from - account_move_line )""") + tools.drop_view_if_exists(cr, 'asset_asset_report') + cr.execute(""" + create or replace view asset_asset_report as ( + select + min(dl.id) as id, + to_char(a.purchase_date, 'YYYY') as name, + to_char(a.purchase_date, 'MM') as month, + to_char(a.purchase_date, 'YYYY-MM-DD') as day, + to_date(dl.depreciation_date, 'YYYY-MM-DD') as date, + a.purchase_date as purchase_date, + sum(dl.remaining_value) as remaining_value, + sum(dl.depreciated_value) as depreciated_value, + dl.move_check as move_check, + dl.asset_id as asset_id, + a.category_id as asset_category_id, + a.state as state, + count(dl.*) as nbr + from + account_asset_depreciation_line dl + left join account_asset_asset a on (dl.asset_id=a.id) + group by + dl.asset_id, dl.depreciation_date, dl.move_check, a.state, a.category_id, a.purchase_date + )""") asset_asset_report() diff --git a/addons/account_asset/report/account_asset_report_view.xml b/addons/account_asset/report/account_asset_report_view.xml index 26fc2f1996c..d615463a977 100644 --- a/addons/account_asset/report/account_asset_report_view.xml +++ b/addons/account_asset/report/account_asset_report_view.xml @@ -1,60 +1,97 @@ + - asset.asset.report.tree - asset.asset.report - tree - - - - + asset.asset.report.tree + asset.asset.report + tree + + + + + + + + + + + + + + + + + - + asset.asset.report.search - asset.asset.report - search - - - - - - - - - - - - + asset.asset.report + search + + + + + + + + + + + + + + + + + + + + + + + + + + - + - Assets Analysis - asset.asset.report - form - tree - - From this report, you can have an overview on all depreciation. The tool search can also be used to personalise your Assets reports and so, match this analysis to your needs; + asset.asset.report + form + tree,graph + + {'search_default_asset_category':1, 'search_default_posted':1, 'group_by':[], 'group_by_no_leaf':1} + From this report, you can have an overview on all depreciation. The tool search can also be used to personalise your Assets reports and so, match this analysis to your needs; + + id="menu_action_asset_asset_report" + parent="account.menu_finance_statistic_report_statement"/> From 0a44a5836805f0de3ed8a9d134f3e9b6935fdde2 Mon Sep 17 00:00:00 2001 From: "Ujjvala Collins (OpenERP)" Date: Mon, 6 Jun 2011 15:36:29 +0530 Subject: [PATCH 2/9] [IMP] account_asset: Improved report, view and license. bzr revid: uco@tinyerp.com-20110606100629-5wvorazdo9nad9eb --- addons/account_asset/account_asset.py | 2 +- addons/account_asset/account_asset_invoice.py | 2 +- .../report/account_asset_report.py | 28 +++++++++++-------- .../report/account_asset_report_view.xml | 27 ++++++++++-------- 4 files changed, 33 insertions(+), 26 deletions(-) diff --git a/addons/account_asset/account_asset.py b/addons/account_asset/account_asset.py index 8cfb4f2afff..c02ad58ccea 100644 --- a/addons/account_asset/account_asset.py +++ b/addons/account_asset/account_asset.py @@ -2,7 +2,7 @@ ############################################################################## # # OpenERP, Open Source Management Solution -# Copyright (C) 2004-2009 Tiny SPRL (). +# Copyright (C) 2004-2010 Tiny SPRL (). # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as diff --git a/addons/account_asset/account_asset_invoice.py b/addons/account_asset/account_asset_invoice.py index 8fbcd4053a2..705ca364915 100755 --- a/addons/account_asset/account_asset_invoice.py +++ b/addons/account_asset/account_asset_invoice.py @@ -2,7 +2,7 @@ ############################################################################## # # OpenERP, Open Source Management Solution -# Copyright (C) 2004-2009 Tiny SPRL (). +# Copyright (C) 2004-2010 Tiny SPRL (). # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as diff --git a/addons/account_asset/report/account_asset_report.py b/addons/account_asset/report/account_asset_report.py index 1b80b120631..bf244f30985 100644 --- a/addons/account_asset/report/account_asset_report.py +++ b/addons/account_asset/report/account_asset_report.py @@ -2,7 +2,7 @@ ############################################################################## # # OpenERP, Open Source Management Solution -# Copyright (C) 2004-2009 Tiny SPRL (). +# Copyright (C) 2004-2010 Tiny SPRL (). # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -27,49 +27,53 @@ class asset_asset_report(osv.osv): _description = "Assets Analysis" _auto = False _columns = { - 'name': fields.char('Year', size=64, required=False, readonly=True), + 'name': fields.char('Year', size=16, required=False, readonly=True), 'month':fields.selection([('01', 'January'), ('02', 'February'), \ ('03', 'March'), ('04', 'April'),\ ('05', 'May'), ('06', 'June'), \ ('07', 'July'), ('08', 'August'),\ ('09', 'September'), ('10', 'October'),\ ('11', 'November'), ('12', 'December')], 'Month', readonly=True), - 'day': fields.char('Day', size=128, readonly=True), - 'date': fields.date('Depreciation Date', readonly=True), + 'day': fields.char('Day', size=16, readonly=True), 'purchase_date': fields.date('Asset Date', required=True), 'asset_id': fields.many2one('account.asset.asset', string='Asset', readonly=True), 'asset_category_id': fields.many2one('account.asset.category',string='Asset category'), + 'partner_id': fields.many2one('res.partner', 'Partner', readonly=True), 'state': fields.selection([('draft','Draft'),('open','Running'),('close','Close')], 'state', required=True, readonly=True), 'remaining_value': fields.float('Amount to Depreciate', required=True, readonly=True), 'depreciated_value': fields.float('Amount Already Depreciated', required=True, readonly=True), - 'depreciation_date': fields.date('Depreciation Date', size=64, readonly=True), 'move_check': fields.boolean('Posted', readonly=True), - 'nbr':fields.integer('# of Depreciation Lines', readonly=True), + 'nbr': fields.integer('# of Depreciation Lines', readonly=True), + 'company_id': fields.many2one('res.company', 'Company', readonly=True), } def init(self, cr): tools.drop_view_if_exists(cr, 'asset_asset_report') cr.execute(""" create or replace view asset_asset_report as ( - select + select min(dl.id) as id, to_char(a.purchase_date, 'YYYY') as name, to_char(a.purchase_date, 'MM') as month, to_char(a.purchase_date, 'YYYY-MM-DD') as day, - to_date(dl.depreciation_date, 'YYYY-MM-DD') as date, a.purchase_date as purchase_date, - sum(dl.remaining_value) as remaining_value, - sum(dl.depreciated_value) as depreciated_value, + dl.amount as remaining_value, dl.move_check as move_check, dl.asset_id as asset_id, a.category_id as asset_category_id, + a.partner_id as partner_id, a.state as state, - count(dl.*) as nbr + count(dl.*) as nbr, + a.company_id as company_id from account_asset_depreciation_line dl left join account_asset_asset a on (dl.asset_id=a.id) group by - dl.asset_id, dl.depreciation_date, dl.move_check, a.state, a.category_id, a.purchase_date + dl.asset_id, dl.move_check, a.state, + a.category_id, a.partner_id, a.purchase_date, dl.amount, + a.company_id, a.purchase_value, a.salvage_value )""") asset_asset_report() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_asset/report/account_asset_report_view.xml b/addons/account_asset/report/account_asset_report_view.xml index d615463a977..4a84f641589 100644 --- a/addons/account_asset/report/account_asset_report_view.xml +++ b/addons/account_asset/report/account_asset_report_view.xml @@ -13,19 +13,16 @@ - - - - + asset.asset.report.graph asset.asset.report graph @@ -47,7 +44,7 @@ - + + + + + + + @@ -81,13 +84,13 @@ - Assets Analysis - asset.asset.report - form - tree,graph - - {'search_default_asset_category':1, 'search_default_posted':1, 'group_by':[], 'group_by_no_leaf':1} - From this report, you can have an overview on all depreciation. The tool search can also be used to personalise your Assets reports and so, match this analysis to your needs; + Assets Analysis + asset.asset.report + form + tree,graph + + {'search_default_asset_category':1, 'search_default_posted':1, 'search_default_purchase_date': time.strftime('%Y-01-01'), 'group_by':[], 'group_by_no_leaf':1} + From this report, you can have an overview on all depreciation. The tool search can also be used to personalise your Assets reports and so, match this analysis to your needs; Date: Mon, 6 Jun 2011 16:31:14 +0530 Subject: [PATCH 3/9] [IMP] account_asset: Improved view. Replaced tabs with spaces. bzr revid: uco@tinyerp.com-20110606110114-75b0wt5qydzyytkm --- .../report/account_asset_report_view.xml | 86 +++++++++---------- 1 file changed, 43 insertions(+), 43 deletions(-) diff --git a/addons/account_asset/report/account_asset_report_view.xml b/addons/account_asset/report/account_asset_report_view.xml index 4a84f641589..70085c12f44 100644 --- a/addons/account_asset/report/account_asset_report_view.xml +++ b/addons/account_asset/report/account_asset_report_view.xml @@ -3,44 +3,44 @@ - asset.asset.report.tree - asset.asset.report - tree - - - - - - - - - - - - - - + asset.asset.report.tree + asset.asset.report + tree + + + + + + + + + + + + + + - asset.asset.report.graph - asset.asset.report - graph - - - - - - + asset.asset.report.graph + asset.asset.report + graph + + + + + + asset.asset.report.search - asset.asset.report - search - - - + asset.asset.report + search + + + @@ -58,15 +58,15 @@ - - - - - - - - - + + + + + + + + + @@ -78,9 +78,9 @@ domain="[]" context="{'group_by':'month'}" help="Month in which assets are purchased."/> - - - + + + From ff7434fdfa68bfd1b853f5970301b15aea1f8e11 Mon Sep 17 00:00:00 2001 From: "Ujjvala Collins (OpenERP)" Date: Fri, 24 Jun 2011 11:14:15 +0530 Subject: [PATCH 4/9] [IMP] account_asset: Improved usability for search view on analysis report. bzr revid: uco@tinyerp.com-20110624054415-omdr3ge4r4w4ucom --- .../report/account_asset_report.py | 9 ++++-- .../report/account_asset_report_view.xml | 31 ++++++++++--------- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/addons/account_asset/report/account_asset_report.py b/addons/account_asset/report/account_asset_report.py index bf244f30985..3b0f16e1675 100644 --- a/addons/account_asset/report/account_asset_report.py +++ b/addons/account_asset/report/account_asset_report.py @@ -36,11 +36,12 @@ class asset_asset_report(osv.osv): ('11', 'November'), ('12', 'December')], 'Month', readonly=True), 'day': fields.char('Day', size=16, readonly=True), 'purchase_date': fields.date('Asset Date', required=True), + 'depreciation_date': fields.date('Depreciation Date', readonly=True), 'asset_id': fields.many2one('account.asset.asset', string='Asset', readonly=True), 'asset_category_id': fields.many2one('account.asset.category',string='Asset category'), 'partner_id': fields.many2one('res.partner', 'Partner', readonly=True), - 'state': fields.selection([('draft','Draft'),('open','Running'),('close','Close')], 'state', required=True, readonly=True), - 'remaining_value': fields.float('Amount to Depreciate', required=True, readonly=True), + 'state': fields.selection([('draft','Draft'),('open','Running'),('close','Close')], 'State', required=True, readonly=True), + 'remaining_value': fields.float('Amount of Depreciation Lines', required=True, readonly=True), 'depreciated_value': fields.float('Amount Already Depreciated', required=True, readonly=True), 'move_check': fields.boolean('Posted', readonly=True), 'nbr': fields.integer('# of Depreciation Lines', readonly=True), @@ -56,6 +57,7 @@ class asset_asset_report(osv.osv): to_char(a.purchase_date, 'YYYY') as name, to_char(a.purchase_date, 'MM') as month, to_char(a.purchase_date, 'YYYY-MM-DD') as day, + to_date(dl.depreciation_date, 'YYYY-MM-DD') as depreciation_date, a.purchase_date as purchase_date, dl.amount as remaining_value, dl.move_check as move_check, @@ -71,7 +73,8 @@ class asset_asset_report(osv.osv): group by dl.asset_id, dl.move_check, a.state, a.category_id, a.partner_id, a.purchase_date, dl.amount, - a.company_id, a.purchase_value, a.salvage_value + a.company_id, a.purchase_value, a.salvage_value, + to_date(dl.depreciation_date, 'YYYY-MM-DD') )""") asset_asset_report() diff --git a/addons/account_asset/report/account_asset_report_view.xml b/addons/account_asset/report/account_asset_report_view.xml index 70085c12f44..8aa8c981a43 100644 --- a/addons/account_asset/report/account_asset_report_view.xml +++ b/addons/account_asset/report/account_asset_report_view.xml @@ -15,9 +15,11 @@ + + - + @@ -41,23 +43,24 @@ + + + + - + - - - - + @@ -69,8 +72,8 @@ - - + + From 3c74d345e82e5e6a6a87e3d6de9b04834d3c1bae Mon Sep 17 00:00:00 2001 From: "Ujjvala Collins (OpenERP)" Date: Fri, 24 Jun 2011 11:52:02 +0530 Subject: [PATCH 5/9] [IMP] account_asset: Small improvements. bzr revid: uco@tinyerp.com-20110624062202-k9ws464fn27sk7iy --- .../report/account_asset_report_view.xml | 54 +++++++++---------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/addons/account_asset/report/account_asset_report_view.xml b/addons/account_asset/report/account_asset_report_view.xml index 8aa8c981a43..26133f482ef 100644 --- a/addons/account_asset/report/account_asset_report_view.xml +++ b/addons/account_asset/report/account_asset_report_view.xml @@ -53,35 +53,35 @@ domain="[('purchase_date','<=', (datetime.date.today() - relativedelta(day=31, months=1)).strftime('%%Y-%%m-%%d')),('purchase_date','>=',(datetime.date.today() - relativedelta(day=1,months=1)).strftime('%%Y-%%m-%%d'))]" help="Assets purchased in last month"/> - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - + + + + + + + - - - - - + + + + + From 3a47f2f84faf2dbec0b7040ba1ad23a5c539a26b Mon Sep 17 00:00:00 2001 From: "Ujjvala Collins (OpenERP)" Date: Wed, 29 Jun 2011 18:51:49 +0530 Subject: [PATCH 6/9] [IMP] account_asset: Improved analysis report according to new specifications given on pad. bzr revid: uco@tinyerp.com-20110629132149-6lhkfny69zz3fkhf --- .../report/account_asset_report.py | 42 ++++++++++++++----- .../report/account_asset_report_view.xml | 6 ++- 2 files changed, 37 insertions(+), 11 deletions(-) diff --git a/addons/account_asset/report/account_asset_report.py b/addons/account_asset/report/account_asset_report.py index 3b0f16e1675..00c55b70684 100644 --- a/addons/account_asset/report/account_asset_report.py +++ b/addons/account_asset/report/account_asset_report.py @@ -42,9 +42,11 @@ class asset_asset_report(osv.osv): 'partner_id': fields.many2one('res.partner', 'Partner', readonly=True), 'state': fields.selection([('draft','Draft'),('open','Running'),('close','Close')], 'State', required=True, readonly=True), 'remaining_value': fields.float('Amount of Depreciation Lines', required=True, readonly=True), - 'depreciated_value': fields.float('Amount Already Depreciated', required=True, readonly=True), 'move_check': fields.boolean('Posted', readonly=True), 'nbr': fields.integer('# of Depreciation Lines', readonly=True), + 'gross_value': fields.float('Gross Value', readonly=True, group_operator="avg"), + 'posted_value': fields.float('Posted Value', readonly=True), + 'unposted_value': fields.float('Unposted Value', readonly=True), 'company_id': fields.many2one('res.company', 'Company', readonly=True), } @@ -59,22 +61,42 @@ class asset_asset_report(osv.osv): to_char(a.purchase_date, 'YYYY-MM-DD') as day, to_date(dl.depreciation_date, 'YYYY-MM-DD') as depreciation_date, a.purchase_date as purchase_date, - dl.amount as remaining_value, - dl.move_check as move_check, + a.purchase_value as gross_value, + dl.amount as remaining_value, + (CASE WHEN dl.move_check + THEN dl.amount + ELSE 0 + END) as posted_value, + (CASE WHEN dl.move_check + THEN (sum(a.purchase_value) - a.salvage_value - (select sum(ml.debit) from account_move_line ml + left join account_asset_asset ac on (ac.id=ml.asset_id) where ac.id=a.id)) + / (CASE WHEN + (select count(d.id) from account_asset_depreciation_line as d + left join account_asset_asset as ac ON (ac.id=d.asset_id) + where a.id=ac.id and d.move_check) <> 0 + THEN + (select count(d.id) from account_asset_depreciation_line as d + left join account_asset_asset as ac ON (ac.id=d.asset_id) + where a.id=ac.id and d.move_check) + ELSE 1 + END) + ELSE 0 + END) as unposted_value, dl.asset_id as asset_id, + dl.move_check as move_check, a.category_id as asset_category_id, a.partner_id as partner_id, a.state as state, count(dl.*) as nbr, a.company_id as company_id - from - account_asset_depreciation_line dl - left join account_asset_asset a on (dl.asset_id=a.id) + from account_asset_asset a + left join account_asset_depreciation_line dl on (dl.asset_id=a.id) group by - dl.asset_id, dl.move_check, a.state, - a.category_id, a.partner_id, a.purchase_date, dl.amount, - a.company_id, a.purchase_value, a.salvage_value, - to_date(dl.depreciation_date, 'YYYY-MM-DD') + dl.amount,dl.remaining_value,dl.depreciated_value,dl.asset_id, + to_char(a.purchase_date, 'YYYY'),to_char(a.purchase_date, 'MM'), + to_char(a.purchase_date, 'YYYY-MM-DD'),to_date(dl.depreciation_date, 'YYYY-MM-DD'), + a.purchase_date, dl.move_check, a.state, a.category_id, a.partner_id, a.company_id, + a.purchase_value, a.id, a.salvage_value )""") asset_asset_report() diff --git a/addons/account_asset/report/account_asset_report_view.xml b/addons/account_asset/report/account_asset_report_view.xml index 26133f482ef..f6742a14cef 100644 --- a/addons/account_asset/report/account_asset_report_view.xml +++ b/addons/account_asset/report/account_asset_report_view.xml @@ -19,6 +19,9 @@ + + + @@ -56,7 +59,8 @@ - + From a35800eb6ded88af50bda6be426b54b593af6c3e Mon Sep 17 00:00:00 2001 From: "Ujjvala Collins (OpenERP)" Date: Thu, 30 Jun 2011 16:38:42 +0530 Subject: [PATCH 7/9] [FIX] account_asset: Fixed label of purchase date field and solved error when depreciation lines are not on asset. bzr revid: uco@tinyerp.com-20110630110842-rcc7dy6rgkpwik8y --- addons/account_asset/report/account_asset_report.py | 6 +++--- addons/account_asset/report/account_asset_report_view.xml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/addons/account_asset/report/account_asset_report.py b/addons/account_asset/report/account_asset_report.py index 00c55b70684..619cf6a9d2b 100644 --- a/addons/account_asset/report/account_asset_report.py +++ b/addons/account_asset/report/account_asset_report.py @@ -35,7 +35,7 @@ class asset_asset_report(osv.osv): ('09', 'September'), ('10', 'October'),\ ('11', 'November'), ('12', 'December')], 'Month', readonly=True), 'day': fields.char('Day', size=16, readonly=True), - 'purchase_date': fields.date('Asset Date', required=True), + 'purchase_date': fields.date('Purchase Date', required=True), 'depreciation_date': fields.date('Depreciation Date', readonly=True), 'asset_id': fields.many2one('account.asset.asset', string='Asset', readonly=True), 'asset_category_id': fields.many2one('account.asset.category',string='Asset category'), @@ -89,8 +89,8 @@ class asset_asset_report(osv.osv): a.state as state, count(dl.*) as nbr, a.company_id as company_id - from account_asset_asset a - left join account_asset_depreciation_line dl on (dl.asset_id=a.id) + from account_asset_depreciation_line dl + left join account_asset_asset a on (dl.asset_id=a.id) group by dl.amount,dl.remaining_value,dl.depreciated_value,dl.asset_id, to_char(a.purchase_date, 'YYYY'),to_char(a.purchase_date, 'MM'), diff --git a/addons/account_asset/report/account_asset_report_view.xml b/addons/account_asset/report/account_asset_report_view.xml index f6742a14cef..aaa654872e5 100644 --- a/addons/account_asset/report/account_asset_report_view.xml +++ b/addons/account_asset/report/account_asset_report_view.xml @@ -69,7 +69,7 @@ - + From a308cefeb511c9e251a185ee7e68a098a0fc0567 Mon Sep 17 00:00:00 2001 From: "Ujjvala Collins (OpenERP)" Date: Thu, 30 Jun 2011 17:29:07 +0530 Subject: [PATCH 8/9] [FIX] account_asset: Solved problem of purchase value on analysis report. bzr revid: uco@tinyerp.com-20110630115907-sqwhn1vjw6vck9ii --- addons/account_asset/report/account_asset_report.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/addons/account_asset/report/account_asset_report.py b/addons/account_asset/report/account_asset_report.py index 619cf6a9d2b..c017adc6904 100644 --- a/addons/account_asset/report/account_asset_report.py +++ b/addons/account_asset/report/account_asset_report.py @@ -44,7 +44,7 @@ class asset_asset_report(osv.osv): 'remaining_value': fields.float('Amount of Depreciation Lines', required=True, readonly=True), 'move_check': fields.boolean('Posted', readonly=True), 'nbr': fields.integer('# of Depreciation Lines', readonly=True), - 'gross_value': fields.float('Gross Value', readonly=True, group_operator="avg"), + 'gross_value': fields.float('Gross Value', readonly=True), 'posted_value': fields.float('Posted Value', readonly=True), 'unposted_value': fields.float('Unposted Value', readonly=True), 'company_id': fields.many2one('res.company', 'Company', readonly=True), @@ -61,7 +61,12 @@ class asset_asset_report(osv.osv): to_char(a.purchase_date, 'YYYY-MM-DD') as day, to_date(dl.depreciation_date, 'YYYY-MM-DD') as depreciation_date, a.purchase_date as purchase_date, - a.purchase_value as gross_value, + (CASE WHEN (select min(d.id) from account_asset_depreciation_line as d + left join account_asset_asset as ac ON (ac.id=d.asset_id) + where a.id=ac.id) = min(dl.id) + THEN a.purchase_value + ELSE 0 + END) as gross_value, dl.amount as remaining_value, (CASE WHEN dl.move_check THEN dl.amount From 048421ac28be009f2b18b6752cb98dc7c9a53baa Mon Sep 17 00:00:00 2001 From: "Ujjvala Collins (OpenERP)" Date: Thu, 30 Jun 2011 17:44:58 +0530 Subject: [PATCH 9/9] [IMP] account_asset: Corrections according to python standards. bzr revid: uco@tinyerp.com-20110630121458-x3b5anmgxovhjz1x --- .../report/account_asset_report.py | 24 +++++++++---------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/addons/account_asset/report/account_asset_report.py b/addons/account_asset/report/account_asset_report.py index c017adc6904..5d232b03213 100644 --- a/addons/account_asset/report/account_asset_report.py +++ b/addons/account_asset/report/account_asset_report.py @@ -20,7 +20,7 @@ ############################################################################## import tools -from osv import fields,osv +from osv import fields, osv class asset_asset_report(osv.osv): _name = "asset.asset.report" @@ -28,20 +28,20 @@ class asset_asset_report(osv.osv): _auto = False _columns = { 'name': fields.char('Year', size=16, required=False, readonly=True), - 'month':fields.selection([('01', 'January'), ('02', 'February'), \ - ('03', 'March'), ('04', 'April'),\ - ('05', 'May'), ('06', 'June'), \ - ('07', 'July'), ('08', 'August'),\ - ('09', 'September'), ('10', 'October'),\ - ('11', 'November'), ('12', 'December')], 'Month', readonly=True), + 'month': fields.selection([('01', 'January'), ('02', 'February'), \ + ('03', 'March'), ('04', 'April'),\ + ('05', 'May'), ('06', 'June'),\ + ('07', 'July'), ('08', 'August'),\ + ('09', 'September'), ('10', 'October'),\ + ('11', 'November'), ('12', 'December')], 'Month', readonly=True), 'day': fields.char('Day', size=16, readonly=True), - 'purchase_date': fields.date('Purchase Date', required=True), + 'purchase_date': fields.date('Purchase Date', readonly=True), 'depreciation_date': fields.date('Depreciation Date', readonly=True), 'asset_id': fields.many2one('account.asset.asset', string='Asset', readonly=True), 'asset_category_id': fields.many2one('account.asset.category',string='Asset category'), 'partner_id': fields.many2one('res.partner', 'Partner', readonly=True), - 'state': fields.selection([('draft','Draft'),('open','Running'),('close','Close')], 'State', required=True, readonly=True), - 'remaining_value': fields.float('Amount of Depreciation Lines', required=True, readonly=True), + 'state': fields.selection([('draft','Draft'),('open','Running'),('close','Close')], 'State', readonly=True), + 'remaining_value': fields.float('Amount of Depreciation Lines', readonly=True), 'move_check': fields.boolean('Posted', readonly=True), 'nbr': fields.integer('# of Depreciation Lines', readonly=True), 'gross_value': fields.float('Gross Value', readonly=True), @@ -97,9 +97,7 @@ class asset_asset_report(osv.osv): from account_asset_depreciation_line dl left join account_asset_asset a on (dl.asset_id=a.id) group by - dl.amount,dl.remaining_value,dl.depreciated_value,dl.asset_id, - to_char(a.purchase_date, 'YYYY'),to_char(a.purchase_date, 'MM'), - to_char(a.purchase_date, 'YYYY-MM-DD'),to_date(dl.depreciation_date, 'YYYY-MM-DD'), + dl.amount,dl.asset_id,to_date(dl.depreciation_date, 'YYYY-MM-DD'), a.purchase_date, dl.move_check, a.state, a.category_id, a.partner_id, a.company_id, a.purchase_value, a.id, a.salvage_value )""")