From f39751be85935eb25e1c4b8a4421ae89bd2b06eb Mon Sep 17 00:00:00 2001 From: apa-tiny Date: Tue, 25 May 2010 15:50:06 +0530 Subject: [PATCH 1/4] [IMP]:sale:Sales Analysis -Rename the menu "Report > Sales" by "Sales Analysis". -Rename the column name Avg Closing Delay by "Days to Close". -Add the field "Category of Product" for group_by or filters. -Remove the field "Payment Term" and "Fiscal Position" from this object (and group by). -The buttons that filters on State must be: [Quotation] [Sales]. -Extended options: (put in one line) - just put date, category of product, shop, state. bzr revid: apa@tinyerp.com-20100525102006-ytkcnux68fsoc7br --- addons/sale/report/sale_report.py | 39 +++------ addons/sale/report/sale_report_view.xml | 108 +++++++++--------------- 2 files changed, 53 insertions(+), 94 deletions(-) diff --git a/addons/sale/report/sale_report.py b/addons/sale/report/sale_report.py index c8b616ced78..e713c479f72 100644 --- a/addons/sale/report/sale_report.py +++ b/addons/sale/report/sale_report.py @@ -36,16 +36,15 @@ class sale_report(osv.osv): ('10','October'), ('11','November'), ('12','December')], 'Month',readonly=True), 'day': fields.char('Day', size=128, readonly=True), 'product_id':fields.many2one('product.product', 'Product', readonly=True), - 'product_qty':fields.float('Qty', readonly=True), + 'product_qty':fields.float('# of Qty', readonly=True), 'partner_id':fields.many2one('res.partner', 'Partner', readonly=True), 'shop_id':fields.many2one('sale.shop', 'Shop', readonly=True), 'company_id':fields.many2one('res.company', 'Company', readonly=True), - 'payment_term': fields.many2one('account.payment.term', 'Payment Term',readonly=True), - 'fiscal_position': fields.many2one('account.fiscal.position', 'Fiscal Position',readonly=True), 'user_id':fields.many2one('res.users', 'Salesman', readonly=True), 'price_total':fields.float('Total Price', readonly=True), - 'delay':fields.float('Avg Closing Days', digits=(16,2), readonly=True), + 'delay':fields.float('Days to Close', digits=(16,2), readonly=True), 'price_average':fields.float('Average Price', readonly=True), + 'categ_id': fields.many2one('product.category','Category of Product', readonly=True), 'nbr':fields.integer('# of Lines', readonly=True), 'state': fields.selection([ ('draft', 'Quotation'), @@ -57,12 +56,8 @@ class sale_report(osv.osv): ('done', 'Done'), ('cancel', 'Cancelled') ], 'Order State', readonly=True), - 'partner_invoice_id': fields.many2one('res.partner.address', 'Invoice Address Name', readonly=True), - 'partner_order_id': fields.many2one('res.partner.address', 'Ordering Contact Name', readonly=True), - 'partner_shipping_id': fields.many2one('res.partner.address', 'Shipping Address Name', readonly=True), - 'pricelist_id': fields.many2one('product.pricelist', 'Pricelist', required=True), + 'pricelist_id': fields.many2one('product.pricelist', 'Pricelist', readonly=True), 'analytic_account_id': fields.many2one('account.analytic.account', 'Analytic Account', readonly=True), - 'date_confirm': fields.date('Confirmation Date', readonly=True) } _order = 'date desc' def init(self, cr): @@ -80,42 +75,32 @@ class sale_report(osv.osv): s.partner_id as partner_id, s.user_id as user_id, s.shop_id as shop_id, - s.fiscal_position as fiscal_position, - s.payment_term as payment_term, s.company_id as company_id, extract(epoch from avg(s.date_confirm-s.create_date))/(24*60*60)::decimal(16,2) as delay, sum(l.product_uom_qty*l.price_unit) as price_total, (sum(l.product_uom_qty*l.price_unit)/sum(l.product_uom_qty * u.factor))::decimal(16,2) as price_average, count(*) as nbr, s.state, - s.partner_invoice_id as partner_invoice_id, - s.partner_order_id as partner_order_id, - s.partner_shipping_id as partner_shipping_id, + pt.categ_id, s.pricelist_id as pricelist_id, - s.project_id as analytic_account_id, - s.date_confirm as date_confirm + s.project_id as analytic_account_id from sale_order_line l - left join - sale_order s on (s.id=l.order_id) - left join product_uom u on (u.id=l.product_uom) + left join sale_order s on (s.id=l.order_id) + left join product_uom u on (u.id=l.product_uom) + left join product_template pt on (pt.id=l.product_id) group by s.date_order, s.partner_id, l.product_id, l.product_uom, s.user_id, + pt.categ_id, s.state, s.shop_id, s.company_id, - s.fiscal_position, - s.payment_term, - s.partner_invoice_id, - s.partner_order_id, - s.partner_shipping_id, s.pricelist_id, - s.project_id, - s.date_confirm + s.project_id ) """) sale_report() @@ -212,7 +197,7 @@ class product_bought_by_sale_order(osv.osv): where s.state='manual' or s.state='progress' group by - l.product_id, to_char(l.create_date, 'MM'), to_char(l.create_date, 'YYYY') + l.product_id, to_char(l.create_date, 'MM'), to_char(l.create_date, 'YYYY') ) """) product_bought_by_sale_order() diff --git a/addons/sale/report/sale_report_view.xml b/addons/sale/report/sale_report_view.xml index fe88fa33555..69541868904 100644 --- a/addons/sale/report/sale_report_view.xml +++ b/addons/sale/report/sale_report_view.xml @@ -1,12 +1,13 @@ + sale.report.tree sale.report tree - + @@ -16,20 +17,15 @@ - - + + + - - - - - - @@ -39,9 +35,10 @@ sale.report graph - + + @@ -51,84 +48,60 @@ sale.report search - + - - + + + string=" 7 Days " + separator="1" + domain="[('date','<=', time.strftime('%%Y-%%m-%%d')), ('date','>',(datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d'))]" + help="Tasks during last 7 days"/> + string="Quotations" + domain="[('state','=','draft')]"/> - - + string="Sales" + domain="[('state','not in',('draft','done','cancel'))]"/> + + + string="My Sales" + help="My Sales" + domain="[('user_id','=',uid)]"/> - - + - - + - - - - - - - - - - - - - - - - - + + - - - + + - - - - - + @@ -139,19 +112,19 @@ - Sales Orders + Sales Analysis sale.report form tree,graph - {'search_default_month':1,'search_default_User':1,'search_default_user_id':uid,'group_by_no_leaf':1,'group_by':[]} + {'search_default_month':1,'search_default_User':1,'group_by_no_leaf':1,'group_by':[]} - - + + sale.order.by.clients.tree sale.order.by.clients tree @@ -216,7 +189,7 @@ - + product.bought.by.sale.order.tree product.bought.by.sale.order tree @@ -283,5 +256,6 @@ tree,graph + From a75dccccf2127be2a7387116298bc902def89d88 Mon Sep 17 00:00:00 2001 From: apa-tiny Date: Tue, 25 May 2010 16:05:30 +0530 Subject: [PATCH 2/4] [IMP]:project:improved tasks analysis SQL report. bzr revid: apa@tinyerp.com-20100525103530-otlhw3q60ji63uqv --- addons/project/report/project_report_view.xml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/addons/project/report/project_report_view.xml b/addons/project/report/project_report_view.xml index 542bfec9490..37f43590515 100644 --- a/addons/project/report/project_report_view.xml +++ b/addons/project/report/project_report_view.xml @@ -98,13 +98,9 @@ - From 97b2f83bf4f3f9573d64a3f7475ea607c8a476d6 Mon Sep 17 00:00:00 2001 From: apa-tiny Date: Tue, 25 May 2010 17:35:09 +0530 Subject: [PATCH 3/4] [IMP]:stock,account,project,sale:Improved SQL reports. bzr revid: apa@tinyerp.com-20100525120509-e76da8uak1alpu0h --- addons/account/report/account_invoice_report_view.xml | 4 ++-- addons/project/report/project_report_view.xml | 4 ++-- addons/sale/report/sale_report_view.xml | 4 ++-- addons/stock/report/report_stock_picking_view.xml | 9 +++++++-- 4 files changed, 13 insertions(+), 8 deletions(-) diff --git a/addons/account/report/account_invoice_report_view.xml b/addons/account/report/account_invoice_report_view.xml index b974afdb8a3..bdbcb4c7ed6 100644 --- a/addons/account/report/account_invoice_report_view.xml +++ b/addons/account/report/account_invoice_report_view.xml @@ -56,10 +56,10 @@ - - diff --git a/addons/project/report/project_report_view.xml b/addons/project/report/project_report_view.xml index 37f43590515..da4c2cd7ee0 100644 --- a/addons/project/report/project_report_view.xml +++ b/addons/project/report/project_report_view.xml @@ -55,10 +55,10 @@ - - diff --git a/addons/sale/report/sale_report_view.xml b/addons/sale/report/sale_report_view.xml index 69541868904..41bb1598a30 100644 --- a/addons/sale/report/sale_report_view.xml +++ b/addons/sale/report/sale_report_view.xml @@ -50,10 +50,10 @@ - - diff --git a/addons/stock/report/report_stock_picking_view.xml b/addons/stock/report/report_stock_picking_view.xml index 62d1b06fd19..1d977f92abd 100644 --- a/addons/stock/report/report_stock_picking_view.xml +++ b/addons/stock/report/report_stock_picking_view.xml @@ -54,13 +54,18 @@ - - + From e03b956d0c96e9a12e2a50afb31771d24a550bff Mon Sep 17 00:00:00 2001 From: apa-tiny Date: Tue, 25 May 2010 18:05:03 +0530 Subject: [PATCH 4/4] [IMP]:hr_holidays:Improved Code. bzr revid: apa@tinyerp.com-20100525123503-fud2emceh9p3ks0g --- addons/hr_holidays/report/available_holidays_view.xml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/addons/hr_holidays/report/available_holidays_view.xml b/addons/hr_holidays/report/available_holidays_view.xml index a89655b503c..5d6cc41a730 100644 --- a/addons/hr_holidays/report/available_holidays_view.xml +++ b/addons/hr_holidays/report/available_holidays_view.xml @@ -60,7 +60,6 @@ domain="[('date','<=', time.strftime('%%Y-%%m-%%d')), ('date','>',(datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d'))]" help="Leaves during last 7 days"/> -<<<<<<< TREE -======= - - ->>>>>>> MERGE-SOURCE