Repository
odoo/odoo · module folder
Module version
1.0
Category
Sales/Sales
Folder size
0.36 MB
License
LGPL-3
Application
No
Auto-installable
Yes
Website
None
Last tracking update
2026-08-15 22:44:21
Authors
Odoo S.A.
Maintainers
Odoo S.A.
Committers
Raphael Collet, Odoo Translation Bot, Julien Castiaux, Victor Feyens, Andrea Grazioso (agr-odoo), Tiffany Chang (tic), Gorash, Mathieu Duckerts-Antoine, Victor Piryns (pivi), Thomas Becquevort (thbe), Dylan Kiss (dyki), Julien Alardot (jual), yosa-odoo, kcv-odoo, hatr-odoo, Léo Gizard, Logan Staelens, Mohammad Abdulmoneim (abdu), Michaël Mattiello, Corentin Lombard, Krzysztof Magusiak (krma), Harrison Hutton, Abo Taha
Odoo dependencies
Python dependencies
None
System dependencies
None
Required by
project_sale_expense, sale_expense_margin, spreadsheet_dashboard_hr_expense
Description
Reinvoice Employee Expense
==========================

Create some products for which you can re-invoice the costs.
This module allow to reinvoice employee expense, by setting the SO directly on the expense.

Code Analysis

Views touched (7)
XML IDNameModelTypeStatus
hr_expense_form_view_inherit_sale_expense hr.expense.form.inherit.sale.expense hr.expense form Inherits hr_expense.hr_expense_view_form
hr_expense_split_view_inherit_sale_expense hr.expense.split.view.inherit.sale.expense hr.expense.split.wizard Inherits hr_expense.hr_expense_split
hr_expense_tree_view_inherit_sale_expense hr.expense.list.inherit.sale.expense hr.expense list Inherits hr_expense.view_expenses_tree
product_product_view_form_inherit_sale_expense product.template.expense product.product form Inherits hr_expense.product_product_expense_form_view
product_product_view_list_inherit_sale_expense product.product.view.list.inherit.sale.expense product.product list Inherits hr_expense.product_product_expense_categories_tree_view
sale_order_form_view_inherit sale.order.form.inherit.sale.expense sale.order form Inherits sale.view_order_form
sale_order_reinvoice_tree_view sale.order.list.reinvoice.expense sale.order list Inherits sale.sale_order_tree
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (7)

New fields (0)

No new fields.

Public methods (2)
  • button_draft(self)
  • unlink(self)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (3)
  • can_be_reinvoiced Boolean
    compute='_compute_can_be_reinvoiced' args: 'Can be reinvoiced'
  • sale_order_id Many2one → sale.order
    check_company=True compute='_compute_sale_order_id' domain="[('state', '=', 'sale')]" help='If the category has an expense policy, it will be reinvoiced on this sales order' index='btree_not_null' readonly=False store=True string='Customer to Reinvoice' tracking=True args: 'sale.order'
  • sale_order_line_id Many2one → sale.order.line
    comodel_name='sale.order.line' compute='_compute_sale_order_id' index='btree_not_null' readonly=True store=True
Public methods (2)
  • action_open_sale_order(self)
  • action_post(self)

New fields (2)
  • can_be_reinvoiced Boolean
    compute='_compute_can_be_reinvoiced' args: 'Can be reinvoiced'
  • sale_order_id Many2one → sale.order
    compute='_compute_sale_order_id' domain="[('state', '=', 'sale'), ('company_id', '=', company_id)]" readonly=False store=True string='Customer to Reinvoice' args: 'sale.order'
Public methods (0)

No public methods.

New fields (1)
  • expense_policy_tooltip Char
    compute='_compute_expense_policy_tooltip'
Public methods (0)

No public methods.

New fields (2)
  • expense_count Integer
    compute='_compute_expense_count' compute_sudo=True args: '# of Expenses'
  • expense_ids One2many → hr.expense
    comodel_name='hr.expense' domain=[('state', 'in', ('posted', 'in_payment', 'paid'))] inverse_name='sale_order_id' readonly=True string='Expenses'
Public methods (0)

No public methods.

New fields (1)
  • expense_ids One2many → hr.expense
    comodel_name='hr.expense' inverse_name='sale_order_line_id' readonly=True string='Expenses'
Public methods (0)

No public methods.

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…