Skip to content

Commit fd9ce68

Browse files
committed
[16.0][ADD] stock_location_release_channel_restriction
1 parent 7f9f76c commit fd9ce68

File tree

21 files changed

+1236
-0
lines changed

21 files changed

+1236
-0
lines changed
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../../../stock_location_release_channel_restriction
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import setuptools
2+
3+
setuptools.setup(
4+
setup_requires=['setuptools-odoo'],
5+
odoo_addon=True,
6+
)
Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
==========================================
2+
Stock Location Release Channel Restriction
3+
==========================================
4+
5+
..
6+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
7+
!! This file is generated by oca-gen-addon-readme !!
8+
!! changes will be overwritten. !!
9+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
10+
!! source digest: sha256:747954603513f968a5177c42fb5754b546a9d97a1cc44d3cc9abd143d3e37428
11+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
12+
13+
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
14+
:target: https://odoo-community.org/page/development-status
15+
:alt: Beta
16+
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
17+
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
18+
:alt: License: AGPL-3
19+
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fstock--logistics--warehouse-lightgray.png?logo=github
20+
:target: https://github.com/OCA/stock-logistics-warehouse/tree/16.0/stock_location_release_channel_restriction
21+
:alt: OCA/stock-logistics-warehouse
22+
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
23+
:target: https://translation.odoo-community.org/projects/stock-logistics-warehouse-16-0/stock-logistics-warehouse-16-0-stock_location_release_channel_restriction
24+
:alt: Translate me on Weblate
25+
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
26+
:target: https://runboat.odoo-community.org/builds?repo=OCA/stock-logistics-warehouse&target_branch=16.0
27+
:alt: Try me on Runboat
28+
29+
|badge1| |badge2| |badge3| |badge4| |badge5|
30+
31+
This module allows to restrict input movements to be validated to
32+
locations that have pending output movements within another release
33+
channel.
34+
35+
**Table of contents**
36+
37+
.. contents::
38+
:local:
39+
40+
Use Cases / Context
41+
===================
42+
43+
When stock operators are putting products into Output location, it is
44+
better to split those locations per group of deliveries. This can be
45+
extended to release channels management as deliveries, in that case, are
46+
grouped per channel.
47+
48+
To help that process, we need to restrict output locations choice to
49+
those with the same release channel as the ones that are waiting to be
50+
delivered.
51+
52+
Configuration
53+
=============
54+
55+
- Go to Inventory > Configuration > Settings > Warehouse
56+
- Activate Storage Locations
57+
- Go to Inventory > Configuration > Warehouse Management > Locations
58+
- Check the 'Specific Release Channel Restriction' box if you want to
59+
restrict movements to have the same release channel in pending output
60+
ones and the one that is trying to be moved in that location. That
61+
parameter will be applied to children locations.
62+
- If you want to apply a that restriction only on some specific
63+
locations, check the 'Specific Release Channel Restriction'. It won't
64+
be applied on children locations.
65+
66+
Usage
67+
=====
68+
69+
70+
71+
Bug Tracker
72+
===========
73+
74+
Bugs are tracked on `GitHub Issues <https://github.com/OCA/stock-logistics-warehouse/issues>`_.
75+
In case of trouble, please check there if your issue has already been reported.
76+
If you spotted it first, help us to smash it by providing a detailed and welcomed
77+
`feedback <https://github.com/OCA/stock-logistics-warehouse/issues/new?body=module:%20stock_location_release_channel_restriction%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
78+
79+
Do not contact contributors directly about support or help with technical issues.
80+
81+
Credits
82+
=======
83+
84+
Authors
85+
-------
86+
87+
* ACSONE SA/NV
88+
89+
Contributors
90+
------------
91+
92+
- Denis Roussel [email protected]
93+
- Jacques-Étienne Baudoux [email protected]
94+
95+
Maintainers
96+
-----------
97+
98+
This module is maintained by the OCA.
99+
100+
.. image:: https://odoo-community.org/logo.png
101+
:alt: Odoo Community Association
102+
:target: https://odoo-community.org
103+
104+
OCA, or the Odoo Community Association, is a nonprofit organization whose
105+
mission is to support the collaborative development of Odoo features and
106+
promote its widespread use.
107+
108+
.. |maintainer-rousseldenis| image:: https://github.com/rousseldenis.png?size=40px
109+
:target: https://github.com/rousseldenis
110+
:alt: rousseldenis
111+
112+
Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:
113+
114+
|maintainer-rousseldenis|
115+
116+
This module is part of the `OCA/stock-logistics-warehouse <https://github.com/OCA/stock-logistics-warehouse/tree/16.0/stock_location_release_channel_restriction>`_ project on GitHub.
117+
118+
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
from . import models
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Copyright 2024 ACSONE SA/NV
2+
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3+
4+
{
5+
"name": "Stock Location Release Channel Restriction",
6+
"summary": """This module allows to restrict location content to products
7+
that are in the same release channel (moves).""",
8+
"version": "16.0.1.0.0",
9+
"license": "AGPL-3",
10+
"author": "ACSONE SA/NV,Odoo Community Association (OCA)",
11+
"website": "https://github.com/OCA/stock-logistics-warehouse",
12+
"maintainers": ["rousseldenis"],
13+
"depends": [
14+
"stock_location_pending_move",
15+
"stock_release_channel",
16+
],
17+
"data": [
18+
"views/stock_location.xml",
19+
],
20+
}
Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
# Translation of Odoo Server.
2+
# This file contains the translation of the following modules:
3+
# * stock_location_release_channel_restriction
4+
#
5+
msgid ""
6+
msgstr ""
7+
"Project-Id-Version: Odoo Server 16.0+e\n"
8+
"Report-Msgid-Bugs-To: \n"
9+
"POT-Creation-Date: 2025-01-24 11:28+0000\n"
10+
"PO-Revision-Date: 2025-01-24 11:28+0000\n"
11+
"Last-Translator: \n"
12+
"Language-Team: \n"
13+
"MIME-Version: 1.0\n"
14+
"Content-Type: text/plain; charset=UTF-8\n"
15+
"Content-Transfer-Encoding: \n"
16+
"Plural-Forms: \n"
17+
18+
#. module: stock_location_release_channel_restriction
19+
#: model:ir.model.fields,field_description:stock_location_release_channel_restriction.field_stock_move_line__for_restriction_destination_location_channel_id
20+
msgid "For Restriction Destination Location Channel"
21+
msgstr ""
22+
23+
#. module: stock_location_release_channel_restriction
24+
#: model:ir.model.fields,help:stock_location_release_channel_restriction.field_stock_location__parent_release_channel_restriction
25+
#: model:ir.model.fields,help:stock_location_release_channel_restriction.field_stock_location__release_channel_restriction
26+
msgid ""
27+
"If 'same' is selected the system will prevent to put items of different "
28+
"release channels into the same location."
29+
msgstr ""
30+
"Si 'même' est sélectionné, le système empêchera de mettre deux mouvements de"
31+
" différents canaux de livraison dans le même emplacement."
32+
33+
#. module: stock_location_release_channel_restriction
34+
#: model:ir.model.fields,help:stock_location_release_channel_restriction.field_stock_location__specific_release_channel_restriction
35+
msgid ""
36+
"If specified the restriction specified will apply to the current location "
37+
"and all its children"
38+
msgstr ""
39+
40+
#. module: stock_location_release_channel_restriction
41+
#: model:ir.model,name:stock_location_release_channel_restriction.model_stock_location
42+
msgid "Inventory Locations"
43+
msgstr "Emplacements de stock"
44+
45+
#. module: stock_location_release_channel_restriction
46+
#. odoo-python
47+
#: code:addons/stock_location_release_channel_restriction/models/stock_location.py:0
48+
#: model:ir.model.fields.selection,name:stock_location_release_channel_restriction.selection__stock_location__release_channel_restriction__mixed
49+
#: model:ir.model.fields.selection,name:stock_location_release_channel_restriction.selection__stock_location__specific_release_channel_restriction__mixed
50+
#, python-format
51+
msgid "Movements of different release channels are allowed into the location"
52+
msgstr ""
53+
"Les mouvemens de différents cannaux de livraison sont autorisés pour cet "
54+
"emplacement"
55+
56+
#. module: stock_location_release_channel_restriction
57+
#. odoo-python
58+
#: code:addons/stock_location_release_channel_restriction/models/stock_location.py:0
59+
#: model:ir.model.fields.selection,name:stock_location_release_channel_restriction.selection__stock_location__release_channel_restriction__same
60+
#: model:ir.model.fields.selection,name:stock_location_release_channel_restriction.selection__stock_location__specific_release_channel_restriction__same
61+
#, python-format
62+
msgid ""
63+
"Only movements of the same release channel are allowed into the location"
64+
msgstr ""
65+
"Seuls des mouvements pour un même canal de livraison sont autorisés dans cet"
66+
" emplacement"
67+
68+
#. module: stock_location_release_channel_restriction
69+
#: model:ir.model.fields,field_description:stock_location_release_channel_restriction.field_stock_location__parent_release_channel_restriction
70+
msgid "Parent Location Release Channel Restriction"
71+
msgstr "Restriction sur le canal de livraison de l'emplacement parent"
72+
73+
#. module: stock_location_release_channel_restriction
74+
#: model:ir.model,name:stock_location_release_channel_restriction.model_stock_move_line
75+
msgid "Product Moves (Stock Move Line)"
76+
msgstr "Mouvements de produit (Ligne de mouvement de stock)"
77+
78+
#. module: stock_location_release_channel_restriction
79+
#: model:ir.model.fields,field_description:stock_location_release_channel_restriction.field_stock_location__release_channel_restriction
80+
msgid "Release Channel Restriction"
81+
msgstr "Restriction sur les canaux de livraison"
82+
83+
#. module: stock_location_release_channel_restriction
84+
#: model_terms:ir.ui.view,arch_db:stock_location_release_channel_restriction.stock_location_form_view
85+
msgid "Release Channel Restrictions"
86+
msgstr "Restrictions sur les canaux de livraison"
87+
88+
#. module: stock_location_release_channel_restriction
89+
#: model:ir.model.fields,field_description:stock_location_release_channel_restriction.field_stock_location__specific_release_channel_restriction
90+
msgid "Specific Release Channel Restriction"
91+
msgstr "Restriction spécifique sur le canal de livraison"
92+
93+
#. module: stock_location_release_channel_restriction
94+
#: model:ir.model.fields,help:stock_location_release_channel_restriction.field_stock_move_line__for_restriction_destination_location_channel_id
95+
msgid ""
96+
"Technical field in order to retrieve the release channel of pending moveson "
97+
"destination location."
98+
msgstr ""
99+
100+
#. module: stock_location_release_channel_restriction
101+
#. odoo-python
102+
#: code:addons/stock_location_release_channel_restriction/models/exception.py:0
103+
#, python-format
104+
msgid "Undefined"
105+
msgstr "Non Défini"
106+
107+
#. module: stock_location_release_channel_restriction
108+
#. odoo-python
109+
#: code:addons/stock_location_release_channel_restriction/models/exception.py:0
110+
#, python-format
111+
msgid ""
112+
"You cannot move picking (%(picking_name)s) products to %(location_name)s. "
113+
"That location has already pending moves for %(release_channel_name)s release"
114+
" channel"
115+
msgstr ""
116+
"Vous ne pouvez pas valider les produits du transfert (%(picking_name)s) vers"
117+
" l'emplacement %(location_name)s. Cet emplacement possède déjà des "
118+
"mouvements sortants pour le canal de livraison %(release_channel_name)s"
Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
# Translation of Odoo Server.
2+
# This file contains the translation of the following modules:
3+
# * stock_location_release_channel_restriction
4+
#
5+
msgid ""
6+
msgstr ""
7+
"Project-Id-Version: Odoo Server 16.0+e\n"
8+
"Report-Msgid-Bugs-To: \n"
9+
"POT-Creation-Date: 2025-01-24 11:27+0000\n"
10+
"PO-Revision-Date: 2025-01-24 11:27+0000\n"
11+
"Last-Translator: \n"
12+
"Language-Team: \n"
13+
"MIME-Version: 1.0\n"
14+
"Content-Type: text/plain; charset=UTF-8\n"
15+
"Content-Transfer-Encoding: \n"
16+
"Plural-Forms: \n"
17+
18+
#. module: stock_location_release_channel_restriction
19+
#: model:ir.model.fields,field_description:stock_location_release_channel_restriction.field_stock_move_line__for_restriction_destination_location_channel_id
20+
msgid "For Restriction Destination Location Channel"
21+
msgstr ""
22+
23+
#. module: stock_location_release_channel_restriction
24+
#: model:ir.model.fields,help:stock_location_release_channel_restriction.field_stock_location__parent_release_channel_restriction
25+
#: model:ir.model.fields,help:stock_location_release_channel_restriction.field_stock_location__release_channel_restriction
26+
msgid ""
27+
"If 'same' is selected the system will prevent to put items of different "
28+
"release channels into the same location."
29+
msgstr ""
30+
31+
#. module: stock_location_release_channel_restriction
32+
#: model:ir.model.fields,help:stock_location_release_channel_restriction.field_stock_location__specific_release_channel_restriction
33+
msgid ""
34+
"If specified the restriction specified will apply to the current location "
35+
"and all its children"
36+
msgstr ""
37+
38+
#. module: stock_location_release_channel_restriction
39+
#: model:ir.model,name:stock_location_release_channel_restriction.model_stock_location
40+
msgid "Inventory Locations"
41+
msgstr ""
42+
43+
#. module: stock_location_release_channel_restriction
44+
#. odoo-python
45+
#: code:addons/stock_location_release_channel_restriction/models/stock_location.py:0
46+
#: model:ir.model.fields.selection,name:stock_location_release_channel_restriction.selection__stock_location__release_channel_restriction__mixed
47+
#: model:ir.model.fields.selection,name:stock_location_release_channel_restriction.selection__stock_location__specific_release_channel_restriction__mixed
48+
#, python-format
49+
msgid "Movements of different release channels are allowed into the location"
50+
msgstr ""
51+
52+
#. module: stock_location_release_channel_restriction
53+
#. odoo-python
54+
#: code:addons/stock_location_release_channel_restriction/models/stock_location.py:0
55+
#: model:ir.model.fields.selection,name:stock_location_release_channel_restriction.selection__stock_location__release_channel_restriction__same
56+
#: model:ir.model.fields.selection,name:stock_location_release_channel_restriction.selection__stock_location__specific_release_channel_restriction__same
57+
#, python-format
58+
msgid ""
59+
"Only movements of the same release channel are allowed into the location"
60+
msgstr ""
61+
62+
#. module: stock_location_release_channel_restriction
63+
#: model:ir.model.fields,field_description:stock_location_release_channel_restriction.field_stock_location__parent_release_channel_restriction
64+
msgid "Parent Location Release Channel Restriction"
65+
msgstr ""
66+
67+
#. module: stock_location_release_channel_restriction
68+
#: model:ir.model,name:stock_location_release_channel_restriction.model_stock_move_line
69+
msgid "Product Moves (Stock Move Line)"
70+
msgstr ""
71+
72+
#. module: stock_location_release_channel_restriction
73+
#: model:ir.model.fields,field_description:stock_location_release_channel_restriction.field_stock_location__release_channel_restriction
74+
msgid "Release Channel Restriction"
75+
msgstr ""
76+
77+
#. module: stock_location_release_channel_restriction
78+
#: model_terms:ir.ui.view,arch_db:stock_location_release_channel_restriction.stock_location_form_view
79+
msgid "Release Channel Restrictions"
80+
msgstr ""
81+
82+
#. module: stock_location_release_channel_restriction
83+
#: model:ir.model.fields,field_description:stock_location_release_channel_restriction.field_stock_location__specific_release_channel_restriction
84+
msgid "Specific Release Channel Restriction"
85+
msgstr ""
86+
87+
#. module: stock_location_release_channel_restriction
88+
#: model:ir.model.fields,help:stock_location_release_channel_restriction.field_stock_move_line__for_restriction_destination_location_channel_id
89+
msgid ""
90+
"Technical field in order to retrieve the release channel of pending moveson "
91+
"destination location."
92+
msgstr ""
93+
94+
#. module: stock_location_release_channel_restriction
95+
#. odoo-python
96+
#: code:addons/stock_location_release_channel_restriction/models/exception.py:0
97+
#, python-format
98+
msgid "Undefined"
99+
msgstr ""
100+
101+
#. module: stock_location_release_channel_restriction
102+
#. odoo-python
103+
#: code:addons/stock_location_release_channel_restriction/models/exception.py:0
104+
#, python-format
105+
msgid ""
106+
"You cannot move picking (%(picking_name)s) products to %(location_name)s. "
107+
"That location has already pending moves for %(release_channel_name)s release"
108+
" channel"
109+
msgstr ""
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
from . import stock_location
2+
from . import stock_move_line

0 commit comments

Comments
 (0)