TIP: You can type at any time to perform a new search.
WMS Landed Costs
stock_landed_costs · odoo/odoo
Security findings
- Repository
- odoo/odoo · module folder
- Module version
- 1.1
- Category
- Supply Chain/Inventory
- Folder size
- 2.17 MB
- License
- LGPL-3
- Application
- No
- Auto-installable
- No
- Website
- None
- Last tracking update
- 2026-10-05 00:19:48
- Authors
- Odoo S.A.
- Maintainers
- Odoo S.A.
- Committers
- Raphael Collet, Thibault Delavallée, Odoo Translation Bot, Christophe Matthieu, Arnold Moyaux, Victor Feyens, Adrien Dieudonné, William Henrotin, Tiffany Chang (tic), John Laterre (jol), Victor Piryns (pivi), Dylan Kiss (dyki), Arnaud Sibille, Harsh Shah, Stéphane Diez, Abdo Mongy, chha-odoo, plha-odoo, Krzysztof Magusiak (krma), Yassien Ghoniem, Julien Launois (jula), MohsinAli Masi, Merlin Guillaume, Zachary (zavan), Youssef (abyo), Moamen(msho), Julien Piron
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- l10n_in_boe, mrp_landed_costs, project_stock_landed_costs
- Description
Landed Costs Management ======================= This module allows you to easily add extra costs on pickings and decide the split of these costs among their stock moves in order to take them into account in your stock valuation.
Code Analysis
Views touched (8)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_view_move_form_inherited |
account.view.move.form.inherited | account.move | form | Inherits account.view_move_form |
res_config_settings_view_form |
res.config.settings.view.form.inherit.stock.landed.costs | res.config.settings | form | Inherits stock.res_config_settings_view_form |
stock_landed_cost_view_kanban |
stock.landed.cost.kanban | stock.landed.cost | kanban | New |
view_product_landed_cost_form |
product.template.landed.cost.form | product.template | form | Inherits account.product_template_form_view |
view_stock_landed_cost_form |
stock.landed.cost.form | stock.landed.cost | form | New |
view_stock_landed_cost_search |
stock.landed.cost.search | stock.landed.cost | search | New |
view_stock_landed_cost_tree |
stock.landed.cost.list | stock.landed.cost | list | New |
view_stock_landed_cost_tree2 |
stock.landed.cost.list | stock.landed.cost | list | New |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (10)
New fields (2)
-
landed_costs_idsOne2many → stock.landed.coststring='Landed Costs' args: 'stock.landed.cost', 'vendor_bill_id' -
landed_costs_visibleBooleancompute='_compute_landed_costs_visible'
-
action_view_landed_costs(self) -
button_create_landed_costs(self)Create a `stock.landed.cost` record associated to the account move of `self`, each `stock.landed.costs` lines mirroring the current `account.move.line` of self.
New fields (2)
-
is_landed_costs_lineBoolean -
product_typeSelectionreadonly=Truerelated='product_id.type'
No public methods.
New fields (3)
-
landed_cost_okBooleanhelp='Indicates whether the product is a landed cost: when receiving a vendor bill, you can allocate this cost on preceding receipts.' args: 'Is a Landed Cost' -
landed_cost_on_product_idsMany2many → product.productdomain=[('type', '=', 'consu')]help='The landed cost is by default applied only on these products, if they are included in the transfer.\nEven if landed costs can be applied on all goods, only products valued using the AVCO or FIFO methods will have their calculated value affected by landed costs.'string='Apply Landed Cost On' args: 'product.product' -
split_method_landed_costSelectionhelp='Default Split Method when used for Landed Cost'string='Default Split Method' args: SPLIT_METHOD
-
write(self, vals)
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (1)
-
lc_journal_idMany2one → account.journalargs: 'account.journal'
No public methods.
New fields (1)
-
lc_journal_idMany2one → account.journalreadonly=Falserelated='company_id.lc_journal_id'string='Default Journal' args: 'account.journal'
No public methods.
New fields (16)
-
account_journal_idMany2one → account.journaldefault=<expr>required=True args: 'account.journal', 'Account Journal' -
account_move_idMany2one → account.movecopy=Falseindex='btree_not_null'readonly=True args: 'account.move', 'Journal Entry' -
allowed_product_idsMany2many → product.productcompute='_compute_allowed_product_ids' args: 'product.product' -
amount_totalMonetarycompute='_compute_total_amount'store=Truetracking=True args: 'Total' -
company_idMany2one → res.companydefault=<expr>index=Truerequired=Truestring='Company' args: 'res.company' -
cost_linesOne2many → stock.landed.cost.linescopy=True args: 'stock.landed.cost.lines', 'cost_id', 'Cost Lines' -
currency_idMany2one → res.currencyrelated='company_id.currency_id' args: 'res.currency' -
dateDatecopy=Falsedefault=fields.Date.context_todayrequired=Truetracking=True args: 'Date' -
descriptionTextargs: 'Item Description' -
nameCharcopy=Falsedefault=<expr>readonly=Truetracking=True args: 'Name' -
picking_idsMany2many → stock.pickingcopy=Falsestring='Transfers' args: 'stock.picking' -
pickings_countIntegercompute='_compute_pickings_count' -
stateSelectioncopy=Falsedefault='draft'readonly=Truetracking=True args: [('draft', 'Draft'), ('done', 'Posted'), ('cancel', 'Cancelled')], 'State' -
target_modelSelectioncopy=Falsedefault='picking'required=Truestring='Apply On' args: [('picking', 'Transfers')] -
valuation_adjustment_linesOne2many → stock.valuation.adjustment.linesargs: 'stock.valuation.adjustment.lines', 'cost_id', 'Valuation Adjustments' -
vendor_bill_idMany2one → account.movecopy=Falsedomain=[('move_type', '=', 'in_invoice')]index='btree_not_null' args: 'account.move', 'Vendor Bill'
-
action_view_pickings(self) -
button_cancel(self) -
button_validate(self) -
compute_landed_cost(self) -
create(self, vals_list)@api.model_create_multi -
get_valuation_lines(self) -
unlink(self)
New fields (8)
-
account_idMany2one → account.accountargs: 'account.account', 'Account' -
apply_on_product_idsMany2many → product.productcompute='_compute_apply_on_product_ids'help='The landed cost is by default applied only on these products, if they are included in the transfer.\nEven if landed costs can be applied on all goods, only products valued using the AVCO or FIFO methods will have their calculated value affected by landed costs.'readonly=Falsestore=Truestring='Apply On' args: 'product.product' -
cost_idMany2one → stock.landed.costindex=Trueondelete='cascade'required=True args: 'stock.landed.cost', 'Landed Cost' -
currency_idMany2one → res.currencyrelated='cost_id.currency_id' args: 'res.currency' -
nameCharargs: 'Description' -
price_unitMonetaryrequired=True args: 'Cost' -
product_idMany2one → product.productrequired=True args: 'product.product', 'Product' -
split_methodSelectionhelp="Equal: Cost will be equally divided.\nBy Quantity: Cost will be divided according to product's quantity.\nBy Current cost: Cost will be divided according to product's current cost.\nBy Weight: Cost will be divided depending on its weight.\nBy Volume: Cost will be divided depending on its volume."required=Truestring='Split Method' args: SPLIT_METHOD
-
onchange_product_id(self)@api.onchange('product_id')
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (12)
-
additional_landed_costMonetaryargs: 'Additional Landed Cost' -
cost_idMany2one → stock.landed.costindex=Trueondelete='cascade'required=True args: 'stock.landed.cost', 'Landed Cost' -
cost_line_idMany2one → stock.landed.cost.linesindex=Truereadonly=True args: 'stock.landed.cost.lines', 'Cost Line' -
currency_idMany2one → res.currencyrelated='cost_id.company_id.currency_id' args: 'res.currency' -
final_costMonetarycompute='_compute_final_cost'store=True args: 'New Value' -
former_costMonetaryargs: 'Original Value' -
move_idMany2one → stock.movereadonly=True args: 'stock.move', 'Stock Move' -
nameCharcompute='_compute_name'store=True args: 'Description' -
product_idMany2one → product.productindex=Truerequired=True args: 'product.product', 'Product' -
quantityFloatdefault=1.0digits=0required=True args: 'Quantity' -
volumeFloatdefault=1.0digits='Volume' args: 'Volume' -
weightFloatdefault=1.0digits='Stock Weight' args: 'Weight'
No public methods.
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…