Project Timesheets group = env['account.analytic.line'].read_group([ ('account_id', '=', line.analytic_account_id.id), ('product_id', '=', False), ('project_id', '!=', False), ('date', '>=', period_first_date), ('date', '<=', period_last_date), ], fields=['unit_amount'], groupby=[]) result = group and group[0]['unit_amount'] or 0.0 Task Timesheets group = env['account.analytic.line'].read_group([ ('account_id', '=', line.analytic_account_id.id), ('product_id', '=', False), ('task_id', '!=', False), ('date', '>=', period_first_date), ('date', '<=', period_last_date), ], fields=['unit_amount'], groupby=[]) result = group and group[0]['unit_amount'] or 0.0 Analytic Same Product group = env['account.analytic.line'].read_group([ ('account_id', '=', line.analytic_account_id.id), ('product_id', '=', line.product_id.id), ('date', '>=', period_first_date), ('date', '<=', period_last_date), ], fields=['unit_amount'], groupby=[]) result = group and group[0]['unit_amount'] or 0.0