Report overall field added
This commit is contained in:
parent
407c7426ca
commit
6380d8c25d
|
@ -36,8 +36,17 @@ class ProjectRevenueCustomReport(models.Model):
|
|||
budgeted_revenue = fields.Float("Budgeted Revenue", digits=(16, 2), readonly=True, group_operator="sum")
|
||||
actual_revenue = fields.Float("Actual Revenue", digits=(16, 2), readonly=True, group_operator="sum")
|
||||
actual_cost = fields.Float("Actual Cost", digits=(16, 2), readonly=True, group_operator="sum")
|
||||
overall_budgeted_revenue = fields.Float("Overall Budgeted Rev.", digits=(16, 2), readonly=True, group_operator="sum")
|
||||
overall_hourly_rate = fields.Float("Overall Hourly Rate", group_operator="sum")
|
||||
|
||||
|
||||
"""def read_group(self, domain, fields, groupby, offset=0, limit=None, orderby=False, lazy=True):
|
||||
if 'pro_hourly_rate' in fields:
|
||||
print("fields", fields)
|
||||
#fields.remove('pro_hourly_rate')
|
||||
res = super().read_group(domain, fields, groupby, offset=offset, limit=limit, orderby=orderby, lazy=lazy)
|
||||
return res"""
|
||||
|
||||
def init(self):
|
||||
'''Create the view'''
|
||||
tools.drop_view_if_exists(self._cr, self._table)
|
||||
|
@ -49,10 +58,12 @@ class ProjectRevenueCustomReport(models.Model):
|
|||
project_type,
|
||||
pricing_type,
|
||||
employee_id,
|
||||
overall_budgeted_revenue,
|
||||
partner_id,
|
||||
budgeted_revenue,
|
||||
budgeted_hours,
|
||||
pro_hourly_rate,
|
||||
overall_hourly_rate,
|
||||
actual_revenue,
|
||||
actual_cost,
|
||||
expenses_amt,
|
||||
|
@ -68,9 +79,11 @@ class ProjectRevenueCustomReport(models.Model):
|
|||
pro.project_type AS project_type,
|
||||
pro.pricing_type as pricing_type,
|
||||
AAL.employee_id AS employee_id,
|
||||
0.0 AS overall_budgeted_revenue,
|
||||
0.0 AS budgeted_revenue,
|
||||
0.0 AS budgeted_hours,
|
||||
0.0 AS pro_hourly_rate,
|
||||
0.0 AS overall_hourly_rate,
|
||||
0.0 AS actual_revenue,
|
||||
(AAL.amount * -1) AS actual_cost,
|
||||
0.0 AS expenses_amt,
|
||||
|
@ -91,9 +104,11 @@ class ProjectRevenueCustomReport(models.Model):
|
|||
pro.project_type AS project_type,
|
||||
pro.pricing_type as pricing_type,
|
||||
null::int AS employee_id,
|
||||
0.0 AS overall_budgeted_revenue,
|
||||
pro.budgeted_revenue AS budgeted_revenue,
|
||||
pro.budgeted_hours2 AS budgeted_hours,
|
||||
pro.hourly_rate AS pro_hourly_rate,
|
||||
0.0 AS overall_hourly_rate,
|
||||
0.0 AS actual_revenue,
|
||||
0.0 AS actual_cost,
|
||||
pro.expenses_amt AS expenses_amt,
|
||||
|
@ -112,9 +127,11 @@ class ProjectRevenueCustomReport(models.Model):
|
|||
pro.project_type AS project_type,
|
||||
pro.pricing_type as pricing_type,
|
||||
AAL.employee_id AS employee_id,
|
||||
0.0 AS overall_budgeted_revenue,
|
||||
0.0 AS budgeted_revenue,
|
||||
0.0 AS budgeted_hours,
|
||||
0.0 AS pro_hourly_rate,
|
||||
0.0 AS overall_hourly_rate,
|
||||
(AAL.unit_amount * pro.hourly_rate) AS actual_revenue,
|
||||
(AAL.amount * -1) AS actual_cost,
|
||||
0.0 AS expenses_amt,
|
||||
|
@ -135,9 +152,11 @@ class ProjectRevenueCustomReport(models.Model):
|
|||
pro.project_type AS project_type,
|
||||
pro.pricing_type as pricing_type,
|
||||
pro_emp.employee_id AS employee_id,
|
||||
0.0 AS overall_budgeted_revenue,
|
||||
pro_emp.cost AS budgeted_revenue,
|
||||
pro_emp.budgeted_qty AS budgeted_hours,
|
||||
COALESCE(pro_emp.price_unit, 0) as pro_hourly_rate,
|
||||
0.0 AS overall_hourly_rate,
|
||||
0.0 AS actual_revenue,
|
||||
0.0 AS actual_cost,
|
||||
0.0 AS expenses_amt,
|
||||
|
@ -159,9 +178,11 @@ class ProjectRevenueCustomReport(models.Model):
|
|||
pro.project_type AS project_type,
|
||||
pro.pricing_type as pricing_type,
|
||||
null::int AS employee_id,
|
||||
0.0 as pro_hourly_rate,
|
||||
pro.budgeted_revenue AS overall_budgeted_revenue,
|
||||
0.0 AS budgeted_revenue,
|
||||
0.0 AS budgeted_hours,
|
||||
0.0 as pro_hourly_rate,
|
||||
pro.hourly_rate AS overall_hourly_rate,
|
||||
0.0 AS actual_revenue,
|
||||
0.0 AS actual_cost,
|
||||
pro.expenses_amt AS expenses_amt,
|
||||
|
@ -180,9 +201,11 @@ class ProjectRevenueCustomReport(models.Model):
|
|||
pro.project_type AS project_type,
|
||||
pro.pricing_type as pricing_type,
|
||||
AAL.employee_id AS employee_id,
|
||||
0.0 AS pro_hourly_rate,
|
||||
0.0 AS overall_budgeted_revenue,
|
||||
0.0 AS budgeted_revenue,
|
||||
0.0 AS budgeted_hours,
|
||||
0.0 AS pro_hourly_rate,
|
||||
0.0 AS overall_hourly_rate,
|
||||
(AAL.unit_amount * pro_emp.price_unit) AS actual_revenue,
|
||||
case when pro_emp.employee_price is null then (AAL.amount * -1) else (AAL.unit_amount * pro_emp.employee_price) end as actual_cost,
|
||||
0.0 AS expenses_amt,
|
||||
|
|
|
@ -7,10 +7,12 @@
|
|||
<field name="arch" type="xml">
|
||||
<pivot string="Revenue Analysis" disable_linking="True" sample="1">
|
||||
<field name="project_id" type="row"/>
|
||||
<field name="overall_budgeted_revenue" type="measure"/>
|
||||
<field name="budgeted_revenue" type="measure"/>
|
||||
<field name="actual_revenue" type="measure"/>
|
||||
<field name="actual_cost" type="measure"/>
|
||||
<field name="budgeted_hours" type="measure"/>
|
||||
<field name="overall_hourly_rate" type="measure"/>
|
||||
<field name="pro_hourly_rate" type="measure"/>
|
||||
<field name="expenses_amt" type="measure"/>
|
||||
<field name="profit_amt" type="measure"/>
|
||||
|
|
Loading…
Reference in New Issue