diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py index adf15e93a89..0fe3d2bc44b 100644 --- a/addons/crm/crm_lead.py +++ b/addons/crm/crm_lead.py @@ -201,7 +201,7 @@ class crm_lead(base_stage, osv.osv): 'email_cc': fields.text('Global CC', size=252 , help="These email addresses will be added to the CC field of all inbound and outbound emails for this record before being sent. Separate multiple email addresses with a comma"), 'description': fields.text('Notes'), 'write_date': fields.datetime('Update Date' , readonly=True), - 'categ_id': fields.many2one('crm.case.categ', 'Category', \ + 'categ_ids': fields.many2many('crm.case.categ', 'crm_lead_category_rel', 'lead_id', 'category_id', 'Categories', \ domain="['|',('section_id','=',section_id),('section_id','=',False), ('object_id.model', '=', 'crm.lead')]"), 'type_id': fields.many2one('crm.case.resource.type', 'Campaign', \ domain="['|',('section_id','=',section_id),('section_id','=',False)]", help="From which campaign (seminar, marketing campaign, mass mailing, ...) did this contact come from?"), diff --git a/addons/crm/crm_lead_demo.xml b/addons/crm/crm_lead_demo.xml index cbb5e0d8bb9..7ed3bc2a86b 100644 --- a/addons/crm/crm_lead_demo.xml +++ b/addons/crm/crm_lead_demo.xml @@ -39,7 +39,7 @@ - + @@ -56,7 +56,7 @@ - + @@ -91,7 +91,7 @@ - + @@ -111,7 +111,7 @@ - + @@ -130,7 +130,7 @@ - + @@ -143,7 +143,7 @@ - + @@ -161,7 +161,7 @@ - + @@ -189,7 +189,7 @@ - + @@ -202,7 +202,7 @@ - + @@ -234,7 +234,7 @@ - + @@ -249,7 +249,7 @@ - + @@ -271,7 +271,7 @@ - + @@ -345,7 +345,7 @@ - + @@ -368,7 +368,7 @@ - + @@ -391,7 +391,7 @@ - + @@ -407,7 +407,7 @@ - + @@ -429,7 +429,7 @@ - + @@ -442,7 +442,7 @@ - + @@ -456,7 +456,7 @@ - + @@ -478,7 +478,7 @@ - + @@ -499,7 +499,7 @@ - + @@ -518,7 +518,7 @@ - + @@ -529,7 +529,7 @@ - + diff --git a/addons/crm/crm_lead_menu.xml b/addons/crm/crm_lead_menu.xml index b4071b62058..5f0912f058c 100644 --- a/addons/crm/crm_lead_menu.xml +++ b/addons/crm/crm_lead_menu.xml @@ -37,7 +37,7 @@ Opportunities crm.lead - kanban,tree,form,graph,calendar + kanban,tree,form,calendar [('type','=','opportunity')] {'stage_type': 'opportunity', 'default_type': 'opportunity'} @@ -68,13 +68,6 @@ You and your team(s) will be able to plan meetings and phone calls from opportun - - - graph - - - - diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml index 7fd14980a34..4e073981ce4 100644 --- a/addons/crm/crm_lead_view.xml +++ b/addons/crm/crm_lead_view.xml @@ -150,8 +150,8 @@ - @@ -233,7 +233,6 @@ - @@ -392,7 +391,6 @@ - - + @@ -594,7 +592,6 @@ - @@ -646,7 +643,6 @@ - @@ -665,19 +661,5 @@ - - - CRM - Opportunity Graph - crm.lead - graph - - - - - - - - - diff --git a/addons/crm/report/crm_lead_report.py b/addons/crm/report/crm_lead_report.py index 2ee1f2945f4..da5167da1e6 100644 --- a/addons/crm/report/crm_lead_report.py +++ b/addons/crm/report/crm_lead_report.py @@ -85,8 +85,6 @@ class crm_lead_report(osv.osv): 'probability': fields.float('Probability',digits=(16,2),readonly=True, group_operator="avg"), 'planned_revenue': fields.float('Planned Revenue',digits=(16,2),readonly=True), 'probable_revenue': fields.float('Probable Revenue', digits=(16,2),readonly=True), - 'categ_id': fields.many2one('crm.case.categ', 'Category',\ - domain="['|',('section_id','=',False),('section_id','=',section_id)]" , readonly=True), 'stage_id': fields.many2one ('crm.case.stage', 'Stage', readonly=True, domain="[('section_ids', '=', section_id)]"), 'partner_id': fields.many2one('res.partner', 'Partner' , readonly=True), 'nbr': fields.integer('# of Cases', readonly=True), @@ -134,7 +132,6 @@ class crm_lead_report(osv.osv): c.section_id, c.channel_id, c.type_id, - c.categ_id, c.partner_id, c.country_id, c.planned_revenue, diff --git a/addons/crm/report/crm_lead_report_view.xml b/addons/crm/report/crm_lead_report_view.xml index 142d44432f0..f45b9d621da 100644 --- a/addons/crm/report/crm_lead_report_view.xml +++ b/addons/crm/report/crm_lead_report_view.xml @@ -16,7 +16,6 @@ - @@ -114,7 +113,6 @@ - @@ -140,8 +138,6 @@ - - diff --git a/addons/crm/res_partner_view.xml b/addons/crm/res_partner_view.xml index 1350fa11f16..7d4abb8cb6e 100644 --- a/addons/crm/res_partner_view.xml +++ b/addons/crm/res_partner_view.xml @@ -93,12 +93,6 @@ - - - graph - - - diff --git a/addons/crm_partner_assign/report/crm_lead_report.py b/addons/crm_partner_assign/report/crm_lead_report.py index 7d9733581a7..a2d6bbac2dd 100644 --- a/addons/crm_partner_assign/report/crm_lead_report.py +++ b/addons/crm_partner_assign/report/crm_lead_report.py @@ -61,8 +61,6 @@ class crm_lead_report_assign(osv.osv): 'probability_max': fields.float('Max Probability',digits=(16,2),readonly=True, group_operator="max"), 'planned_revenue': fields.float('Planned Revenue',digits=(16,2),readonly=True), 'probable_revenue': fields.float('Probable Revenue', digits=(16,2),readonly=True), - 'categ_id': fields.many2one('crm.case.categ', 'Category',\ - domain="[('section_id','=',section_id)]" , readonly=True), 'stage_id': fields.many2one ('crm.case.stage', 'Stage', domain="[('section_ids', '=', section_id)]"), 'partner_id': fields.many2one('res.partner', 'Customer' , readonly=True), 'opening_date': fields.date('Opening Date', readonly=True), @@ -103,7 +101,6 @@ class crm_lead_report_assign(osv.osv): c.company_id, c.priority, c.section_id, - c.categ_id, c.partner_id, c.country_id, c.planned_revenue, diff --git a/addons/crm_partner_assign/report/crm_lead_report_view.xml b/addons/crm_partner_assign/report/crm_lead_report_view.xml index a34a9139c3c..a9a0cf75d25 100644 --- a/addons/crm_partner_assign/report/crm_lead_report_view.xml +++ b/addons/crm_partner_assign/report/crm_lead_report_view.xml @@ -29,7 +29,6 @@ - @@ -49,8 +48,6 @@ context="{'group_by':'section_id'}" /> - @@ -115,7 +112,6 @@ - diff --git a/addons/sale_crm/sale_crm.py b/addons/sale_crm/sale_crm.py index 0072730ab4d..b6d5ec25ce1 100644 --- a/addons/sale_crm/sale_crm.py +++ b/addons/sale_crm/sale_crm.py @@ -26,7 +26,7 @@ class sale_order(osv.osv): _columns = { 'section_id': fields.many2one('crm.case.section', 'Sales Team'), - 'categ_id': fields.many2one('crm.case.categ', 'Category', \ + 'categ_ids': fields.many2many('crm.case.categ', 'sale_order_category_rel', 'order_id', 'category_id', 'Categories', \ domain="['|',('section_id','=',section_id),('section_id','=',False), ('object_id.model', '=', 'crm.lead')]") } diff --git a/addons/sale_crm/sale_crm_view.xml b/addons/sale_crm/sale_crm_view.xml index 0c46f0ae704..d6b7f28d049 100644 --- a/addons/sale_crm/sale_crm_view.xml +++ b/addons/sale_crm/sale_crm_view.xml @@ -24,7 +24,7 @@ - + diff --git a/addons/sale_crm/wizard/crm_make_sale.py b/addons/sale_crm/wizard/crm_make_sale.py index 823d8d6ab07..83d7a0a7783 100644 --- a/addons/sale_crm/wizard/crm_make_sale.py +++ b/addons/sale_crm/wizard/crm_make_sale.py @@ -86,11 +86,11 @@ class crm_make_sale(osv.osv_memory): pricelist = partner.property_product_pricelist.id if False in partner_addr.values(): raise osv.except_osv(_('Data Insufficient!'), _('Customer has no addresses defined!')) - + vals = { 'origin': _('Opportunity: %s') % str(case.id), 'section_id': case.section_id and case.section_id.id or False, - 'categ_id': case.categ_id and case.categ_id.id or False, + 'categ_ids': [(6, 0, [categ_id.id for categ_id in case.categ_ids])], 'shop_id': make.shop_id.id, 'partner_id': partner.id, 'pricelist_id': pricelist,