diff --git a/addons/crm_claim/report/crm_claim_report.py b/addons/crm_claim/report/crm_claim_report.py index 5be9d3c163b..18c6d16ed53 100644 --- a/addons/crm_claim/report/crm_claim_report.py +++ b/addons/crm_claim/report/crm_claim_report.py @@ -45,42 +45,6 @@ class crm_claim_report(osv.osv): _name = "crm.claim.report" _auto = False _description = "CRM Claim Report" - - def _get_data(self, cr, uid, ids, field_name, arg, context={}): - - """ @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of case and section Data’s IDs - @param context: A standard dictionary for contextual values """ - - res = {} - state_perc = 0.0 - avg_ans = 0.0 - - for case in self.browse(cr, uid, ids, context): - if field_name != 'avg_answers': - state = field_name[5:] - cr.execute("select count(*) from crm_opportunity where \ - section_id =%s and state='%s'"%(case.section_id.id, state)) - state_cases = cr.fetchone()[0] - perc_state = (state_cases / float(case.nbr)) * 100 - - res[case.id] = perc_state - else: - model_name = self._name.split('report.') - if len(model_name) < 2: - res[case.id] = 0.0 - else: - model_name = model_name[1] - - cr.execute("select count(*) from crm_case_log l, ir_model m \ - where l.model_id=m.id and m.model = '%s'" , model_name) - logs = cr.fetchone()[0] - - avg_ans = logs / case.nbr - res[case.id] = avg_ans - - return res _columns = { 'name': fields.char('Year', size=64, required=False, readonly=True), @@ -88,9 +52,6 @@ class crm_claim_report(osv.osv): 'section_id':fields.many2one('crm.case.section', 'Section', readonly=True), 'nbr': fields.integer('# of Cases', readonly=True), 'state': fields.selection(AVAILABLE_STATES, 'State', size=16, readonly=True), - 'avg_answers': fields.function(_get_data, string='Avg. Answers', method=True, type="integer"), - 'perc_done': fields.function(_get_data, string='%Done', method=True, type="float"), - 'perc_cancel': fields.function(_get_data, string='%Cancel', method=True, type="float"), 'month':fields.selection([('01', 'January'), ('02', 'February'), \ ('03', 'March'), ('04', 'April'),\ ('05', 'May'), ('06', 'June'), \ @@ -137,9 +98,6 @@ class crm_claim_report(osv.osv): c.company_id, c.categ_id, count(*) as nbr, - 0 as avg_answers, - 0.0 as perc_done, - 0.0 as perc_cancel, c.priority as priority, c.type_id as type_id, date_trunc('day',c.create_date) as create_date, diff --git a/addons/crm_fundraising/report/crm_fundraising_report.py b/addons/crm_fundraising/report/crm_fundraising_report.py index 5c19689257c..8ab9e0f94be 100644 --- a/addons/crm_fundraising/report/crm_fundraising_report.py +++ b/addons/crm_fundraising/report/crm_fundraising_report.py @@ -36,42 +36,6 @@ class crm_fundraising_report(osv.osv): _name = "crm.fundraising.report" _auto = False _description = "CRM Fundraising Report" - - def _get_data(self, cr, uid, ids, field_name, arg, context={}): - - """ @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of case and section Data’s IDs - @param context: A standard dictionary for contextual values """ - - res = {} - state_perc = 0.0 - avg_ans = 0.0 - - for case in self.browse(cr, uid, ids, context): - if field_name != 'avg_answers': - state = field_name[5:] - cr.execute("select count(*) from crm_opportunity where \ - section_id =%s and state='%s'"%(case.section_id.id, state)) - state_cases = cr.fetchone()[0] - perc_state = (state_cases / float(case.nbr)) * 100 - - res[case.id] = perc_state - else: - model_name = self._name.split('report.') - if len(model_name) < 2: - res[case.id] = 0.0 - else: - model_name = model_name[1] - - cr.execute("select count(*) from crm_case_log l, ir_model m \ - where l.model_id=m.id and m.model = '%s'" , model_name) - logs = cr.fetchone()[0] - - avg_ans = logs / case.nbr - res[case.id] = avg_ans - - return res _columns = { 'name': fields.char('Year', size=64, required=False, readonly=True), @@ -79,9 +43,6 @@ class crm_fundraising_report(osv.osv): 'section_id':fields.many2one('crm.case.section', 'Section', readonly=True), 'nbr': fields.integer('# of Cases', readonly=True), 'state': fields.selection(AVAILABLE_STATES, 'State', size=16, readonly=True), - 'avg_answers': fields.function(_get_data, string='Avg. Answers', method=True, type="integer"), - 'perc_done': fields.function(_get_data, string='%Done', method=True, type="float"), - 'perc_cancel': fields.function(_get_data, string='%Cancel', method=True, type="float"), 'month':fields.selection([('01', 'January'), ('02', 'February'), \ ('03', 'March'), ('04', 'April'),\ ('05', 'May'), ('06', 'June'), \ @@ -123,9 +84,6 @@ class crm_fundraising_report(osv.osv): c.company_id, c.partner_id, count(*) as nbr, - 0 as avg_answers, - 0.0 as perc_done, - 0.0 as perc_cancel, date_trunc('day',c.create_date) as create_date, sum(planned_revenue) as amount_revenue, sum(planned_revenue*probability)::decimal(16,2) as amount_revenue_prob, diff --git a/addons/crm_helpdesk/report/crm_helpdesk_report.py b/addons/crm_helpdesk/report/crm_helpdesk_report.py index cf2578ddfaf..631e03699f2 100644 --- a/addons/crm_helpdesk/report/crm_helpdesk_report.py +++ b/addons/crm_helpdesk/report/crm_helpdesk_report.py @@ -38,51 +38,12 @@ class crm_helpdesk_report(osv.osv): _description = "Helpdesk report after Sales Services" _auto = False - def _get_data(self, cr, uid, ids, field_name, arg, context={}): - - """ @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of case and section Data’s IDs - @param context: A standard dictionary for contextual values """ - - res = {} - state_perc = 0.0 - avg_ans = 0.0 - - for case in self.browse(cr, uid, ids, context): - if field_name != 'avg_answers': - state = field_name[5:] - cr.execute("select count(*) from crm_opportunity where \ - section_id =%s and state='%s'"%(case.section_id.id, state)) - state_cases = cr.fetchone()[0] - perc_state = (state_cases / float(case.nbr)) * 100 - - res[case.id] = perc_state - else: - model_name = self._name.split('report.') - if len(model_name) < 2: - res[case.id] = 0.0 - else: - model_name = model_name[1] - - cr.execute("select count(*) from crm_case_log l, ir_model m \ - where l.model_id=m.id and m.model = '%s'" , model_name) - logs = cr.fetchone()[0] - - avg_ans = logs / case.nbr - res[case.id] = avg_ans - - return res - _columns = { 'name': fields.char('Year', size=64, required=False, readonly=True), 'user_id':fields.many2one('res.users', 'User', readonly=True), 'section_id':fields.many2one('crm.case.section', 'Section', readonly=True), 'nbr': fields.integer('# of Cases', readonly=True), 'state': fields.selection(AVAILABLE_STATES, 'State', size=16, readonly=True), - 'avg_answers': fields.function(_get_data, string='Avg. Answers', method=True, type="integer"), - 'perc_done': fields.function(_get_data, string='%Done', method=True, type="float"), - 'perc_cancel': fields.function(_get_data, string='%Cancel', method=True, type="float"), 'month':fields.selection([('01', 'January'), ('02', 'February'), \ ('03', 'March'), ('04', 'April'),\ ('05', 'May'), ('06', 'June'), \ @@ -122,9 +83,6 @@ class crm_helpdesk_report(osv.osv): c.priority, c.date_deadline, count(*) as nbr, - 0 as avg_answers, - 0.0 as perc_done, - 0.0 as perc_cancel, to_char(avg(date_closed-c.create_date), 'DD"d" HH24:MI:SS') as delay_close from crm_helpdesk c diff --git a/addons/hr_recruitment/report/hr_recruitment_report.py b/addons/hr_recruitment/report/hr_recruitment_report.py index 7c867247cd0..62011b21a04 100644 --- a/addons/hr_recruitment/report/hr_recruitment_report.py +++ b/addons/hr_recruitment/report/hr_recruitment_report.py @@ -50,7 +50,7 @@ class hr_recruitment_report(osv.osv): for case in self.browse(cr, uid, ids, context): if field_name != 'avg_answers': state = field_name[5:] - cr.execute("select count(*) from crm_opportunity where \ + cr.execute("select count(*) from crm_lead where \ section_id =%s and state='%s'"%(case.section_id.id, state)) state_cases = cr.fetchone()[0] perc_state = (state_cases / float(case.nbr)) * 100