Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
103 changes: 103 additions & 0 deletions stock_location_lockdown/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
=======================
Stock Location Lockdown
=======================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:0562a65b8b5bd0d7896019c2960499d5560b9378bb352da7a80f10cf445b7d76
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fstock--logistics--warehouse-lightgray.png?logo=github
:target: https://github.com/OCA/stock-logistics-warehouse/tree/18.0/stock_location_lockdown
:alt: OCA/stock-logistics-warehouse
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/stock-logistics-warehouse-18-0/stock-logistics-warehouse-18-0-stock_location_lockdown
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/stock-logistics-warehouse&target_branch=18.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

The aim of this module is to provide a way to mark internal locations
where product storage is disallowed. This feature is versatile and can
be used in various scenarios, such as:

- Temporarily blocking stock movement to specific locations.
- Preventing stock from being stored in locations not meant for physical
storage.

Indeed, in complex warehouse setups, we may have a complicated tree of
internal locations with parent locations only used to create the
hierarchy of the internal locations. We may want to avoid to put stock
on these parent internal locations since they are not physical
locations, they just represent a zone of the warehouse. Theses locations
must have *Location Type* set to *Internal Location* because they belong
to a warehouse (they can't be configured with *Location Type* set to
*View*, cf `Odoo bug
#26679 <https://github.com/odoo/odoo/issues/26679>`__). With this
module, you will be able to enable a new option *Block stock entrance*
for these locations.

**Table of contents**

.. contents::
:local:

Usage
=====

- Once the module is installed, select any internal location for which
you want to prevent stock entrance and check the box *Block Stock
Entrance*. Then, you won't be allow to add stock on these locations.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/stock-logistics-warehouse/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/stock-logistics-warehouse/issues/new?body=module:%20stock_location_lockdown%0Aversion:%2018.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
-------

* Akretion

Contributors
------------

- Florian da Costa <florian.dacosta@akretion.com>
- David Montull Guasch <david.montull@bt-group.com>
- Urvisha Desai <udesai@opensourceintegrators.com>

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

