[FIX] sale_timesheet: cost with different UOM
- Create a Service article: UoM = Day(s) Invoicing policy = on ordered quantity Tracking = Task in project - Create a SO: 10 days, unit price = $100 and validate. - On the task created, the initially planned hours is equal to 80 (10 * 8h). - On this task, timesheet some hours with several employees: 15 hours 10 hours 10 hours The `timesheet_revenue` on analytic lines is incorrect: 1000 0 0 It should be: 187.5 125 125 The unit conversion between days and hours is not performed... opw-1925320 closes odoo/odoo#31062
This commit is contained in:
@@ -134,7 +134,7 @@ class AccountAnalyticLine(models.Model):
|
||||
total_revenue_invoiced = sum(analytic_lines.mapped('timesheet_revenue'))
|
||||
# compute (new) revenue of current timesheet line
|
||||
values['timesheet_revenue'] = min(
|
||||
analytic_account.currency_id.round(unit_amount * so_line.currency_id.compute(so_line.price_unit, analytic_account.currency_id) * (1-so_line.discount)),
|
||||
analytic_account.currency_id.round(unit_amount * sale_price * (1-so_line.discount/100)),
|
||||
total_revenue_so - total_revenue_invoiced
|
||||
)
|
||||
values['timesheet_invoice_type'] = 'billable_fixed'
|
||||
|
||||
Reference in New Issue
Block a user