TIP: You can type at any time to perform a new search.
Sales Expense
sale_expense · odoo/odoo
- 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 ID | Name | Model | Type | Status |
|---|---|---|---|---|
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_reinvoicedBooleancompute='_compute_can_be_reinvoiced' args: 'Can be reinvoiced' -
sale_order_idMany2one → sale.ordercheck_company=Truecompute='_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=Falsestore=Truestring='Customer to Reinvoice'tracking=True args: 'sale.order' -
sale_order_line_idMany2one → sale.order.linecomodel_name='sale.order.line'compute='_compute_sale_order_id'index='btree_not_null'readonly=Truestore=True
-
action_open_sale_order(self) -
action_post(self)
New fields (2)
-
can_be_reinvoicedBooleancompute='_compute_can_be_reinvoiced' args: 'Can be reinvoiced' -
sale_order_idMany2one → sale.ordercompute='_compute_sale_order_id'domain="[('state', '=', 'sale'), ('company_id', '=', company_id)]"readonly=Falsestore=Truestring='Customer to Reinvoice' args: 'sale.order'
No public methods.
New fields (1)
-
expense_policy_tooltipCharcompute='_compute_expense_policy_tooltip'
No public methods.
New fields (2)
-
expense_countIntegercompute='_compute_expense_count'compute_sudo=True args: '# of Expenses' -
expense_idsOne2many → hr.expensecomodel_name='hr.expense'domain=[('state', 'in', ('posted', 'in_payment', 'paid'))]inverse_name='sale_order_id'readonly=Truestring='Expenses'
No public methods.
New fields (1)
-
expense_idsOne2many → hr.expensecomodel_name='hr.expense'inverse_name='sale_order_line_id'readonly=Truestring='Expenses'
No public methods.
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…