This module is part of the `OCA/stock-logistics-warehouse <https://github.com/OCA/stock-logistics-warehouse/tree/18.0/stock_location_lockdown>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
4 changes: 4 additions & 0 deletions stock_location_lockdown/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Copyright 2018 Akretion
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

from . import models
16 changes: 16 additions & 0 deletions stock_location_lockdown/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Copyright 2018 Akretion
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

{
"name": "Stock Location Lockdown",
"summary": "Prevent to add stock on locked locations",
"author": "Akretion, Odoo Community Association (OCA)",
"website": "https://github.com/OCA/stock-logistics-warehouse",
"category": "Warehouse",
"version": "18.0.1.0.0",
"license": "AGPL-3",
"application": False,
"installable": True,
"depends": ["stock"],
"data": ["views/stock_location.xml"],
}
64 changes: 64 additions & 0 deletions stock_location_lockdown/i18n/es.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_location_lockdown
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-08-22 18:06+0000\n"
"Last-Translator: Florencia Frigieri <ffp@adhoc.com.ar>\n"
"Language-Team: none\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.6.2\n"

#. module: stock_location_lockdown
#: model:ir.model.fields,field_description:stock_location_lockdown.field_stock_location__block_stock_entrance
msgid "Block Stock Entrance"
msgstr "Bloquear la entrada de existencias"

#. module: stock_location_lockdown
#: model:ir.model,name:stock_location_lockdown.model_stock_location
msgid "Inventory Locations"
msgstr "Ubicaciones"

#. module: stock_location_lockdown
#. odoo-python
#: code:addons/stock_location_lockdown/models/stock_location.py:0
#, python-format
msgid ""
"It is impossible to prohibit this location from receiving "
"products as it already contains some."
msgstr ""
"Es imposible prohibir que este lugar "
"reciba productos, puesto que "
"ya contiene algunos."

#. module: stock_location_lockdown
#: model:ir.model,name:stock_location_lockdown.model_stock_quant
msgid "Quants"
msgstr "Cantidades"

#. module: stock_location_lockdown
#. odoo-python
#: code:addons/stock_location_lockdown/models/stock_quant.py:0
#, python-format
msgid ""
"The location %(location)s is blocked and can not be used for moving the "
"product %(product)s"
msgstr ""
"La ubicación %(location)s esta bloqueada, no puede ser usada para mover el "
"producto %(product)s"

#. module: stock_location_lockdown
#: model:ir.model.fields,help:stock_location_lockdown.field_stock_location__block_stock_entrance
msgid ""
"if this box is checked, putting stock on this location won't be allowed. "
"Usually used for a virtual location that has childrens."
msgstr ""
"si esta casilla está marcada, no se permitirá poner acciones en esta "
"ubicación. Normalmente se utiliza para una ubicación virtual que tiene niños."
69 changes: 69 additions & 0 deletions stock_location_lockdown/i18n/fr.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_location_lockdown
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 9.0c\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-06 13:10+0000\n"
"PO-Revision-Date: 2018-09-06 13:10+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: stock_location_lockdown
#: model:ir.model.fields,field_description:stock_location_lockdown.field_stock_location__block_stock_entrance
#, fuzzy
msgid "Block Stock Entrance"
msgstr "Bloquer les entrées de stock"

#. module: stock_location_lockdown
#: model:ir.model,name:stock_location_lockdown.model_stock_location
msgid "Inventory Locations"
msgstr ""

#. module: stock_location_lockdown
#. odoo-python
#: code:addons/stock_location_lockdown/models/stock_location.py:0
#, python-format
msgid ""
"It is impossible to prohibit this location from receiving "
"products as it already contains some."
msgstr ""

#. module: stock_location_lockdown
#: model:ir.model,name:stock_location_lockdown.model_stock_quant
msgid "Quants"
msgstr ""

#. module: stock_location_lockdown
#. odoo-python
#: code:addons/stock_location_lockdown/models/stock_quant.py:0
#, python-format
msgid ""
"The location %(location)s is blocked and can not be used for moving the "
"product %(product)s"
msgstr ""

#. module: stock_location_lockdown
#: model:ir.model.fields,help:stock_location_lockdown.field_stock_location__block_stock_entrance
#, fuzzy
msgid ""
"if this box is checked, putting stock on this location won't be allowed. "
"Usually used for a virtual location that has childrens."
msgstr ""
"Si cette case est cochée, il ne sera pas possible d'ajouter du stock dans "
"cette emplacement. Habituellement utilisée pour les emplacements virtuels "
"ayant des enfants."

#, fuzzy
#~ msgid "The location '%s' is not configured to receive stock."
#~ msgstr "L'emplacement %s n'est pas configuré pour recevoir du stock."

#~ msgid "Location"
#~ msgstr "Emplacement"
63 changes: 63 additions & 0 deletions stock_location_lockdown/i18n/it.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_location_lockdown
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2025-11-24 12:14+0000\n"
"Last-Translator: mymage <stefano.consolaro@mymage.it>\n"
"Language-Team: none\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.10.4\n"

#. module: stock_location_lockdown
#: model:ir.model.fields,field_description:stock_location_lockdown.field_stock_location__block_stock_entrance
msgid "Block Stock Entrance"
msgstr "Blocco entrata magazzino"

#. module: stock_location_lockdown
#: model:ir.model,name:stock_location_lockdown.model_stock_location
msgid "Inventory Locations"
msgstr "Ubicazioni di inventario"

#. module: stock_location_lockdown
#. odoo-python
#: code:addons/stock_location_lockdown/models/stock_location.py:0
#, python-format
msgid ""
"It is impossible to prohibit this location from receiving "
"products as it already contains some."
msgstr ""
"Non è possibile bloccare la ricezione di prodotti in "
"questa ubicazione perché ha già giacenze."

#. module: stock_location_lockdown
#: model:ir.model,name:stock_location_lockdown.model_stock_quant
msgid "Quants"
msgstr "Quanti"

#. module: stock_location_lockdown
#. odoo-python
#: code:addons/stock_location_lockdown/models/stock_quant.py:0
#, python-format
msgid ""
"The location %(location)s is blocked and can not be used for moving the "
"product %(product)s"
msgstr ""
"L'ubicazione %(location)s è bloccata e non può essere utilizzata per "
"movimentare il prodotto %(product)s"

#. module: stock_location_lockdown
#: model:ir.model.fields,help:stock_location_lockdown.field_stock_location__block_stock_entrance
msgid ""
"if this box is checked, putting stock on this location won't be allowed. "
"Usually used for a virtual location that has childrens."
msgstr ""
"Se selezionato, non è possibile caricare merce in questa ubicazione. "
"Normalmente utilizzato per una ubicazione virtuale con elementi figli."
64 changes: 64 additions & 0 deletions stock_location_lockdown/i18n/ja.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_location_lockdown
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 18.0+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-04-27 03:37+0000\n"
"PO-Revision-Date: 2026-04-27 03:37+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: stock_location_lockdown
#: model:ir.model.fields,field_description:stock_location_lockdown.field_stock_location__block_stock_entrance
msgid "Block Stock Entrance"
msgstr "在庫禁止"

#. module: stock_location_lockdown
#: model:ir.model.fields,help:stock_location_lockdown.field_stock_location__block_stock_entrance
msgid ""
"If this box is checked, putting stock on this location won't be allowed. Use"
" this to temporarily block stock movements or to enforce restrictions in "
"both physical and virtual locations."
msgstr ""
"このボックスにチェックを入れると、このロケーションへの在庫が禁止されます。在庫移動を一時的にブロックしたり、物理ロケーションおよび仮想ロケーションの両方に制限を適用するために使用します。"

#. module: stock_location_lockdown
#: model:ir.model,name:stock_location_lockdown.model_stock_location
msgid "Inventory Locations"
msgstr "在庫ロケーション"

#. module: stock_location_lockdown
#. odoo-python
#: code:addons/stock_location_lockdown/models/stock_location.py:0
msgid ""
"It is impossible to prohibit this location from receiving"
" products as it already contains some."
msgstr ""
"このロケーションにはすでに在庫があるため、プロダクトの在庫を禁止することはできません。"

#. module: stock_location_lockdown
#: model:ir.model,name:stock_location_lockdown.model_stock_quant
msgid "Quants"
msgstr "保管ロット"

#. module: stock_location_lockdown
#: model:ir.model.fields,field_description:stock_location_lockdown.field_stock_location__smart_search
#: model:ir.model.fields,field_description:stock_location_lockdown.field_stock_quant__smart_search
msgid "Smart Search"
msgstr "スマート検索"

#. module: stock_location_lockdown
#. odoo-python
#: code:addons/stock_location_lockdown/models/stock_quant.py:0
msgid ""
"The location %(location)s is blocked and can not be used for moving the "
"product %(product)s"
msgstr ""
"ロケーション %(location)s はブロックされており、プロダクト %(product)s の移動には使用できません。"
Loading
Loading