[IMP]: Improve SQL view report for crm phonecalls. Add fields in Extended Option of search view.
bzr revid: rch_open_erp-20100426134414-44oq5wfkhs8y7jc1
This commit is contained in:
@@ -21,6 +21,7 @@
|
||||
|
||||
from osv import fields,osv
|
||||
import tools
|
||||
import crm_report
|
||||
|
||||
class crm_phonecall_report(osv.osv):
|
||||
""" Phone calls by user and section """
|
||||
@@ -37,6 +38,10 @@ class crm_phonecall_report(osv.osv):
|
||||
('object_id.model', '=', 'crm.phonecall')]"),
|
||||
'partner_id': fields.many2one('res.partner', 'Partner' , readonly=True),
|
||||
'company_id': fields.many2one('res.company', 'Company', readonly=True),
|
||||
'priority': fields.selection(crm_report.AVAILABLE_PRIORITIES, 'Priority'),
|
||||
'date_closed': fields.datetime('Closed', readonly=True),
|
||||
'opportunity_id': fields.many2one ('crm.opportunity', 'Opportunity'),
|
||||
'canal_id': fields.many2one('res.partner.canal','Channel',domain="[('section_id','=',section_id),('object_id.model', '=', 'crm.phonecall')]")
|
||||
}
|
||||
|
||||
def init(self, cr):
|
||||
@@ -63,6 +68,10 @@ class crm_phonecall_report(osv.osv):
|
||||
0 as avg_answers,
|
||||
0.0 as perc_done,
|
||||
0.0 as perc_cancel,
|
||||
c.priority as priority,
|
||||
c.date_closed as date_closed,
|
||||
c.opportunity_id as opportunity_id,
|
||||
c.canal_id as canal_id,
|
||||
date_trunc('day',c.create_date) as create_date,
|
||||
avg(extract('epoch' from (c.date_closed-c.create_date)))/(3600*24) as delay_close
|
||||
from
|
||||
@@ -70,6 +79,7 @@ class crm_phonecall_report(osv.osv):
|
||||
group by to_char(c.create_date, 'YYYY'), to_char(c.create_date, 'MM'),\
|
||||
c.state, c.user_id,c.section_id, c.categ_id,c.partner_id,c.company_id
|
||||
,to_char(c.create_date, 'YYYY-MM-DD'),c.create_date
|
||||
,c.priority,c.date_closed,opportunity_id,canal_id
|
||||
)""")
|
||||
|
||||
crm_phonecall_report()
|
||||
|
||||
@@ -21,6 +21,10 @@
|
||||
<field name="state" invisible="1"/>
|
||||
<field name="categ_id" invisible="1"/>
|
||||
<field name="day" invisible="1"/>
|
||||
<field name="priority" invisible="1"/>
|
||||
<field name="date_closed" invisible="1"/>
|
||||
<field name="opportunity_id" invisible="1"/>
|
||||
<field name="canal_id" invisible="1"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
@@ -70,8 +74,25 @@
|
||||
<group>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="categ_id" widget="selection" domain="[('object_id.model', '=', 'crm.phonecall')]"/>
|
||||
<field name="priority" />
|
||||
<separator orientation="vertical"/>
|
||||
<field name="opportunity_id"/>
|
||||
<field name="canal_id" widget="selection" />
|
||||
<newline/>
|
||||
<field name="date_closed"/>
|
||||
</group>
|
||||
</xpath>
|
||||
<xpath
|
||||
expr='//search[@string="Search"]/group[@string="Group By..."]/filter[@string="Category"]'
|
||||
position='after'>
|
||||
<filter string="Priority" icon="terp-sale" domain="[]"
|
||||
context="{'group_by':'priority'}" />
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Oppertunities" icon="terp-sale" domain="[]"
|
||||
context="{'group_by':'opportunity_id'}" />
|
||||
<filter string="Channel" icon="terp-sale" domain="[]"
|
||||
context="{'group_by':'canal_id'}" />
|
||||
</xpath>
|
||||
</data>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
Reference in New Issue
Block a user