| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/stock-logistics-warehouse |
| GIT | |
| GIT | https://github.com/OCA/stock-logistics-warehouse.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/stock-logistics-warehouse/tree/18.0/stock_vertical_lift |
| VERSION | |
| VERSION | 1.3.1 |
| CATEGORY | |
| CATEGORY | Stock |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Camptocamp |
| COMMITTERS | |
| COMMITTERS | Jacques-Etienne Baudoux, Florent Xicluna, Sébastien Alix, Weblate, OCA-git-bot, Simone Orsi, oca-ci, Vincent Van Rossem, Khôi (Kiên Kim) |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/stock-logistics-warehouse |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 19:30:06 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/stock-logistics-warehouse: - stock_location_tray OCA/web: - web_notify odoo/odoo: - stock - product - base - base_setup - web - bus - web_tour - html_editor - uom - barcodes_gs1_nomenclature - barcodes - digest - portal - web_editor - http_routing - auth_signup - resource - base_sparse_field |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | Add configuration and dedicated screens to work with Vertical Lift systems (such as Kardex Remstar, Modula, ...). Drivers for controlling the lifts physically must be added by additional addons. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
packagings |
packagings | ir.ui.view | qweb | New |
res_config_settings_view_form |
res.config.settings.view.form.inherit.vertical.lift | res.config.settings | block | Inherits base.res_config_settings_view_form |
vertical_lift_operation_base_button_view |
vertical.lift.operation.base.button.view | vertical.lift.operation.base | form | New |
vertical_lift_operation_base_screen_view |
vertical.lift.operation.base.screen.view | vertical.lift.operation.base | form | New |
vertical_lift_operation_inventory_button_view |
vertical.lift.operation.inventory.button.view | vertical.lift.operation.inventory | form | Inherits vertical_lift_operation_base_button_view |
vertical_lift_operation_inventory_screen_view |
vertical.lift.operation.inventory.screen.view | vertical.lift.operation.inventory | form | Inherits vertical_lift_operation_base_screen_view |
vertical_lift_operation_pick_button_view |
vertical.lift.operation.pick.button.view | vertical.lift.operation.pick | form | Inherits vertical_lift_operation_base_button_view |
vertical_lift_operation_pick_screen_view |
vertical.lift.operation.pick.screen.view | vertical.lift.operation.pick | form | Inherits vertical_lift_operation_transfer_screen_view |
vertical_lift_operation_put_button_view |
vertical.lift.operation.put.button.view | vertical.lift.operation.put | form | Inherits vertical_lift_operation_base_button_view |
vertical_lift_operation_put_screen_view |
vertical.lift.operation.put.screen.view | vertical.lift.operation.put | form | Inherits vertical_lift_operation_transfer_screen_view |
vertical_lift_operation_transfer_screen_view |
vertical.lift.operation.transfer.screen.view | vertical.lift.operation.transfer | xpath | Inherits vertical_lift_operation_base_screen_view |
vertical_lift_shuttle_form_menu |
vertical.lift.shuttle.view.form.menu | vertical.lift.shuttle | form | New |
vertical_lift_shuttle_manual_barcode_form |
vertical.lift.shuttle.manual.barcode.view.form | vertical.lift.shuttle.manual.barcode | form | New |
vertical_lift_shuttle_view_form |
vertical.lift.shuttle.view.form | vertical.lift.shuttle | form | New |
vertical_lift_shuttle_view_kanban |
vertical.lift.shuttle.kanban | vertical.lift.shuttle | kanban | New |
vertical_lift_shuttle_view_tree |
vertical.lift.shuttle.list | vertical.lift.shuttle | list | New |
view_location_form |
stock.location.form.vertical.lift | stock.location | div | Inherits stock_location_tray.view_location_form |
view_location_search |
stock.location.search.vertical.lift | stock.location | field | Inherits stock_location_tray.view_location_search |
view_stock_move_line_operation_tree |
stock.move.line.operations.list.vertical.lift | stock.move.line | button | Inherits stock_location_tray.view_stock_move_line_operation_tree |
vertical_lift_secret
Char
config_parameter='stock_vertical_lift.secret'
string='Secret for Vertical Lift API'
No public methods.
inverse_vertical_lift_shuttle_ids
One2many → vertical.lift.shuttle
comodel_name='vertical.lift.shuttle'
inverse_name='location_id'
vertical_lift_kind
Selection
compute='_compute_vertical_lift_kind'
recursive=True
selection=[('view', 'View'), ('shuttle', 'Shuttle'), ('tray', 'Tray'), ('cell', 'Cell')]
store=True
vertical_lift_location
Boolean
help='Check this box to use it as the view for Vertical Lift Shuttles.'
args: 'Is a Vertical Lift View Location?'
vertical_lift_shuttle_id
Many2one → vertical.lift.shuttle
comodel_name='vertical.lift.shuttle'
compute='_compute_vertical_lift_shuttle_id'
recursive=True
store=True
button_fetch_vertical_lift_tray(self)
button_release_vertical_lift_tray(self)
fetch_vertical_lift_tray(self, cell_location=None)
No new fields.
Public methods (1)write(self, vals)
vertical_lift_skipped
Boolean
help='If this flag is set, it means that when the move was being processed in the Vertical Lift, the operator decided to skip its processing.'
args: 'Skipped in Vertical Lift?'
fetch_vertical_lift_tray_dest(self)
fetch_vertical_lift_tray_source(self)
vertical_lift_done
Boolean
vertical_lift_tray_id
Many2one → stock.location
comodel_name='stock.location'
compute='_compute_vertical_lift_tray_id'
readonly=True
store=True
No public methods.
answer
Char
command
Char
required=True
error
Char
name
Char
default=<expr>
index=True
required=True
shuttle_id
Many2one → vertical.lift.shuttle
required=True
args: 'vertical.lift.shuttle'
create(self, vals_list)
record_answer(self, answer)
location_id
Many2one
related='shuttle_id.location_id'
mode
Selection
related='shuttle_id.mode'
name
Char
related='shuttle_id.name'
number_of_ops
Integer
compute='_compute_number_of_ops'
string='Number of Operations'
number_of_ops_all
Integer
compute='_compute_number_of_ops_all'
string='Number of Operations in all shuttles'
shuttle_id
Many2one → vertical.lift.shuttle
comodel_name='vertical.lift.shuttle'
readonly=True
required=True
state
Selection
default=<expr>
selection=<expr>
action_manual_barcode(self)
action_menu(self)
action_open_screen(self)
button_release(self)
button_save(self)
next_step(self, direct_eval=False)
on_barcode_scanned(self, barcode)
on_screen_open(self)
onchange(self, values, field_name, field_onchange)
process_current(self)
reset_steps(self)
step(self)
last_quantity_input
Float
lot_id
Many2one
related='quant_id.lot_id'
package_id
Many2one
related='quant_id.package_id'
product_id
Many2one
related='quant_id.product_id'
product_packagings
Html
compute='_compute_product_packagings'
string='Packaging'
product_qty
Float
related='quant_id.inventory_quantity'
product_uom_id
Many2one
related='quant_id.product_uom_id'
quant_id
Many2one → stock.quant
string='Current Quant'
args: 'stock.quant'
quantity_input
Float
tray_location_id
Many2one → stock.location
comodel_name='stock.location'
compute='_compute_tray_data'
string='Tray Location'
tray_matrix
Json
compute='_compute_tray_data'
string='Cells'
tray_name
Char
compute='_compute_tray_data'
tray_qty
Float
compute='_compute_tray_qty'
string='Stock Quantity'
tray_type_code
Char
compute='_compute_tray_data'
string='Tray Code'
tray_type_id
Many2one → stock.location.tray.type
comodel_name='stock.location.tray.type'
compute='_compute_tray_data'
string='Tray Type'
tray_x
Integer
compute='_compute_tray_data'
string='X'
tray_y
Integer
compute='_compute_tray_data'
string='Y'
button_save(self)
clear_current_inventory_line(self)
fetch_tray(self)
process_current(self)
reset_steps(self)
select_next_inventory_line(self)
No new fields.
Public methods (6)button_release(self)
button_skip(self)
fetch_tray(self)
is_skipped(self)
on_barcode_scanned(self, barcode)
select_next_move_line(self)
No new fields.
Public methods (3)button_release(self)
fetch_tray(self)
on_barcode_scanned(self, barcode)
current_move_line_id
Many2one → stock.move.line
comodel_name='stock.move.line'
readonly=True
location_dest_id
Many2one
readonly=False
related='current_move_line_id.location_dest_id'
string='Destination'
lot_id
Many2one
readonly=True
related='current_move_line_id.lot_id'
picking_id
Many2one
related='current_move_line_id.picking_id'
picking_origin
Char
related='current_move_line_id.picking_id.origin'
picking_partner_id
Many2one
related='current_move_line_id.picking_id.partner_id'
product_id
Many2one
related='current_move_line_id.product_id'
product_packagings
Html
compute='_compute_product_packagings'
string='Packaging'
product_uom_id
Many2one
related='current_move_line_id.product_uom_id'
quantity
Float
related='current_move_line_id.quantity'
tray_location_id
Many2one → stock.location
comodel_name='stock.location'
compute='_compute_tray_data'
string='Tray Location'
tray_matrix
Json
compute='_compute_tray_data'
string='Cells'
tray_name
Char
compute='_compute_tray_data'
tray_qty
Float
compute='_compute_tray_qty'
string='Stock Quantity'
tray_type_code
Char
compute='_compute_tray_data'
string='Tray Code'
tray_type_id
Many2one → stock.location.tray.type
comodel_name='stock.location.tray.type'
compute='_compute_tray_data'
string='Tray Type'
tray_x
Integer
compute='_compute_tray_data'
string='X'
tray_y
Integer
compute='_compute_tray_data'
string='Y'
clear_current_move_line(self)
count_move_lines_to_do(self)
count_move_lines_to_do_all(self)
fetch_tray(self)
on_barcode_scanned(self, barcode)
process_current(self)
reset_steps(self)
command_ids
One2many → vertical.lift.command
string='Hardware commands'
args: 'vertical.lift.command', 'shuttle_id'
hardware
Selection
default='simulation'
required=True
selection='_selection_hardware'
location_id
Many2one → stock.location
comodel_name='stock.location'
domain="[('vertical_lift_kind', '=', 'shuttle')]"
help='The Shuttle source location for Pick operations and destination location for Put operations.'
ondelete='restrict'
required=True
mode
Selection
default='pick'
required=True
args: [('pick', 'Pick'), ('put', 'Put'), ('inventory', 'Inventory')]
name
Char
port
Integer
help='network port of the server on which to send the message'
server
Char
help='hostname or IP address of the server'
use_tls
Boolean
help='set this if the server expects TLS wrapped communication'
action_back_to_settings(self)
action_manual_barcode(self)
action_menu(self)
action_open_screen(self)
release_vertical_lift_tray(self)
switch_inventory(self)
switch_pick(self)
switch_put(self)
barcode
Char
button_save(self)
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/stock-logistics-warehouse |
| GIT | |
| GIT | https://github.com/OCA/stock-logistics-warehouse.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/stock-logistics-warehouse/tree/14.0/stock_vertical_lift |
| VERSION | |
| VERSION | 1.3.1 |
| CATEGORY | |
| CATEGORY | Stock |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Camptocamp |
| COMMITTERS | |
| COMMITTERS | Enric Tobella, Florent Xicluna, Thierry Ducrest, oca-travis, Weblate, OCA-git-bot, Simone Orsi, SilvioC2C, oca-ci, Hai Lang, Mmequignon |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/stock-logistics-warehouse |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:40:57 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/stock-logistics-warehouse: - stock_location_tray OCA/web: - web_notify - web_ir_actions_act_view_reload odoo/odoo: - stock - product - base - base_setup - web - bus - web_tour - uom - barcodes - digest - portal - web_editor - http_routing - auth_signup - resource - base_sparse_field |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
packagings |
packagings | ir.ui.view | qweb | New |
stock_vertical_lift_assets |
stock.vertical.lift.assets | ir.ui.view | qweb | Inherits web.assets_backend |
vertical_lift_operation_base_button_view |
vertical.lift.operation.base.button.view | vertical.lift.operation.base | form | New |
vertical_lift_operation_base_screen_view |
vertical.lift.operation.base.screen.view | vertical.lift.operation.base | form | New |
vertical_lift_operation_inventory_button_view |
vertical.lift.operation.inventory.button.view | vertical.lift.operation.inventory | form | Inherits vertical_lift_operation_base_button_view |
vertical_lift_operation_inventory_screen_view |
vertical.lift.operation.inventory.screen.view | vertical.lift.operation.inventory | form | Inherits vertical_lift_operation_base_screen_view |
vertical_lift_operation_pick_button_view |
vertical.lift.operation.pick.button.view | vertical.lift.operation.pick | form | Inherits vertical_lift_operation_base_button_view |
vertical_lift_operation_pick_screen_view |
vertical.lift.operation.pick.screen.view | vertical.lift.operation.pick | form | Inherits vertical_lift_operation_transfer_screen_view |
vertical_lift_operation_put_button_view |
vertical.lift.operation.put.button.view | vertical.lift.operation.put | form | Inherits vertical_lift_operation_base_button_view |
vertical_lift_operation_put_screen_view |
vertical.lift.operation.put.screen.view | vertical.lift.operation.put | form | Inherits vertical_lift_operation_transfer_screen_view |
vertical_lift_operation_transfer_screen_view |
vertical.lift.operation.transfer.screen.view | vertical.lift.operation.transfer | xpath | Inherits vertical_lift_operation_base_screen_view |
vertical_lift_shuttle_form_menu |
vertical.lift.shuttle.view.form.menu | vertical.lift.shuttle | form | New |
vertical_lift_shuttle_manual_barcode_form |
vertical.lift.shuttle.manual.barcode.view.form | vertical.lift.shuttle.manual.barcode | form | New |
vertical_lift_shuttle_view_form |
vertical.lift.shuttle.view.form | vertical.lift.shuttle | form | New |
vertical_lift_shuttle_view_kanban |
vertical.lift.shuttle.kanban | vertical.lift.shuttle | kanban | New |
vertical_lift_shuttle_view_tree |
vertical.lift.shuttle.tree | vertical.lift.shuttle | tree | New |
view_location_form |
stock.location.form.vertical.lift | stock.location | div | Inherits stock_location_tray.view_location_form |
view_location_search |
stock.location.search.vertical.lift | stock.location | field | Inherits stock_location_tray.view_location_search |
view_stock_move_line_operation_tree |
stock.move.line.operations.tree.vertical.lift | stock.move.line | button | Inherits stock_location_tray.view_stock_move_line_operation_tree |
vertical_lift_done
Boolean
default=False
vertical_lift_tray_id
Many2one → stock.location
comodel_name='stock.location'
compute='_compute_vertical_lift_tray_id'
readonly=True
store=True
No public methods.
inverse_vertical_lift_shuttle_ids
One2many → vertical.lift.shuttle
comodel_name='vertical.lift.shuttle'
inverse_name='location_id'
readonly=True
vertical_lift_kind
Selection
compute='_compute_vertical_lift_kind'
selection=[('view', 'View'), ('shuttle', 'Shuttle'), ('tray', 'Tray'), ('cell', 'Cell')]
store=True
vertical_lift_location
Boolean
default=False
help='Check this box to use it as the view for Vertical Lift Shuttles.'
args: 'Is a Vertical Lift View Location?'
vertical_lift_shuttle_id
Many2one → vertical.lift.shuttle
comodel_name='vertical.lift.shuttle'
compute='_compute_vertical_lift_shuttle_id'
store=True
button_fetch_vertical_lift_tray(self)
button_release_vertical_lift_tray(self)
fetch_vertical_lift_tray(self, cell_location=None)
No new fields.
Public methods (1)write(self, vals)
vertical_lift_skipped
Boolean
default=False
help='If this flag is set, it means that when the move was being processed in the Vertical Lift, the operator decided to skip its processing.'
args: 'Skipped in Vertical Lift?'
fetch_vertical_lift_tray_dest(self)
fetch_vertical_lift_tray_source(self)
No new fields.
Public methods (0)No public methods.
answer
Char
command
Char
required=True
error
Char
name
Char
default=<expr>
index=True
required=True
args: 'Name'
shuttle_id
Many2one → vertical.lift.shuttle
required=True
args: 'vertical.lift.shuttle'
create(self, vals_list)
record_answer(self, answer)
location_id
Many2one
readonly=True
related='shuttle_id.location_id'
mode
Selection
readonly=True
related='shuttle_id.mode'
name
Char
readonly=True
related='shuttle_id.name'
number_of_ops
Integer
compute='_compute_number_of_ops'
string='Number of Operations'
number_of_ops_all
Integer
compute='_compute_number_of_ops_all'
string='Number of Operations in all shuttles'
shuttle_id
Many2one → vertical.lift.shuttle
comodel_name='vertical.lift.shuttle'
readonly=True
required=True
state
Selection
default=<expr>
selection=<expr>
action_manual_barcode(self)
action_menu(self)
action_open_screen(self)
button_release(self)
button_save(self)
next_step(self, direct_eval=False)
on_barcode_scanned(self, barcode)
on_screen_open(self)
onchange(self, values, field_name, field_onchange)
process_current(self)
reset_steps(self)
step(self)
current_inventory_line_id
Many2one → stock.inventory.line
comodel_name='stock.inventory.line'
readonly=True
inventory_id
Many2one
readonly=True
related='current_inventory_line_id.inventory_id'
last_quantity_input
Float
lot_id
Many2one
readonly=True
related='current_inventory_line_id.prod_lot_id'
package_id
Many2one
readonly=True
related='current_inventory_line_id.package_id'
product_id
Many2one
readonly=True
related='current_inventory_line_id.product_id'
product_packagings
Html
compute='_compute_product_packagings'
string='Packaging'
product_qty
Float
readonly=True
related='current_inventory_line_id.product_qty'
product_uom_id
Many2one
readonly=True
related='current_inventory_line_id.product_uom_id'
quantity_input
Float
tray_location_id
Many2one → stock.location
comodel_name='stock.location'
compute='_compute_tray_data'
string='Tray Location'
tray_name
Char
compute='_compute_tray_data'
string='Tray Name'
tray_qty
Float
compute='_compute_tray_qty'
string='Stock Quantity'
tray_type_code
Char
compute='_compute_tray_data'
string='Tray Code'
tray_type_id
Many2one → stock.location.tray.type
comodel_name='stock.location.tray.type'
compute='_compute_tray_data'
string='Tray Type'
tray_x
Integer
compute='_compute_tray_data'
string='X'
tray_y
Integer
compute='_compute_tray_data'
string='Y'
button_save(self)
clear_current_inventory_line(self)
fetch_tray(self)
process_current(self)
reset_steps(self)
select_next_inventory_line(self)
No new fields.
Public methods (6)button_release(self)
button_skip(self)
fetch_tray(self)
is_skipped(self)
on_barcode_scanned(self, barcode)
select_next_move_line(self)
No new fields.
Public methods (3)button_release(self)
fetch_tray(self)
on_barcode_scanned(self, barcode)
current_move_line_id
Many2one → stock.move.line
comodel_name='stock.move.line'
readonly=True
location_dest_id
Many2one
readonly=False
related='current_move_line_id.location_dest_id'
string='Destination'
lot_id
Many2one
readonly=True
related='current_move_line_id.lot_id'
picking_id
Many2one
readonly=True
related='current_move_line_id.picking_id'
picking_origin
Char
readonly=True
related='current_move_line_id.picking_id.origin'
picking_partner_id
Many2one
readonly=True
related='current_move_line_id.picking_id.partner_id'
product_id
Many2one
readonly=True
related='current_move_line_id.product_id'
product_packagings
Html
compute='_compute_product_packagings'
string='Packaging'
product_uom_id
Many2one
readonly=True
related='current_move_line_id.product_uom_id'
product_uom_qty
Float
readonly=True
related='current_move_line_id.product_uom_qty'
qty_done
Float
readonly=True
related='current_move_line_id.qty_done'
tray_location_id
Many2one → stock.location
comodel_name='stock.location'
compute='_compute_tray_data'
string='Tray Location'
tray_name
Char
compute='_compute_tray_data'
string='Tray Name'
tray_qty
Float
compute='_compute_tray_qty'
string='Stock Quantity'
tray_type_code
Char
compute='_compute_tray_data'
string='Tray Code'
tray_type_id
Many2one → stock.location.tray.type
comodel_name='stock.location.tray.type'
compute='_compute_tray_data'
string='Tray Type'
tray_x
Integer
compute='_compute_tray_data'
string='X'
tray_y
Integer
compute='_compute_tray_data'
string='Y'
clear_current_move_line(self)
count_move_lines_to_do(self)
count_move_lines_to_do_all(self)
fetch_tray(self)
on_barcode_scanned(self, barcode)
process_current(self)
reset_steps(self)
command_ids
One2many → vertical.lift.command
string='Hardware commands'
args: 'vertical.lift.command', 'shuttle_id'
hardware
Selection
default='simulation'
required=True
selection='_selection_hardware'
location_id
Many2one → stock.location
comodel_name='stock.location'
domain="[('vertical_lift_kind', '=', 'shuttle')]"
help='The Shuttle source location for Pick operations and destination location for Put operations.'
ondelete='restrict'
required=True
mode
Selection
default='pick'
required=True
args: [('pick', 'Pick'), ('put', 'Put'), ('inventory', 'Inventory')]
name
Char
port
Integer
help='network port of the server on which to send the message'
server
Char
help='hostname or IP address of the server'
use_tls
Boolean
help='set this if the server expects TLS wrapped communication'
action_back_to_settings(self)
action_manual_barcode(self)
action_menu(self)
action_open_screen(self)
release_vertical_lift_tray(self)
switch_inventory(self)
switch_pick(self)
switch_put(self)
barcode
Char
string='Barcode'
button_save(self)
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/stock-logistics-warehouse |
| GIT | |
| GIT | https://github.com/OCA/stock-logistics-warehouse.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/stock-logistics-warehouse/tree/13.0/stock_vertical_lift |
| VERSION | |
| VERSION | 1.3.1 |
| CATEGORY | |
| CATEGORY | Stock |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Camptocamp |
| COMMITTERS | |
| COMMITTERS | Guewen Baconnier, Pedro M. Baeza, GitHub, Víctor Martínez, Sébastien Alix, oca-travis, OCA-git-bot, Telmo Santos, Carlos Serra-Toro |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/stock-logistics-warehouse |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:34:12 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/stock-logistics-warehouse: - stock_location_tray OCA/web: - web_notify - web_ir_actions_act_view_reload odoo/odoo: - stock - product - base - base_setup - web - bus - web_tour - uom - barcodes - base_sparse_field |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
packagings |
packagings | ir.ui.view | qweb | New |
stock_vertical_lift_assets |
stock.vertical.lift.assets | ir.ui.view | qweb | Inherits web.assets_backend |
vertical_lift_operation_base_button_view |
vertical.lift.operation.base.button.view | vertical.lift.operation.base | form | New |
vertical_lift_operation_base_screen_view |
vertical.lift.operation.base.screen.view | vertical.lift.operation.base | form | New |
vertical_lift_operation_inventory_button_view |
vertical.lift.operation.inventory.button.view | vertical.lift.operation.inventory | form | Inherits vertical_lift_operation_base_button_view |
vertical_lift_operation_inventory_screen_view |
vertical.lift.operation.inventory.screen.view | vertical.lift.operation.inventory | form | Inherits vertical_lift_operation_base_screen_view |
vertical_lift_operation_pick_button_view |
vertical.lift.operation.pick.button.view | vertical.lift.operation.pick | form | Inherits vertical_lift_operation_base_button_view |
vertical_lift_operation_pick_screen_view |
vertical.lift.operation.pick.screen.view | vertical.lift.operation.pick | form | Inherits vertical_lift_operation_transfer_screen_view |
vertical_lift_operation_put_button_view |
vertical.lift.operation.put.button.view | vertical.lift.operation.put | form | Inherits vertical_lift_operation_base_button_view |
vertical_lift_operation_put_screen_view |
vertical.lift.operation.put.screen.view | vertical.lift.operation.put | form | Inherits vertical_lift_operation_transfer_screen_view |
vertical_lift_operation_transfer_screen_view |
vertical.lift.operation.transfer.screen.view | vertical.lift.operation.transfer | xpath | Inherits vertical_lift_operation_base_screen_view |
vertical_lift_shuttle_form_menu |
vertical.lift.shuttle.view.form.menu | vertical.lift.shuttle | form | New |
vertical_lift_shuttle_manual_barcode_form |
vertical.lift.shuttle.manual.barcode.view.form | vertical.lift.shuttle.manual.barcode | form | New |
vertical_lift_shuttle_view_form |
vertical.lift.shuttle.view.form | vertical.lift.shuttle | form | New |
vertical_lift_shuttle_view_kanban |
vertical.lift.shuttle.kanban | vertical.lift.shuttle | kanban | New |
vertical_lift_shuttle_view_tree |
vertical.lift.shuttle.tree | vertical.lift.shuttle | tree | New |
view_location_form |
stock.location.form.vertical.lift | stock.location | div | Inherits stock_location_tray.view_location_form |
view_location_search |
stock.location.search.vertical.lift | stock.location | field | Inherits stock_location_tray.view_location_search |
view_stock_move_line_operation_tree |
stock.move.line.operations.tree.vertical.lift | stock.move.line | button | Inherits stock_location_tray.view_stock_move_line_operation_tree |
vertical_lift_done
Boolean
default=False
vertical_lift_tray_id
Many2one → stock.location
comodel_name='stock.location'
compute='_compute_vertical_lift_tray_id'
readonly=True
store=True
No public methods.
inverse_vertical_lift_shuttle_ids
One2many → vertical.lift.shuttle
comodel_name='vertical.lift.shuttle'
inverse_name='location_id'
readonly=True
vertical_lift_kind
Selection
compute='_compute_vertical_lift_kind'
selection=[('view', 'View'), ('shuttle', 'Shuttle'), ('tray', 'Tray'), ('cell', 'Cell')]
store=True
vertical_lift_location
Boolean
default=False
help='Check this box to use it as the view for Vertical Lift Shuttles.'
args: 'Is a Vertical Lift View Location?'
vertical_lift_shuttle_id
Many2one → vertical.lift.shuttle
comodel_name='vertical.lift.shuttle'
compute='_compute_vertical_lift_shuttle_id'
store=True
button_fetch_vertical_lift_tray(self)
button_release_vertical_lift_tray(self)
fetch_vertical_lift_tray(self, cell_location=None)
No new fields.
Public methods (1)write(self, vals)
vertical_lift_skipped
Boolean
default=False
help='If this flag is set, it means that when the move was being processed in the Vertical Lift, the operator decided to skip its processing.'
args: 'Skipped in Vertical Lift?'
fetch_vertical_lift_tray_dest(self)
fetch_vertical_lift_tray_source(self)
No new fields.
Public methods (0)No public methods.
answer
Char
command
Char
required=True
error
Char
name
Char
default=<expr>
index=True
required=True
args: 'Name'
shuttle_id
Many2one → vertical.lift.shuttle
required=True
args: 'vertical.lift.shuttle'
create(self, vals_list)
record_answer(self, answer)
location_id
Many2one
readonly=True
related='shuttle_id.location_id'
mode
Selection
readonly=True
related='shuttle_id.mode'
name
Char
readonly=True
related='shuttle_id.name'
number_of_ops
Integer
compute='_compute_number_of_ops'
string='Number of Operations'
number_of_ops_all
Integer
compute='_compute_number_of_ops_all'
string='Number of Operations in all shuttles'
shuttle_id
Many2one → vertical.lift.shuttle
comodel_name='vertical.lift.shuttle'
readonly=True
required=True
state
Selection
default=<expr>
selection=<expr>
action_manual_barcode(self)
action_menu(self)
action_open_screen(self)
button_release(self)
button_save(self)
next_step(self, direct_eval=False)
on_barcode_scanned(self, barcode)
on_screen_open(self)
onchange(self, values, field_name, field_onchange)
process_current(self)
reset_steps(self)
step(self)
current_inventory_line_id
Many2one → stock.inventory.line
comodel_name='stock.inventory.line'
readonly=True
inventory_id
Many2one
readonly=True
related='current_inventory_line_id.inventory_id'
last_quantity_input
Float
lot_id
Many2one
readonly=True
related='current_inventory_line_id.prod_lot_id'
package_id
Many2one
readonly=True
related='current_inventory_line_id.package_id'
product_id
Many2one
readonly=True
related='current_inventory_line_id.product_id'
product_packagings
Html
compute='_compute_product_packagings'
string='Packaging'
product_qty
Float
readonly=True
related='current_inventory_line_id.product_qty'
product_uom_id
Many2one
readonly=True
related='current_inventory_line_id.product_uom_id'
quantity_input
Float
tray_location_id
Many2one → stock.location
comodel_name='stock.location'
compute='_compute_tray_data'
string='Tray Location'
tray_name
Char
compute='_compute_tray_data'
string='Tray Name'
tray_qty
Float
compute='_compute_tray_qty'
string='Stock Quantity'
tray_type_code
Char
compute='_compute_tray_data'
string='Tray Code'
tray_type_id
Many2one → stock.location.tray.type
comodel_name='stock.location.tray.type'
compute='_compute_tray_data'
string='Tray Type'
tray_x
Integer
compute='_compute_tray_data'
string='X'
tray_y
Integer
compute='_compute_tray_data'
string='Y'
button_save(self)
clear_current_inventory_line(self)
fetch_tray(self)
process_current(self)
reset_steps(self)
select_next_inventory_line(self)
No new fields.
Public methods (6)button_release(self)
button_skip(self)
fetch_tray(self)
is_skipped(self)
on_barcode_scanned(self, barcode)
select_next_move_line(self)
No new fields.
Public methods (3)button_release(self)
fetch_tray(self)
on_barcode_scanned(self, barcode)
current_move_line_id
Many2one → stock.move.line
comodel_name='stock.move.line'
readonly=True
location_dest_id
Many2one
readonly=False
related='current_move_line_id.location_dest_id'
string='Destination'
lot_id
Many2one
readonly=True
related='current_move_line_id.lot_id'
picking_id
Many2one
readonly=True
related='current_move_line_id.picking_id'
picking_origin
Char
readonly=True
related='current_move_line_id.picking_id.origin'
picking_partner_id
Many2one
readonly=True
related='current_move_line_id.picking_id.partner_id'
product_id
Many2one
readonly=True
related='current_move_line_id.product_id'
product_packagings
Html
compute='_compute_product_packagings'
string='Packaging'
product_uom_id
Many2one
readonly=True
related='current_move_line_id.product_uom_id'
product_uom_qty
Float
readonly=True
related='current_move_line_id.product_uom_qty'
qty_done
Float
readonly=True
related='current_move_line_id.qty_done'
tray_location_id
Many2one → stock.location
comodel_name='stock.location'
compute='_compute_tray_data'
string='Tray Location'
tray_name
Char
compute='_compute_tray_data'
string='Tray Name'
tray_qty
Float
compute='_compute_tray_qty'
string='Stock Quantity'
tray_type_code
Char
compute='_compute_tray_data'
string='Tray Code'
tray_type_id
Many2one → stock.location.tray.type
comodel_name='stock.location.tray.type'
compute='_compute_tray_data'
string='Tray Type'
tray_x
Integer
compute='_compute_tray_data'
string='X'
tray_y
Integer
compute='_compute_tray_data'
string='Y'
clear_current_move_line(self)
count_move_lines_to_do(self)
count_move_lines_to_do_all(self)
fetch_tray(self)
on_barcode_scanned(self, barcode)
process_current(self)
reset_steps(self)
command_ids
One2many → vertical.lift.command
string='Hardware commands'
args: 'vertical.lift.command', 'shuttle_id'
hardware
Selection
default='simulation'
required=True
selection='_selection_hardware'
location_id
Many2one → stock.location
comodel_name='stock.location'
domain="[('vertical_lift_kind', '=', 'shuttle')]"
help='The Shuttle source location for Pick operations and destination location for Put operations.'
ondelete='restrict'
required=True
mode
Selection
default='pick'
required=True
args: [('pick', 'Pick'), ('put', 'Put'), ('inventory', 'Inventory')]
name
Char
port
Integer
help='network port of the server on which to send the message'
server
Char
help='hostname or IP address of the server'
use_tls
Boolean
help='set this if the server expects TLS wrapped communication'
action_back_to_settings(self)
action_manual_barcode(self)
action_menu(self)
action_open_screen(self)
release_vertical_lift_tray(self)
switch_inventory(self)
switch_pick(self)
switch_put(self)
barcode
Char
string='Barcode'
button_save(self)