Skip to Content
Odoo model

account.analytic.line

Analytic Line. Defined in module analytic; exists in Odoo 16, 17, 18, 19, 20. Across the upgrade steps we tracked: 26 fields added, 13 removed, 0 renamed.

  1. Odoo 16 analytic
  2. Odoo 17 analytic
  3. Odoo 18 analytic
  4. Odoo 19 analytic
  5. Odoo 20 analytic

Odoo 16 to 17

Community only All changes in this step

Fields removed (2)

FieldTypeModuleNotes
ancestor_task_idmany2onehr_timesheet
plan_idmany2oneanalytic

Fields added (5)

FieldTypeModule
allow_billablebooleansale_timesheet
allowed_so_line_idsmany2manysale
auto_account_idmany2oneanalytic
parent_task_idmany2onehr_timesheet
readonly_timesheetbooleanhr_timesheet
1 views of this model removed
  • account.view_account_analytic_line_filter_inherit

Odoo 17 to 18

Community only All changes in this step

Fields removed (3)

FieldTypeModuleNotes
allowed_so_line_idsmany2manysale
l10n_din5008_document_titlecharl10n_din5008
l10n_din5008_template_databinaryl10n_din5008

Fields added (7)

FieldTypeModule
analytic_distributionjsonanalytic
analytic_precisionintegeranalytic
analytic_profitabilityselectionaccount
message_partner_idsmany2manyhr_timesheet
milestone_idmany2onehr_timesheet
product_categorymany2oneaccount
sale_order_stateselectionsale_timesheet

Now also inherits analytic.plan.fields.mixin (fields from these parents are listed on their own pages).

Odoo 18 to 19

Community + Enterprise All changes in this step

Fields removed (5)

FieldTypeModuleNotes
duration_unit_amountfloattimesheet_grid
is_timesheetbooleantimesheet_grid
product_uom_category_idmany2oneanalytic
slot_idmany2oneproject_timesheet_forecast
unit_amount_validatefloattimesheet_grid

Fields added (3)

FieldTypeModule
calendar_display_namecharhr_timesheet
fiscal_year_searchbooleananalytic
is_hatchedbooleantimesheet_grid

Odoo 19 to 20

Community + Enterprise All changes in this step

Fields removed (3)

FieldTypeModuleNotes
display_timerbooleantimesheet_grid
timesheet_invoice_idmany2onesale_timesheet
timesheet_invoice_typeselectionsale_timesheet

Fields added (11)

FieldTypeModule
allowed_uom_idsmany2manyaccount
billable_typeselectionsale_project
category_reportselectionsale_project
colorintegerhr_timesheet
has_available_sobooleansale_timesheet_enterprise
has_billable_helpdesk_teambooleanhelpdesk_sale_timesheet
is_billablebooleansale_timesheet_enterprise
is_billable_selectselectionsale_timesheet_enterprise
planning_slot_idmany2oneplanning_field_service_sale_timesheet
reinvoice_move_idmany2onesale
sequenceintegerhr_timesheet

No longer inherits timer.mixin.

8 views of this model removed
  • helpdesk_timesheet.hr_timesheet_line_search_inherit_helpdesk_timesheet
  • helpdesk_timesheet.hr_timesheet_line_tree_inherit_helpdesk_timesheet
  • industry_fsm.timesheet_view_form
  • industry_fsm.timesheet_view_tree_user_inherit
  • project_account.project_view_account_analytic_line_graph
  • project_account.project_view_account_analytic_line_pivot
  • sale_timesheet.view_hr_timesheet_line_graph_invoice_employee
  • sale_timesheet_enterprise.timesheet_view_grid_by_invoice_type

All fields declared on account.analytic.line (76)

Fields this model declares itself in any version, with the versions they exist in. Inherited fields (mail.thread and other mixins) are on the parent model's page.

present not present not covered (Enterprise, Odoo 16 and 17)

