From cbf9c244beab1689c1499baad9a3084d18625474 Mon Sep 17 00:00:00 2001 From: "Jagdish Panchal (Open ERP)" Date: Tue, 10 Apr 2012 12:46:27 +0530 Subject: [PATCH 01/38] [IMP] set home page of all menus bzr revid: jap@tinyerp.com-20120410071627-4gk2gz2fhf45ruux --- addons/account/account_invoice_view.xml | 3 +++ addons/account/board_account_view.xml | 2 +- addons/document/board_document_view.xml | 4 ++-- addons/document/document_view.xml | 4 ++++ addons/event/event_view.xml | 2 ++ addons/hr/hr_board.xml | 2 +- addons/hr/hr_view.xml | 3 +++ addons/membership/membership_view.xml | 2 ++ addons/mrp/board_manufacturing_view.xml | 4 ++-- addons/mrp/mrp_view.xml | 3 +++ addons/project/board_project_view.xml | 4 ++-- addons/project/project_view.xml | 3 +++ addons/purchase/board_purchase_view.xml | 2 +- addons/purchase/purchase_view.xml | 11 +++++++---- .../purchase_requisition_view.xml | 2 +- addons/sale/board_sale_view.xml | 4 ++-- addons/sale/sale_view.xml | 2 +- addons/stock/board_warehouse_view.xml | 2 +- addons/stock/stock_view.xml | 5 ++++- 19 files changed, 45 insertions(+), 19 deletions(-) diff --git a/addons/account/account_invoice_view.xml b/addons/account/account_invoice_view.xml index 6d499b4d3ad..4444c51dd02 100644 --- a/addons/account/account_invoice_view.xml +++ b/addons/account/account_invoice_view.xml @@ -430,6 +430,9 @@ With Customer Invoices you can create and manage sales invoices issued to your customers. OpenERP can also generate draft invoices automatically from sales orders or deliveries. You should only confirm them before sending them to your customers. + diff --git a/addons/account/board_account_view.xml b/addons/account/board_account_view.xml index 6417bb99d88..1d7865c0f01 100644 --- a/addons/account/board_account_view.xml +++ b/addons/account/board_account_view.xml @@ -63,7 +63,7 @@ - + diff --git a/addons/document/board_document_view.xml b/addons/document/board_document_view.xml index 4412423c97b..44fb44d2a18 100644 --- a/addons/document/board_document_view.xml +++ b/addons/document/board_document_view.xml @@ -49,8 +49,8 @@ id="menu_reports_document_manager" icon="terp-graph"/> - + board.document.manager.form1 diff --git a/addons/document/document_view.xml b/addons/document/document_view.xml index e426444f26d..4ddd85bb8f7 100644 --- a/addons/document/document_view.xml +++ b/addons/document/document_view.xml @@ -357,6 +357,10 @@ action="action_document_file_form" id="menu_document_files" parent="menu_document_doc"/> + + + ir.actions.act_window diff --git a/addons/event/event_view.xml b/addons/event/event_view.xml index 0825cef42c5..200b9f88237 100644 --- a/addons/event/event_view.xml +++ b/addons/event/event_view.xml @@ -304,6 +304,8 @@ Event is the low level object used by meeting and others documents that should be synchronized with mobile devices or calendar applications through caldav. Most of the users should work in the Calendar menu, and not in the list of events. + + - + diff --git a/addons/hr/hr_view.xml b/addons/hr/hr_view.xml index a954d916385..df5de845c9e 100644 --- a/addons/hr/hr_view.xml +++ b/addons/hr/hr_view.xml @@ -188,6 +188,9 @@ Here you can manage your work force by creating employees and assigning them specific properties in the system. Maintain all employee related information and keep track of anything that needs to be recorded for them. The personal information tab will help you maintain their identity data. The Categories tab gives you the opportunity to assign them related employee categories depending on their position and activities within the company. A category can be a seniority level within the company or a department. The Timesheets tab allows to assign them a specific timesheet and analytic journal where they will be able to enter time through the system. In the note tab, you can enter text data that should be recorded for a specific employee. + + kanban diff --git a/addons/membership/membership_view.xml b/addons/membership/membership_view.xml index bdb04525d43..074bed97fcd 100644 --- a/addons/membership/membership_view.xml +++ b/addons/membership/membership_view.xml @@ -208,6 +208,8 @@ + + diff --git a/addons/mrp/board_manufacturing_view.xml b/addons/mrp/board_manufacturing_view.xml index cb81d51d439..4ce4f5e5995 100644 --- a/addons/mrp/board_manufacturing_view.xml +++ b/addons/mrp/board_manufacturing_view.xml @@ -35,8 +35,8 @@ id="menu_board_manufacturing" parent="menus_dash_mrp" sequence="1"/> - + diff --git a/addons/mrp/mrp_view.xml b/addons/mrp/mrp_view.xml index f96147e9344..7533ddea12e 100644 --- a/addons/mrp/mrp_view.xml +++ b/addons/mrp/mrp_view.xml @@ -840,6 +840,9 @@ + + Manufacturing Orders ir.actions.act_window diff --git a/addons/project/board_project_view.xml b/addons/project/board_project_view.xml index f4a855283ba..bca37ac3fc4 100644 --- a/addons/project/board_project_view.xml +++ b/addons/project/board_project_view.xml @@ -117,9 +117,9 @@ parent="menu_project_dashboard" sequence="1"/> - + name="Project" sequence="10" action="open_board_project"/> --> diff --git a/addons/project/project_view.xml b/addons/project/project_view.xml index 95538513f0c..2b86de95427 100644 --- a/addons/project/project_view.xml +++ b/addons/project/project_view.xml @@ -542,6 +542,9 @@ + + Overpassed Tasks project.task diff --git a/addons/purchase/board_purchase_view.xml b/addons/purchase/board_purchase_view.xml index 4c9e776b96b..4d8280059b0 100644 --- a/addons/purchase/board_purchase_view.xml +++ b/addons/purchase/board_purchase_view.xml @@ -116,7 +116,7 @@ parent="menu_purchase_deshboard" sequence="4"/> - + diff --git a/addons/purchase/purchase_view.xml b/addons/purchase/purchase_view.xml index 007c85b98f1..4de426e71f9 100644 --- a/addons/purchase/purchase_view.xml +++ b/addons/purchase/purchase_view.xml @@ -3,7 +3,7 @@ @@ -312,8 +312,11 @@ - + sequence="0"/> + + + Purchase Orders ir.actions.act_window @@ -323,7 +326,7 @@ Use this menu to search within your purchase orders by references, supplier, products, etc. For each purchase order, you can track the products received, and control the supplier invoices. - + diff --git a/addons/purchase_requisition/purchase_requisition_view.xml b/addons/purchase_requisition/purchase_requisition_view.xml index d6a736eea9c..5e77f46b1a2 100644 --- a/addons/purchase_requisition/purchase_requisition_view.xml +++ b/addons/purchase_requisition/purchase_requisition_view.xml @@ -173,7 +173,7 @@ diff --git a/addons/sale/board_sale_view.xml b/addons/sale/board_sale_view.xml index 8a6caf1a849..4d45151dece 100644 --- a/addons/sale/board_sale_view.xml +++ b/addons/sale/board_sale_view.xml @@ -124,9 +124,9 @@ - + name="Sales"/> --> diff --git a/addons/sale/sale_view.xml b/addons/sale/sale_view.xml index 09ad9381e26..6feff81e9ee 100644 --- a/addons/sale/sale_view.xml +++ b/addons/sale/sale_view.xml @@ -1,7 +1,7 @@ diff --git a/addons/stock/board_warehouse_view.xml b/addons/stock/board_warehouse_view.xml index b8de9cf445e..a24f59aa08f 100644 --- a/addons/stock/board_warehouse_view.xml +++ b/addons/stock/board_warehouse_view.xml @@ -70,7 +70,7 @@ - + diff --git a/addons/stock/stock_view.xml b/addons/stock/stock_view.xml index 592cb180d22..1d81f80829c 100644 --- a/addons/stock/stock_view.xml +++ b/addons/stock/stock_view.xml @@ -4,7 +4,7 @@ @@ -1924,6 +1924,9 @@ Stock Management + + From 4347226b1d16f73c84f9606b613ec0053602d628 Mon Sep 17 00:00:00 2001 From: "Jagdish Panchal (Open ERP)" Date: Tue, 10 Apr 2012 16:21:25 +0530 Subject: [PATCH 02/38] [IMP] board: improve xml code to set module kanban on setting main menu bzr revid: jap@tinyerp.com-20120410105125-ysmtfc1qgizmldly --- addons/board/board_data_admin.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/board/board_data_admin.xml b/addons/board/board_data_admin.xml index 5f8c2f1b05c..88580c3deb5 100644 --- a/addons/board/board_data_admin.xml +++ b/addons/board/board_data_admin.xml @@ -54,7 +54,7 @@ - + From a163b926e393ef63b30c5f23aad2d652be7ef57d Mon Sep 17 00:00:00 2001 From: "DBR (OpenERP)" Date: Wed, 18 Apr 2012 17:54:59 +0530 Subject: [PATCH 03/38] [IMP]stock: click on warehouse menu tn open product kanban view bzr revid: dbr@tinyerp.com-20120418122459-l27y5wa1b38oaid6 --- addons/product/product_view.xml | 11 +++++++++-- addons/stock/stock_view.xml | 2 +- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/addons/product/product_view.xml b/addons/product/product_view.xml index 2a12fc9ad08..b721dd2031d 100644 --- a/addons/product/product_view.xml +++ b/addons/product/product_view.xml @@ -263,19 +263,26 @@ - + tree - + form + + + kanban + + + + diff --git a/addons/stock/stock_view.xml b/addons/stock/stock_view.xml index cfa73a8806d..4edc1cef753 100644 --- a/addons/stock/stock_view.xml +++ b/addons/stock/stock_view.xml @@ -5,7 +5,7 @@ + web_icon_hover="images/warehouse-hover.png" action="product.product_normal_action"/> From c6ee2737b344ce7f211eac70c9b57c3b7850ea5f Mon Sep 17 00:00:00 2001 From: "DBR (OpenERP)" Date: Thu, 19 Apr 2012 12:58:30 +0530 Subject: [PATCH 04/38] [IMP]sale : remove action of partner form bzr revid: dbr@tinyerp.com-20120419072830-gu41w6tmdmfgowp5 --- addons/hr/hr_board.xml | 1 - addons/sale/sale_view.xml | 3 +-- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/addons/hr/hr_board.xml b/addons/hr/hr_board.xml index 20c0e626619..582d6175d8b 100644 --- a/addons/hr/hr_board.xml +++ b/addons/hr/hr_board.xml @@ -24,7 +24,6 @@ - diff --git a/addons/sale/sale_view.xml b/addons/sale/sale_view.xml index 9b6ede9a278..fc9bc907b1e 100644 --- a/addons/sale/sale_view.xml +++ b/addons/sale/sale_view.xml @@ -2,8 +2,7 @@ + id="base.menu_base_partner" name="Sales" sequence="0" groups="base.group_sale_salesman,base.group_sale_manager"/> From d30492d5e316feb39772bae44906712e697c666b Mon Sep 17 00:00:00 2001 From: "DBR (OpenERP)" Date: Thu, 19 Apr 2012 16:04:08 +0530 Subject: [PATCH 05/38] [IMP]sale: Add action bzr revid: dbr@tinyerp.com-20120419103408-d3fag9s327hdow8h --- addons/sale/sale_view.xml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/addons/sale/sale_view.xml b/addons/sale/sale_view.xml index fc9bc907b1e..9a0147ef909 100644 --- a/addons/sale/sale_view.xml +++ b/addons/sale/sale_view.xml @@ -1,8 +1,6 @@ - + From f490733e49e366ef2297ee6afc76f1db27781a14 Mon Sep 17 00:00:00 2001 From: "DBR (OpenERP)" Date: Mon, 23 Apr 2012 18:41:07 +0530 Subject: [PATCH 06/38] [IMP]project: set project action for a project menu bzr revid: dbr@tinyerp.com-20120423131107-eaoqtajoxyk12i8l --- addons/project/project_view.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/project/project_view.xml b/addons/project/project_view.xml index 8a708a5a0f8..1344566c6bf 100644 --- a/addons/project/project_view.xml +++ b/addons/project/project_view.xml @@ -547,7 +547,7 @@ - From b6adc8491a59d4dd932608288d862be93f3d18f5 Mon Sep 17 00:00:00 2001 From: "DBR (OpenERP)" Date: Wed, 25 Apr 2012 18:48:28 +0530 Subject: [PATCH 07/38] [IMP] sale_crm : Remove menu bzr revid: dbr@tinyerp.com-20120425131828-g0ghy9g10yx462gf --- addons/sale_crm/board_sale_crm_view.xml | 2 -- 1 file changed, 2 deletions(-) diff --git a/addons/sale_crm/board_sale_crm_view.xml b/addons/sale_crm/board_sale_crm_view.xml index a5fa08222e0..76b22c59d62 100644 --- a/addons/sale_crm/board_sale_crm_view.xml +++ b/addons/sale_crm/board_sale_crm_view.xml @@ -29,7 +29,5 @@ - From d9c305ef068242cc5e2c1d998d19ed82418130a4 Mon Sep 17 00:00:00 2001 From: "DBR (OpenERP)" Date: Thu, 26 Apr 2012 16:01:33 +0530 Subject: [PATCH 08/38] [ADD,IMP] sale,crm: added: sale/res_partner.py sale/res_partner_view.xml modified: crm/res_partner.py crm/res_partner_view.xml sale/__init__.py sale/__openerp__.py stock/product.py stock/product_view.xml stock/static/src/css/stock.css For set links off quatations,opportunity and meeting bzr revid: dbr@tinyerp.com-20120426103133-l0uc091e9r7mbu9b --- addons/crm/res_partner.py | 52 +++++++++++++++++++ addons/crm/res_partner_view.xml | 29 +++++++++++ addons/sale/__init__.py | 1 + addons/sale/__openerp__.py | 1 + addons/sale/res_partner.py | 42 +++++++++++++++ addons/sale/res_partner_view.xml | 25 +++++++++ addons/stock/product.py | 73 +++++++++++++++++++++++++++ addons/stock/product_view.xml | 16 ++++++ addons/stock/static/src/css/stock.css | 8 +-- 9 files changed, 243 insertions(+), 4 deletions(-) create mode 100644 addons/sale/res_partner.py create mode 100644 addons/sale/res_partner_view.xml diff --git a/addons/crm/res_partner.py b/addons/crm/res_partner.py index 3d43bc76022..af56afd2577 100644 --- a/addons/crm/res_partner.py +++ b/addons/crm/res_partner.py @@ -20,10 +20,29 @@ ############################################################################## from osv import fields,osv +from tools.translate import _ class res_partner(osv.osv): """ Inherits partner and adds CRM information in the partner form """ _inherit = 'res.partner' + + def _total_oppo(self, cr, uid, ids, field_name, arg, context=None): + total_oppo={} + oppo_pool=self.pool.get('crm.lead') + for id in ids: + oppo_ids = oppo_pool.search(cr, uid, [('partner_id', '=', id)]) + total_oppo[id] = len(oppo_ids) + return total_oppo + + def _total_meeting(self, cr, uid, ids, field_name, arg, context=None): + total_meeting={} + meeting_pool=self.pool.get('crm.meeting') + for id in ids: + meeting_ids = meeting_pool.search(cr, uid, [('partner_id', '=', id)]) + total_meeting[id] = len(meeting_ids) + return total_meeting + + _columns = { 'section_id': fields.many2one('crm.case.section', 'Sales Team'), 'opportunity_ids': fields.one2many('crm.lead', 'partner_id',\ @@ -32,6 +51,13 @@ class res_partner(osv.osv): 'Meetings'), 'phonecall_ids': fields.one2many('crm.phonecall', 'partner_id',\ 'Phonecalls'), + 'total_oppo': fields.function(_total_oppo , type='integer',string="Total Opportunity"), + 'total_meeting': fields.function(_total_meeting , type='integer',string="Total Meeting"), + } + + _defaults = { + 'total_oppo': 0, + 'total_meeting': 0, } def redirect_partner_form(self, cr, uid, partner_id, context=None): @@ -49,6 +75,32 @@ class res_partner(osv.osv): } return value + def get_opportunity(self, cr, uid, ids, context=None): + if context is None: + context = {} + models_data = self.pool.get('ir.model.data') + + form_view = models_data.get_object_reference(cr, uid, 'crm', 'crm_case_form_view_oppor') + tree_view = models_data.get_object_reference(cr, uid, 'crm', 'crm_case_tree_view_oppor') + search_view = models_data.get_object_reference(cr, uid, 'crm', 'view_crm_case_opportunities_filter') + partner_id = self.browse(cr, uid, ids[0], context=context) + domain =[('partner_id', '=', partner_id.id)] + + return { + 'name': _('Opportunity'), + 'view_type': 'form', + 'view_mode': 'tree, form', + 'res_model': 'crm.lead', + 'domain': domain, + 'view_id': False, + 'views': [(tree_view and tree_view[1] or False, 'tree'), + (form_view and form_view[1] or False, 'form'), + (False, 'calendar'), (False, 'graph')], + 'type': 'ir.actions.act_window', + 'search_view_id': search_view and search_view[1] or False, + 'nodestroy': True, + } + def make_opportunity(self, cr, uid, ids, opportunity_summary, planned_revenue=0.0, probability=0.0, partner_id=None, context=None): categ_obj = self.pool.get('crm.case.categ') categ_ids = categ_obj.search(cr, uid, [('object_id.model','=','crm.lead')]) diff --git a/addons/crm/res_partner_view.xml b/addons/crm/res_partner_view.xml index 6926464cd93..d9f63276eca 100644 --- a/addons/crm/res_partner_view.xml +++ b/addons/crm/res_partner_view.xml @@ -42,6 +42,35 @@ + + + + res.partner.kanban.inherit + res.partner + kanban + + + + + + + + + + + () + Opportunity + Opportunities + + + () + Meeting + Meetings + + + + + res.partner.crm.info.inherit1 diff --git a/addons/sale/__init__.py b/addons/sale/__init__.py index 2688b61ddd9..fe19b7fa609 100644 --- a/addons/sale/__init__.py +++ b/addons/sale/__init__.py @@ -25,6 +25,7 @@ import sale import stock +import res_partner import wizard import report import company diff --git a/addons/sale/__openerp__.py b/addons/sale/__openerp__.py index 8a2686cca83..992a96f261d 100644 --- a/addons/sale/__openerp__.py +++ b/addons/sale/__openerp__.py @@ -80,6 +80,7 @@ Dashboard for Sales Manager that includes: 'sale_report.xml', 'sale_data.xml', 'sale_view.xml', + 'res_partner_view.xml', 'report/sale_report_view.xml', 'stock_view.xml', 'process/sale_process.xml', diff --git a/addons/sale/res_partner.py b/addons/sale/res_partner.py new file mode 100644 index 00000000000..20c47909ba6 --- /dev/null +++ b/addons/sale/res_partner.py @@ -0,0 +1,42 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# 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 +# 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 . +# +############################################################################## + +from osv import fields,osv +from tools.translate import _ + +class res_partner(osv.osv): + _inherit = 'res.partner' + + def _total_sale(self, cr, uid, ids, field_name, arg, context=None): + total_sale={} + sale_pool=self.pool.get('sale.order') + for id in ids: + sale_ids = sale_pool.search(cr, uid, [('partner_id', '=', id)]) + total_sale[id] = len(sale_ids) + return total_sale + + _columns = { + 'total_sale': fields.function(_total_sale , type='integer',string="Total Sale"), + } + _defaults = { + 'total_sale': 0, + } +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/sale/res_partner_view.xml b/addons/sale/res_partner_view.xml new file mode 100644 index 00000000000..a13ecf29db8 --- /dev/null +++ b/addons/sale/res_partner_view.xml @@ -0,0 +1,25 @@ + + + + + + res.partner.kanban.inherit + res.partner + kanban + + + + + + + + () + Quatation + Quatations + + + + + + + diff --git a/addons/stock/product.py b/addons/stock/product.py index 304fa8dcd87..37d26e3d23f 100644 --- a/addons/stock/product.py +++ b/addons/stock/product.py @@ -26,6 +26,22 @@ import decimal_precision as dp class product_product(osv.osv): _inherit = "product.product" + def _get_reception(self, cr, uid, ids, field_name, arg, context=None): + total_reception={} + reception_pool=self.pool.get('stock.picking') + for id in ids: + reception_ids = reception_pool.search(cr, uid, [('move_lines.product_id','=',id),('type','=','in')]) + total_reception[id] = len(reception_ids) + return total_reception + + def _total_delivery(self, cr, uid, ids, field_name, arg, context=None): + total_delivery={} + delivery_pool=self.pool.get('stock.picking') + for id in ids: + delivery_ids = delivery_pool.search(cr, uid, [('move_lines.product_id', '=', id),('type','=','out')]) + total_delivery[id] = len(delivery_ids) + return total_delivery + def get_product_accounts(self, cr, uid, product_id, context=None): """ To get the stock input account, stock output account and stock journal related to product. @param product_id: product id @@ -331,6 +347,8 @@ class product_product(osv.osv): return res _columns = { + 'total_reception': fields.function(_get_reception , type='integer',string="Total Reception"), + 'total_delivery': fields.function(_total_delivery , type='integer',string="Total Delivery"), 'qty_available': fields.function(_product_available, multi='qty_available', type='float', digits_compute=dp.get_precision('Product UoM'), string='Quantity On Hand', @@ -446,6 +464,61 @@ class product_product(osv.osv): if fields.get('qty_available'): res['fields']['qty_available']['string'] = _('Produced Qty') return res + def get_receptions(self, cr, uid, ids, context=None): + if context is None: + context = {} + models_data = self.pool.get('ir.model.data') + + form_view = models_data.get_object_reference(cr, uid, 'stock', 'view_picking_in_form') + tree_view = models_data.get_object_reference(cr, uid, 'stock', 'view_picking_in_tree') + search_view = models_data.get_object_reference(cr, uid, 'stock', 'view_picking_internal_search') + product_id = self.browse(cr, uid, ids[0], context=context) + domain =[('move_lines.product_id', '=', product_id.id),('type','=','in')] + context.update({'default_type': 'internal', 'contact_display': 'partner_address', 'search_default_available': 1}) + + return { + 'name': _('Receptions'), + 'view_type': 'form', + 'view_mode': 'tree, form', + 'res_model': 'stock.picking', + 'domain': domain, + 'view_id': False, + 'views': [(tree_view and tree_view[1] or False, 'tree'), + (form_view and form_view[1] or False, 'form'), + (False, 'calendar'), (False, 'graph')], + 'type': 'ir.actions.act_window', + 'context': context, + 'search_view_id': search_view and search_view[1] or False, + 'nodestroy': True, + } + + def get_deliveries(self, cr, uid, ids, context=None): + if context is None: + context = {} + models_data = self.pool.get('ir.model.data') + + form_view = models_data.get_object_reference(cr, uid, 'stock', 'view_picking_out_form') + tree_view = models_data.get_object_reference(cr, uid, 'stock', 'view_picking_out_tree') + search_view = models_data.get_object_reference(cr, uid, 'stock', 'view_picking_out_search') + product_id = self.browse(cr, uid, ids[0], context=context) + domain =[('move_lines.product_id', '=', product_id.id),('type','=','out')] + context.update({'default_type': 'out', 'contact_display': 'partner_address'}) + + return { + 'name': _('Deliveries'), + 'view_type': 'form', + 'view_mode': 'tree, form', + 'res_model': 'stock.picking', + 'domain': domain, + 'view_id': False, + 'views': [(tree_view and tree_view[1] or False, 'tree'), + (form_view and form_view[1] or False, 'form'), + (False, 'calendar'), (False, 'graph')], + 'type': 'ir.actions.act_window', + 'context':context, + 'search_view_id': search_view and search_view[1] or False, + 'nodestroy': True, + } product_product() diff --git a/addons/stock/product_view.xml b/addons/stock/product_view.xml index 5af954a023a..e5d070507e7 100644 --- a/addons/stock/product_view.xml +++ b/addons/stock/product_view.xml @@ -136,6 +136,8 @@ + +
@@ -150,6 +152,20 @@
  • Price:
  • Cost:
  • + + + () + Reception + Receptions + + + + + () + Delivery + Deliveries + +