diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index 5de205e1690..6d6f7b29991 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -362,7 +362,7 @@
Here you can customize an existing journal view or create a new view. Journal views determine the way you can record entries in your journal. Select the fields you want to appear in a journal and determine the sequence in which they will appear. Then you can create a new journal and link your view to it.
-
+
diff --git a/addons/base_iban/__openerp__.py b/addons/base_iban/__openerp__.py
index 4cbef04a204..370ca6c93f2 100644
--- a/addons/base_iban/__openerp__.py
+++ b/addons/base_iban/__openerp__.py
@@ -31,7 +31,7 @@ The ability to extract the correctly represented local accounts from IBAN accoun
""",
'author': 'OpenERP SA',
'website': 'http://www.openerp.com',
- 'depends': ['account'],
+ 'depends': ['base'],
'init_xml': ['base_iban_data.xml'],
'update_xml': ['base_iban_view.xml'],
'installable': True,
diff --git a/addons/crm/crm.py b/addons/crm/crm.py
index 631410c9d34..16872a7542a 100644
--- a/addons/crm/crm.py
+++ b/addons/crm/crm.py
@@ -44,6 +44,17 @@ AVAILABLE_PRIORITIES = [
('5', 'Lowest'),
]
+class crm_case_channel(osv.osv):
+ _name = "crm.case.channel"
+ _description = "Channels"
+ _order = 'name'
+ _columns = {
+ 'name': fields.char('Channel Name', size=64, required=True),
+ 'active': fields.boolean('Active'),
+ }
+ _defaults = {
+ 'active': lambda *a: 1,
+ }
class crm_case_stage(osv.osv):
""" Stage of case """
diff --git a/addons/crm/crm_data.xml b/addons/crm/crm_data.xml
index e494db325e5..bab3e4bca5f 100644
--- a/addons/crm/crm_data.xml
+++ b/addons/crm/crm_data.xml
@@ -1,6 +1,18 @@
+
+ website
+
+
+ phone
+
+
+ direct
+
+
+ e-mail
+
Sales Department
Sales
diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py
index 77d0998f5ee..4f60412df12 100644
--- a/addons/crm/crm_lead.py
+++ b/addons/crm/crm_lead.py
@@ -142,7 +142,7 @@ class crm_lead(crm_case, osv.osv):
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?"),
- 'channel_id': fields.many2one('res.partner.canal', 'Channel', help="From which channel (mail, direct, phone, ...) did this contact reach you?"),
+ 'channel_id': fields.many2one('crm.case.channel', 'Channel', help="Communication channel (mail, direct, phone, ...)"),
'contact_name': fields.char('Contact Name', size=64),
'partner_name': fields.char("Customer Name", size=64,help='The name of the future partner that will be created while converting the into opportunity', select=1),
'optin': fields.boolean('Opt-In', help="If opt-in is checked, this contact has accepted to receive emails."),
diff --git a/addons/crm/crm_phonecall.py b/addons/crm/crm_phonecall.py
index a5ac0731ea5..d5d7d6c5614 100644
--- a/addons/crm/crm_phonecall.py
+++ b/addons/crm/crm_phonecall.py
@@ -71,11 +71,6 @@ class crm_phonecall(crm_base, osv.osv):
type="char", string="Contact", size=128),
'partner_mobile': fields.char('Mobile', size=32),
'priority': fields.selection(crm.AVAILABLE_PRIORITIES, 'Priority'),
- 'canal_id': fields.many2one('res.partner.canal', 'Channel', \
- help="The channels represent the different communication\
- modes available with the customer." \
- " With each commercial opportunity, you can indicate\
- the channel it came through."),
'date_closed': fields.datetime('Closed', readonly=True),
'date': fields.datetime('Date'),
'opportunity_id': fields.many2one ('crm.lead', 'Lead/Opportunity'),
diff --git a/addons/crm/crm_view.xml b/addons/crm/crm_view.xml
index 4161eaa88e2..09dc926e69f 100644
--- a/addons/crm/crm_view.xml
+++ b/addons/crm/crm_view.xml
@@ -7,7 +7,7 @@
-
+
@@ -21,6 +21,39 @@
parent="base.menu_base_partner" sequence="11" />
+
+
+ crm.case.channel.tree
+ crm.case.channel
+ tree
+
+
+
+
+
+
+
+
+ crm.case.channel.form
+ crm.case.channel
+ form
+
+
+
+
+
+ Channels
+ crm.case.channel
+ form
+ tree,form
+ Track from where is coming your leads and opportunities by creating specific channels that will be maintained at the creation of a document in the system. Some examples of channels can be: Website, Phone Call, Reseller, etc.
+
+
+
+
diff --git a/addons/crm/report/crm_lead_report.py b/addons/crm/report/crm_lead_report.py
index 12a6ef7a762..18615bdf344 100644
--- a/addons/crm/report/crm_lead_report.py
+++ b/addons/crm/report/crm_lead_report.py
@@ -57,7 +57,7 @@ class crm_lead_report(osv.osv):
'user_id':fields.many2one('res.users', 'User', readonly=True),
'country_id':fields.many2one('res.country', 'Country', readonly=True),
'section_id':fields.many2one('crm.case.section', 'Sales Team', readonly=True),
- 'channel_id':fields.many2one('res.partner.canal', 'Channel', readonly=True),
+ 'channel_id':fields.many2one('crm.case.channel', 'Channel', readonly=True),
'type_id':fields.many2one('crm.case.resource.type', 'Campaign', readonly=True),
'state': fields.selection(AVAILABLE_STATES, 'State', size=16, readonly=True),
'creation_month':fields.selection(MONTHS, 'Creation Date', readonly=True),
diff --git a/addons/crm/security/ir.model.access.csv b/addons/crm/security/ir.model.access.csv
index 0ccbaa257d1..6b0a3ac15a9 100644
--- a/addons/crm/security/ir.model.access.csv
+++ b/addons/crm/security/ir.model.access.csv
@@ -3,6 +3,8 @@
"access_crm_segmentation_line_user","crm.segmentation.line user","model_crm_segmentation_line","base.group_sale_salesman",1,0,0,0
"access_crm_segmentation","crm.segmentation","model_crm_segmentation","base.group_sale_manager",1,1,1,1
"access_crm_segmentation_line","crm.segmentation.line","model_crm_segmentation_line","base.group_sale_manager",1,1,1,1
+"access_crm_case_channel_user","crm.case.channel user","model_crm_case_channel","base.group_sale_salesman",1,0,0,0
+"access_crm_case_channel_manager","crm.case.channel manager","model_crm_case_channel","base.group_sale_manager",1,1,1,1
"access_crm_case_section","crm.case.section","model_crm_case_section","base.group_sale_salesman",1,1,1,0
"access_crm_case_categ","crm.case.categ","model_crm_case_categ","base.group_sale_salesman",1,1,1,0
"access_crm_meeting_manager","crm.meeting.manager","model_crm_meeting","base.group_sale_manager",1,1,1,1
@@ -41,7 +43,6 @@
"access_crm_lead_report_user","crm.lead.report user","model_crm_lead_report","base.group_sale_salesman",1,1,1,1
"access_res_partner_bank_type_crm_user","res.partner.bank.type.crm.user","base.model_res_partner_bank_type","base.group_sale_salesman",1,0,0,0
"access_res_partner_bank_type_crm_manager","res.partner.bank.type.crm.manager","base.model_res_partner_bank_type","base.group_sale_manager",1,0,0,0
-"access_res_partner_canal_manager","res.partner.canal.manager","base.model_res_partner_canal","base.group_sale_manager",1,1,1,1
"access_crm_lead_partner_manager","crm.lead.partner.manager","model_crm_lead","base.group_partner_manager",1,1,1,1
"access_crm_phonecall_partner_manager","crm.phonecall.partner.manager","model_crm_phonecall","base.group_partner_manager",1,1,1,1
"access_crm_meeting_partner_manager","crm.meeting.partner.manager","model_crm_meeting","base.group_partner_manager",1,1,1,1
diff --git a/addons/crm_fundraising/crm_fundraising.py b/addons/crm_fundraising/crm_fundraising.py
index 46b6c87e8e2..11796a23da5 100644
--- a/addons/crm_fundraising/crm_fundraising.py
+++ b/addons/crm_fundraising/crm_fundraising.py
@@ -70,8 +70,6 @@ class crm_fundraising(crm.crm_case, osv.osv):
'duration': fields.float('Duration'),
'ref': fields.reference('Reference', selection=crm._links_get, size=128),
'ref2': fields.reference('Reference 2', selection=crm._links_get, size=128),
- 'canal_id': fields.many2one('res.partner.canal', 'Channel', \
- help="The channels represent the different communication modes available with the customer."),
'state': fields.selection(crm.AVAILABLE_STATES, 'State', size=16, readonly=True,
help='The state is set to \'Draft\', when a case is created.\
\nIf the case is in progress the state is set to \'Open\'.\
diff --git a/addons/crm_fundraising/crm_fundraising_view.xml b/addons/crm_fundraising/crm_fundraising_view.xml
index f9d8cadcb6f..ecc75507cb9 100644
--- a/addons/crm_fundraising/crm_fundraising_view.xml
+++ b/addons/crm_fundraising/crm_fundraising_view.xml
@@ -186,7 +186,6 @@
-
diff --git a/addons/crm_helpdesk/crm_helpdesk.py b/addons/crm_helpdesk/crm_helpdesk.py
index 4a91ddd5a5e..16904a5decd 100644
--- a/addons/crm_helpdesk/crm_helpdesk.py
+++ b/addons/crm_helpdesk/crm_helpdesk.py
@@ -64,8 +64,7 @@ class crm_helpdesk(crm.crm_case, osv.osv):
'date': fields.datetime('Date'),
'ref' : fields.reference('Reference', selection=crm._links_get, size=128),
'ref2' : fields.reference('Reference 2', selection=crm._links_get, size=128),
- 'canal_id': fields.many2one('res.partner.canal', 'Channel', \
- help="The channels represent the different communication modes available with the customer."),
+ 'channel_id': fields.many2one('crm.case.channel', 'Channel', help="Communication channel."),
'planned_revenue': fields.float('Planned Revenue'),
'planned_cost': fields.float('Planned Costs'),
'priority': fields.selection(crm.AVAILABLE_PRIORITIES, 'Priority'),
diff --git a/addons/crm_helpdesk/crm_helpdesk_demo.xml b/addons/crm_helpdesk/crm_helpdesk_demo.xml
index f48af6b5de3..a7f36c931c9 100644
--- a/addons/crm_helpdesk/crm_helpdesk_demo.xml
+++ b/addons/crm_helpdesk/crm_helpdesk_demo.xml
@@ -2,7 +2,6 @@
-
@@ -15,7 +14,6 @@
-
@@ -28,7 +26,6 @@
-
@@ -41,7 +38,6 @@
-
@@ -54,4 +50,4 @@
-
\ No newline at end of file
+
diff --git a/addons/crm_helpdesk/crm_helpdesk_view.xml b/addons/crm_helpdesk/crm_helpdesk_view.xml
index 87ff3214b86..b0193491003 100644
--- a/addons/crm_helpdesk/crm_helpdesk_view.xml
+++ b/addons/crm_helpdesk/crm_helpdesk_view.xml
@@ -62,7 +62,7 @@
-
+
diff --git a/addons/crm_helpdesk/report/crm_helpdesk_report.py b/addons/crm_helpdesk/report/crm_helpdesk_report.py
index d01f0934e51..80fc07db38d 100644
--- a/addons/crm_helpdesk/report/crm_helpdesk_report.py
+++ b/addons/crm_helpdesk/report/crm_helpdesk_report.py
@@ -56,7 +56,7 @@ class crm_helpdesk_report(osv.osv):
'date_deadline': fields.date('Deadline', select=True),
'priority': fields.selection([('5', 'Lowest'), ('4', 'Low'), \
('3', 'Normal'), ('2', 'High'), ('1', 'Highest')], 'Priority'),
- 'canal_id': fields.many2one('res.partner.canal', 'Channel'),
+ 'channel_id': fields.many2one('crm.case.channel', 'Channel'),
'categ_id': fields.many2one('crm.case.categ', 'Category', \
domain="[('section_id','=',section_id),\
('object_id.model', '=', 'crm.helpdesk')]"),
@@ -93,7 +93,7 @@ class crm_helpdesk_report(osv.osv):
c.priority,
c.date_deadline,
c.categ_id,
- c.canal_id,
+ c.channel_id,
c.planned_cost,
count(*) as nbr,
extract('epoch' from (c.date_closed-c.create_date))/(3600*24) as delay_close,
@@ -104,7 +104,7 @@ class crm_helpdesk_report(osv.osv):
group by to_char(c.date, 'YYYY'), to_char(c.date, 'MM'),to_char(c.date, 'YYYY-MM-DD'),\
c.state, c.user_id,c.section_id,c.priority,\
c.partner_id,c.company_id,c.date_deadline,c.create_date,c.date,c.date_closed,\
- c.categ_id,c.canal_id,c.planned_cost,c.id
+ c.categ_id,c.channel_id,c.planned_cost,c.id
)""")
crm_helpdesk_report()
diff --git a/addons/crm_helpdesk/report/crm_helpdesk_report_view.xml b/addons/crm_helpdesk/report/crm_helpdesk_report_view.xml
index d54b719fe2b..e954c790582 100644
--- a/addons/crm_helpdesk/report/crm_helpdesk_report_view.xml
+++ b/addons/crm_helpdesk/report/crm_helpdesk_report_view.xml
@@ -25,7 +25,7 @@
-
+
@@ -106,9 +106,7 @@
domain="[]"
context="{'group_by':'partner_id'}" />
-
+
diff --git a/addons/hr/hr_view.xml b/addons/hr/hr_view.xml
index 64580a7dbe1..fb10baedc9e 100644
--- a/addons/hr/hr_view.xml
+++ b/addons/hr/hr_view.xml
@@ -284,7 +284,7 @@
+ id="menu_view_employee_category_tree" parent="menu_view_employee_category_configuration_form" sequence="2"/>
hr.job.form
@@ -377,7 +377,7 @@
-
+
diff --git a/addons/hr_recruitment/hr_recruitment_demo.xml b/addons/hr_recruitment/hr_recruitment_demo.xml
index 20a4fa0e17a..b2d029f74d4 100644
--- a/addons/hr_recruitment/hr_recruitment_demo.xml
+++ b/addons/hr_recruitment/hr_recruitment_demo.xml
@@ -25,7 +25,6 @@
-
@@ -45,7 +44,6 @@
-
@@ -115,7 +113,6 @@
-
@@ -136,7 +133,6 @@
-
diff --git a/addons/hr_recruitment/hr_recruitment_menu.xml b/addons/hr_recruitment/hr_recruitment_menu.xml
index 2e941877b65..9883e311fba 100644
--- a/addons/hr_recruitment/hr_recruitment_menu.xml
+++ b/addons/hr_recruitment/hr_recruitment_menu.xml
@@ -46,6 +46,9 @@
name="Applicants"
parent="base.menu_crm_case_job_req_main"
id="menu_crm_case_categ0_act_job" action="crm_case_categ0_act_job" sequence="1"/>
+
+
+
diff --git a/addons/mrp/mrp_view.xml b/addons/mrp/mrp_view.xml
index 5d23608769b..cf76031e9c0 100644
--- a/addons/mrp/mrp_view.xml
+++ b/addons/mrp/mrp_view.xml
@@ -304,7 +304,7 @@
Routings allow you to create and manage the manufacturing operations that should be followed within your work centers in order to produce a product. They are attached to bills of materials that will define the required raw materials.
-
+