Show all 76 fields
FieldTypeLabelModule1617181920
account_idmany2one account.analytic.accountProject Accountanalytic
allow_billablebooleansale_timesheet
allowed_so_line_idsmany2many sale.order.linesale
allowed_uom_idsmany2many uom.uomaccount
amountmonetaryAmountanalytic
analytic_coveragefloatAnalytic Coverageaccount_reportsE
analytic_distributionjsonAnalytic Distributionanalytic
analytic_precisionintegeranalytic
analytic_profitabilityselectionProfitabilityaccount
ancestor_task_idmany2one project.taskhr_timesheet
auto_account_idmany2one account.analytic.accountAnalytic Accountanalytic
billable_typeselectionBillable Typesale_project
calendar_display_namecharhr_timesheet
categoryselectionanalytic
category_reportselectionsale_project
codecharaccount
colorintegerhr_timesheet
commercial_partner_idmany2one res.partnersale_timesheet
company_idmany2one res.companyCompanyanalytic
currency_idmany2oneCurrencyanalytic
datedateDateanalytic
department_idmany2one hr.departmentDepartmenthr_timesheet
display_solbooleanhelpdesk_sale_timesheetE
display_taskbooleanhelpdesk_timesheetE
display_timerbooleanTechnical field used to display the timer if the encoding unit is 'Hours'.timesheet_gridE
duration_unit_amountfloatTimesheet Init Amounttimesheet_gridE
employee_idmany2one hr.employeeEmployeehr_timesheet
encoding_uom_idmany2one uom.uomhr_timesheet
general_account_idmany2one account.accountFinancial Accountaccount
global_leave_idmany2one resource.calendar.leavesGlobal Time Offproject_timesheet_holidays
has_available_sobooleansale_timesheet_enterpriseE
has_billable_helpdesk_teambooleanhelpdesk_sale_timesheetE
has_helpdesk_teambooleanhelpdesk_timesheetE
helpdesk_ticket_idmany2one helpdesk.ticketTickethelpdesk_timesheetE
holiday_idmany2one hr.leaveTime Off Requestproject_timesheet_holidays
is_billablebooleansale_timesheet_enterpriseE
is_billable_selectselectionsale_timesheet_enterpriseE
is_hatchedbooleantimesheet_gridE
is_so_line_editedbooleanIs Sales Order Item Manually Editedsale_timesheet
is_timesheetbooleanTimesheet Linetimesheet_gridE
job_titlecharhr_timesheet
journal_idmany2one account.journalFinancial Journalaccount
l10n_din5008_document_titlecharl10n_din5008
l10n_din5008_template_databinaryl10n_din5008
manager_idmany2one hr.employeeManagerhr_timesheet
message_partner_idsmany2many res.partnerhr_timesheet
milestone_idmany2one project.milestonehr_timesheet
move_line_idmany2one account.move.lineJournal Itemaccount
namecharDescriptionanalytic
order_idmany2one sale.orderCustomer Ordersale
parent_task_idmany2one project.taskhr_timesheet
partner_idmany2one res.partnerPartneranalytic
plan_idmany2one account.analytic.plananalytic
planning_slot_idmany2one planning.slotInterventionplanning_field_service_sale_timesheetE
product_categorymany2oneaccount
product_idmany2one product.productProductaccount
product_uom_category_idmany2oneUoM Categoryanalytic
product_uom_idmany2one uom.uomUnitanalytic
project_idmany2one project.projectProjecthr_timesheet
readonly_timesheetbooleanReadonly Timesheethr_timesheet
refcharRef.account
reinvoice_move_idmany2one account.moveInvoicesale
sale_order_stateselectionsale_timesheet
sequenceintegerSequencehr_timesheet
slot_idmany2one planning.slotPlanning Shiftproject_timesheet_forecastE
so_linemany2one sale.order.lineSales Order Itemsale
task_idmany2one project.taskTaskhr_timesheet
timesheet_invoice_idmany2one account.moveInvoicesale_timesheet
timesheet_invoice_typeselectionBillable Typesale_timesheet
unit_amountfloatQuantityanalytic
unit_amount_validatefloatTimesheet Unit Timetimesheet_gridE
user_can_validatebooleantimesheet_gridE
user_idmany2one res.usersUseranalytic
validatedbooleanValidated linetimesheet_gridE
validated_statusselectiontimesheet_gridE
Coverage. Odoo 16 to 17 and 17 to 18 compare Community modules only (the Enterprise 16 and 17 sources are not available to us). Odoo 18 to 19 and 19 to 20 include Community and Enterprise modules. Everything here comes from a static read of the Odoo source code: a field counts as removed only when no parent model, mixin or delegated model still provides it. Fields created dynamically at run time can be missed, and entries we could not confirm are marked as low confidence.