odoo-addon-sale-blanket-order 17.0.1.1.1.2__py3-none-any.whl → 18.0.1.0.0.12__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of odoo-addon-sale-blanket-order might be problematic. Click here for more details.
- odoo/addons/sale_blanket_order/README.rst +37 -16
- odoo/addons/sale_blanket_order/__manifest__.py +7 -2
- odoo/addons/sale_blanket_order/data/ir_cron.xml +0 -2
- odoo/addons/sale_blanket_order/i18n/de.po +0 -15
- odoo/addons/sale_blanket_order/i18n/es.po +3 -15
- odoo/addons/sale_blanket_order/i18n/fr.po +3 -15
- odoo/addons/sale_blanket_order/i18n/fr_FR.po +3 -15
- odoo/addons/sale_blanket_order/i18n/it.po +32 -44
- odoo/addons/sale_blanket_order/i18n/pt.po +0 -15
- odoo/addons/sale_blanket_order/i18n/sale_blanket_order.pot +11 -58
- odoo/addons/sale_blanket_order/models/blanket_orders.py +35 -44
- odoo/addons/sale_blanket_order/models/sale_orders.py +18 -5
- odoo/addons/sale_blanket_order/readme/CONTEXT.md +5 -0
- odoo/addons/sale_blanket_order/report/report.xml +0 -2
- odoo/addons/sale_blanket_order/report/templates.xml +32 -35
- odoo/addons/sale_blanket_order/static/description/index.html +51 -28
- odoo/addons/sale_blanket_order/static/src/js/disable_add_order_line.esm.js +26 -0
- odoo/addons/sale_blanket_order/tests/test_blanket_orders.py +69 -2
- odoo/addons/sale_blanket_order/views/sale_blanket_order_line_views.xml +17 -28
- odoo/addons/sale_blanket_order/views/sale_blanket_order_views.xml +14 -25
- odoo/addons/sale_blanket_order/views/sale_order_views.xml +2 -14
- odoo/addons/sale_blanket_order/wizard/create_sale_orders.py +47 -30
- odoo/addons/sale_blanket_order/wizard/create_sale_orders.xml +2 -2
- {odoo_addon_sale_blanket_order-17.0.1.1.1.2.dist-info → odoo_addon_sale_blanket_order-18.0.1.0.0.12.dist-info}/METADATA +42 -20
- {odoo_addon_sale_blanket_order-17.0.1.1.1.2.dist-info → odoo_addon_sale_blanket_order-18.0.1.0.0.12.dist-info}/RECORD +27 -25
- {odoo_addon_sale_blanket_order-17.0.1.1.1.2.dist-info → odoo_addon_sale_blanket_order-18.0.1.0.0.12.dist-info}/WHEEL +1 -1
- {odoo_addon_sale_blanket_order-17.0.1.1.1.2.dist-info → odoo_addon_sale_blanket_order-18.0.1.0.0.12.dist-info}/top_level.txt +0 -0
|
@@ -8,16 +8,6 @@
|
|
|
8
8
|
<field name="currency_id" position="after">
|
|
9
9
|
<field name="blanket_order_id" invisible="1" />
|
|
10
10
|
</field>
|
|
11
|
-
<xpath
|
|
12
|
-
expr="//field[@name='order_line']//tree/field[@name='product_id']"
|
|
13
|
-
position="after"
|
|
14
|
-
>
|
|
15
|
-
<field
|
|
16
|
-
name="blanket_order_line"
|
|
17
|
-
context="{'from_sale_order': True}"
|
|
18
|
-
column_invisible="not parent.blanket_order_id"
|
|
19
|
-
/>
|
|
20
|
-
</xpath>
|
|
21
11
|
<xpath expr="//field[@name='order_line']" position="attributes">
|
|
22
12
|
<attribute name="context">{'from_sale_order': True}</attribute>
|
|
23
13
|
</xpath>
|
|
@@ -28,10 +18,8 @@
|
|
|
28
18
|
<field name="model">sale.order</field>
|
|
29
19
|
<field name="inherit_id" ref="sale.view_order_form" />
|
|
30
20
|
<field name="arch" type="xml">
|
|
31
|
-
<xpath expr="//field[@name='order_line']
|
|
32
|
-
<
|
|
33
|
-
<attribute name="create">blanket_order_id==False</attribute>
|
|
34
|
-
</t>
|
|
21
|
+
<xpath expr="//field[@name='order_line']" position="before">
|
|
22
|
+
<field name="disable_adding_lines" invisible="1" />
|
|
35
23
|
</xpath>
|
|
36
24
|
</field>
|
|
37
25
|
</record>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
|
3
3
|
from collections import defaultdict
|
|
4
4
|
|
|
5
|
-
from odoo import
|
|
5
|
+
from odoo import api, fields, models
|
|
6
6
|
from odoo.exceptions import UserError
|
|
7
7
|
from odoo.tools import float_is_zero
|
|
8
8
|
|
|
@@ -22,7 +22,9 @@ class BlanketOrderWizard(models.TransientModel):
|
|
|
22
22
|
)
|
|
23
23
|
if blanket_order.state == "expired":
|
|
24
24
|
raise UserError(
|
|
25
|
-
_(
|
|
25
|
+
self.env._(
|
|
26
|
+
"You can't create a sale order from " "an expired blanket order!"
|
|
27
|
+
)
|
|
26
28
|
)
|
|
27
29
|
return blanket_order
|
|
28
30
|
|
|
@@ -37,16 +39,18 @@ class BlanketOrderWizard(models.TransientModel):
|
|
|
37
39
|
float_is_zero(line.remaining_uom_qty, precision_digits=precision)
|
|
38
40
|
for line in bo_lines
|
|
39
41
|
):
|
|
40
|
-
raise UserError(_("The sale has already been completed."))
|
|
42
|
+
raise UserError(self.env._("The sale has already been completed."))
|
|
41
43
|
|
|
42
44
|
for line in bo_lines:
|
|
43
45
|
if line.order_id.state != "open":
|
|
44
46
|
raise UserError(
|
|
45
|
-
_("Sale Blanket Order %s is not open") % line.order_id.name
|
|
47
|
+
self.env._("Sale Blanket Order %s is not open") % line.order_id.name
|
|
46
48
|
)
|
|
47
49
|
line_company_id = line.company_id and line.company_id.id or False
|
|
48
50
|
if company_id is not False and line_company_id != company_id:
|
|
49
|
-
raise UserError(
|
|
51
|
+
raise UserError(
|
|
52
|
+
self.env._("You have to select lines " "from the same company.")
|
|
53
|
+
)
|
|
50
54
|
else:
|
|
51
55
|
company_id = line_company_id
|
|
52
56
|
|
|
@@ -66,6 +70,7 @@ class BlanketOrderWizard(models.TransientModel):
|
|
|
66
70
|
lines = [
|
|
67
71
|
fields.Command.create(
|
|
68
72
|
{
|
|
73
|
+
"analytic_distribution": bol.analytic_distribution,
|
|
69
74
|
"blanket_line_id": bol.id,
|
|
70
75
|
"date_schedule": bol.date_schedule,
|
|
71
76
|
"qty": bol.remaining_uom_qty,
|
|
@@ -113,6 +118,8 @@ class BlanketOrderWizard(models.TransientModel):
|
|
|
113
118
|
currency_id,
|
|
114
119
|
pricelist_id,
|
|
115
120
|
payment_term_id,
|
|
121
|
+
client_order_ref,
|
|
122
|
+
tag_ids,
|
|
116
123
|
order_lines_by_customer,
|
|
117
124
|
):
|
|
118
125
|
return {
|
|
@@ -123,47 +130,55 @@ class BlanketOrderWizard(models.TransientModel):
|
|
|
123
130
|
"pricelist_id": pricelist_id,
|
|
124
131
|
"payment_term_id": payment_term_id,
|
|
125
132
|
"order_line": order_lines_by_customer[customer],
|
|
126
|
-
"
|
|
133
|
+
"client_order_ref": client_order_ref,
|
|
134
|
+
"tag_ids": [(6, 0, tag_ids.ids)] if tag_ids else False,
|
|
127
135
|
}
|
|
128
136
|
|
|
137
|
+
@api.model
|
|
138
|
+
def _check_consistency(self, current_value, new_value):
|
|
139
|
+
if current_value == 0:
|
|
140
|
+
return new_value
|
|
141
|
+
return current_value if current_value == new_value else False
|
|
142
|
+
|
|
129
143
|
def create_sale_order(self):
|
|
130
144
|
order_lines_by_customer = defaultdict(list)
|
|
131
145
|
currency_id = 0
|
|
132
146
|
pricelist_id = 0
|
|
133
147
|
user_id = 0
|
|
134
148
|
payment_term_id = 0
|
|
149
|
+
client_order_ref = 0
|
|
150
|
+
tag_ids = 0
|
|
135
151
|
for line in self.line_ids.filtered(lambda line: line.qty != 0.0):
|
|
136
152
|
if line.qty > line.remaining_uom_qty:
|
|
137
|
-
raise UserError(
|
|
153
|
+
raise UserError(
|
|
154
|
+
self.env._("You can't order more than the remaining quantities")
|
|
155
|
+
)
|
|
138
156
|
vals = self._prepare_so_line_vals(line)
|
|
139
157
|
order_lines_by_customer[line.partner_id.id].append((0, 0, vals))
|
|
140
158
|
|
|
141
|
-
|
|
142
|
-
currency_id
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
payment_term_id = line.blanket_line_id.payment_term_id.id
|
|
158
|
-
elif payment_term_id != line.blanket_line_id.payment_term_id.id:
|
|
159
|
-
payment_term_id = False
|
|
159
|
+
currency_id = self._check_consistency(
|
|
160
|
+
currency_id, line.blanket_line_id.order_id.currency_id.id
|
|
161
|
+
)
|
|
162
|
+
pricelist_id = self._check_consistency(
|
|
163
|
+
pricelist_id, line.blanket_line_id.pricelist_id.id
|
|
164
|
+
)
|
|
165
|
+
user_id = self._check_consistency(user_id, line.blanket_line_id.user_id.id)
|
|
166
|
+
payment_term_id = self._check_consistency(
|
|
167
|
+
payment_term_id, line.blanket_line_id.payment_term_id.id
|
|
168
|
+
)
|
|
169
|
+
client_order_ref = self._check_consistency(
|
|
170
|
+
client_order_ref, line.blanket_line_id.order_id.client_order_ref
|
|
171
|
+
)
|
|
172
|
+
tag_ids = self._check_consistency(
|
|
173
|
+
tag_ids, line.blanket_line_id.order_id.tag_ids
|
|
174
|
+
)
|
|
160
175
|
|
|
161
176
|
if not order_lines_by_customer:
|
|
162
|
-
raise UserError(_("An order can't be empty"))
|
|
177
|
+
raise UserError(self.env._("An order can't be empty"))
|
|
163
178
|
|
|
164
179
|
if not currency_id:
|
|
165
180
|
raise UserError(
|
|
166
|
-
_(
|
|
181
|
+
self.env._(
|
|
167
182
|
"Can not create Sale Order from Blanket "
|
|
168
183
|
"Order lines with different currencies"
|
|
169
184
|
)
|
|
@@ -177,15 +192,17 @@ class BlanketOrderWizard(models.TransientModel):
|
|
|
177
192
|
currency_id,
|
|
178
193
|
pricelist_id,
|
|
179
194
|
payment_term_id,
|
|
195
|
+
client_order_ref,
|
|
196
|
+
tag_ids,
|
|
180
197
|
order_lines_by_customer,
|
|
181
198
|
)
|
|
182
199
|
sale_order = self.env["sale.order"].create(order_vals)
|
|
183
200
|
res.append(sale_order.id)
|
|
184
201
|
return {
|
|
185
202
|
"domain": [("id", "in", res)],
|
|
186
|
-
"name": _("Sales Orders"),
|
|
203
|
+
"name": self.env._("Sales Orders"),
|
|
187
204
|
"view_type": "form",
|
|
188
|
-
"view_mode": "
|
|
205
|
+
"view_mode": "list,form",
|
|
189
206
|
"res_model": "sale.order",
|
|
190
207
|
"context": {"from_sale_order": True},
|
|
191
208
|
"type": "ir.actions.act_window",
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
<form string="Create Sale Order">
|
|
8
8
|
<group>
|
|
9
9
|
<field name="line_ids" nolabel="1" colspan="2">
|
|
10
|
-
<
|
|
10
|
+
<list create="false" editable="bottom">
|
|
11
11
|
<field
|
|
12
12
|
name="blanket_line_id"
|
|
13
13
|
force_save="1"
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
'business_domain': 'sale_order'
|
|
31
31
|
}"
|
|
32
32
|
/>
|
|
33
|
-
</
|
|
33
|
+
</list>
|
|
34
34
|
</field>
|
|
35
35
|
</group>
|
|
36
36
|
<footer>
|
|
@@ -1,17 +1,22 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: odoo-addon-sale_blanket_order
|
|
3
|
-
Version:
|
|
3
|
+
Version: 18.0.1.0.0.12
|
|
4
4
|
Requires-Python: >=3.10
|
|
5
|
-
Requires-Dist: odoo
|
|
5
|
+
Requires-Dist: odoo==18.0.*
|
|
6
6
|
Summary: Blanket Orders
|
|
7
|
-
Home-page: https://github.com/OCA/sale-
|
|
7
|
+
Home-page: https://github.com/OCA/sale-blanket
|
|
8
8
|
License: AGPL-3
|
|
9
9
|
Author: Acsone SA/NV, Odoo Community Association (OCA)
|
|
10
10
|
Author-email: support@odoo-community.org
|
|
11
11
|
Classifier: Programming Language :: Python
|
|
12
12
|
Classifier: Framework :: Odoo
|
|
13
|
-
Classifier: Framework :: Odoo ::
|
|
13
|
+
Classifier: Framework :: Odoo :: 18.0
|
|
14
14
|
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
|
|
15
|
+
Description-Content-Type: text/x-rst
|
|
16
|
+
|
|
17
|
+
.. image:: https://odoo-community.org/readme-banner-image
|
|
18
|
+
:target: https://odoo-community.org/get-involved?utm_source=readme
|
|
19
|
+
:alt: Odoo Community Association
|
|
15
20
|
|
|
16
21
|
===================
|
|
17
22
|
Sale Blanket Orders
|
|
@@ -22,23 +27,23 @@ Sale Blanket Orders
|
|
|
22
27
|
!! This file is generated by oca-gen-addon-readme !!
|
|
23
28
|
!! changes will be overwritten. !!
|
|
24
29
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
25
|
-
!! source digest: sha256:
|
|
30
|
+
!! source digest: sha256:f0f9cee803ac6b3a9aaed08fda171398c5febb7e96021d27938e1377ce6a0847
|
|
26
31
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
27
32
|
|
|
28
33
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
|
29
34
|
:target: https://odoo-community.org/page/development-status
|
|
30
35
|
:alt: Beta
|
|
31
|
-
.. |badge2| image:: https://img.shields.io/badge/
|
|
36
|
+
.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png
|
|
32
37
|
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
|
|
33
38
|
:alt: License: AGPL-3
|
|
34
|
-
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fsale--
|
|
35
|
-
:target: https://github.com/OCA/sale-
|
|
36
|
-
:alt: OCA/sale-
|
|
39
|
+
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fsale--blanket-lightgray.png?logo=github
|
|
40
|
+
:target: https://github.com/OCA/sale-blanket/tree/18.0/sale_blanket_order
|
|
41
|
+
:alt: OCA/sale-blanket
|
|
37
42
|
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
|
|
38
|
-
:target: https://translation.odoo-community.org/projects/sale-
|
|
43
|
+
:target: https://translation.odoo-community.org/projects/sale-blanket-18-0/sale-blanket-18-0-sale_blanket_order
|
|
39
44
|
:alt: Translate me on Weblate
|
|
40
45
|
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
|
|
41
|
-
:target: https://runboat.odoo-community.org/builds?repo=OCA/sale-
|
|
46
|
+
:target: https://runboat.odoo-community.org/builds?repo=OCA/sale-blanket&target_branch=18.0
|
|
42
47
|
:alt: Try me on Runboat
|
|
43
48
|
|
|
44
49
|
|badge1| |badge2| |badge3| |badge4| |badge5|
|
|
@@ -54,6 +59,23 @@ exhausting all the quantities of products.
|
|
|
54
59
|
.. contents::
|
|
55
60
|
:local:
|
|
56
61
|
|
|
62
|
+
Use Cases / Context
|
|
63
|
+
===================
|
|
64
|
+
|
|
65
|
+
Others modules provide similar features. The module
|
|
66
|
+
(sale_order_blanket_order)[https://pypi.org/project/odoo-addon-sale-order-blanket-order]
|
|
67
|
+
also defines the concept of sale blanket order. The main differences
|
|
68
|
+
are:
|
|
69
|
+
|
|
70
|
+
- This module integrates Blanket Orders and Call-Off Orders into the
|
|
71
|
+
sale.blanket.order object, whereas the other module extends the
|
|
72
|
+
sale.order object. This means that any extensions made to the sale
|
|
73
|
+
order model can also apply to blanket orders.
|
|
74
|
+
|
|
75
|
+
- In the other module, you can deliver and invoice directly from the
|
|
76
|
+
blanket order. You can also create a separate call-off order to
|
|
77
|
+
partially deliver the blanket order.
|
|
78
|
+
|
|
57
79
|
Usage
|
|
58
80
|
=====
|
|
59
81
|
|
|
@@ -117,20 +139,20 @@ factors:
|
|
|
117
139
|
|
|
118
140
|
|image6|
|
|
119
141
|
|
|
120
|
-
.. |image1| image:: https://raw.githubusercontent.com/OCA/sale-
|
|
121
|
-
.. |image2| image:: https://raw.githubusercontent.com/OCA/sale-
|
|
122
|
-
.. |image3| image:: https://raw.githubusercontent.com/OCA/sale-
|
|
123
|
-
.. |image4| image:: https://raw.githubusercontent.com/OCA/sale-
|
|
124
|
-
.. |image5| image:: https://raw.githubusercontent.com/OCA/sale-
|
|
125
|
-
.. |image6| image:: https://raw.githubusercontent.com/OCA/sale-
|
|
142
|
+
.. |image1| image:: https://raw.githubusercontent.com/OCA/sale-blanket/18.0/sale_blanket_order/static/description/BO_menu.png
|
|
143
|
+
.. |image2| image:: https://raw.githubusercontent.com/OCA/sale-blanket/18.0/sale_blanket_order/static/description/BO_form.png
|
|
144
|
+
.. |image3| image:: https://raw.githubusercontent.com/OCA/sale-blanket/18.0/sale_blanket_order/static/description/BO_actions.png
|
|
145
|
+
.. |image4| image:: https://raw.githubusercontent.com/OCA/sale-blanket/18.0/sale_blanket_order/static/description/PO_from_BO.png
|
|
146
|
+
.. |image5| image:: https://raw.githubusercontent.com/OCA/sale-blanket/18.0/sale_blanket_order/static/description/BO_lines.png
|
|
147
|
+
.. |image6| image:: https://raw.githubusercontent.com/OCA/sale-blanket/18.0/sale_blanket_order/static/description/PO_BOLine.png
|
|
126
148
|
|
|
127
149
|
Bug Tracker
|
|
128
150
|
===========
|
|
129
151
|
|
|
130
|
-
Bugs are tracked on `GitHub Issues <https://github.com/OCA/sale-
|
|
152
|
+
Bugs are tracked on `GitHub Issues <https://github.com/OCA/sale-blanket/issues>`_.
|
|
131
153
|
In case of trouble, please check there if your issue has already been reported.
|
|
132
154
|
If you spotted it first, help us to smash it by providing a detailed and welcomed
|
|
133
|
-
`feedback <https://github.com/OCA/sale-
|
|
155
|
+
`feedback <https://github.com/OCA/sale-blanket/issues/new?body=module:%20sale_blanket_order%0Aversion:%2018.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
|
|
134
156
|
|
|
135
157
|
Do not contact contributors directly about support or help with technical issues.
|
|
136
158
|
|
|
@@ -181,6 +203,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
|
|
|
181
203
|
mission is to support the collaborative development of Odoo features and
|
|
182
204
|
promote its widespread use.
|
|
183
205
|
|
|
184
|
-
This module is part of the `OCA/sale-
|
|
206
|
+
This module is part of the `OCA/sale-blanket <https://github.com/OCA/sale-blanket/tree/18.0/sale_blanket_order>`_ project on GitHub.
|
|
185
207
|
|
|
186
208
|
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
|
|
@@ -1,25 +1,26 @@
|
|
|
1
|
-
odoo/addons/sale_blanket_order/README.rst,sha256=
|
|
1
|
+
odoo/addons/sale_blanket_order/README.rst,sha256=6zmBOczrsVe7xnTksneSv_BBOOmz1RXwKvFSzKITAOU,6900
|
|
2
2
|
odoo/addons/sale_blanket_order/__init__.py,sha256=rKfzYX9RhkkCxgh2f0PJLYN45Kw8T8-fwxw1pbjLuug,108
|
|
3
|
-
odoo/addons/sale_blanket_order/__manifest__.py,sha256
|
|
4
|
-
odoo/addons/sale_blanket_order/data/ir_cron.xml,sha256=
|
|
3
|
+
odoo/addons/sale_blanket_order/__manifest__.py,sha256=-bAEuKoBr2v0VrkbsedCJI1cwtgTR-S_7uJylps5kcE,999
|
|
4
|
+
odoo/addons/sale_blanket_order/data/ir_cron.xml,sha256=X7ZZAlOwACAxbhWWI8ml7OhLHOF_gWaI8zJtLe-SMts,749
|
|
5
5
|
odoo/addons/sale_blanket_order/data/sequence.xml,sha256=xsEzImnYlOTADfACH_eBMFFjdy6nM_WqJTWJ3MN1_eM,416
|
|
6
|
-
odoo/addons/sale_blanket_order/i18n/de.po,sha256=
|
|
7
|
-
odoo/addons/sale_blanket_order/i18n/es.po,sha256=
|
|
8
|
-
odoo/addons/sale_blanket_order/i18n/fr.po,sha256=
|
|
9
|
-
odoo/addons/sale_blanket_order/i18n/fr_FR.po,sha256=
|
|
10
|
-
odoo/addons/sale_blanket_order/i18n/it.po,sha256=
|
|
11
|
-
odoo/addons/sale_blanket_order/i18n/pt.po,sha256=
|
|
12
|
-
odoo/addons/sale_blanket_order/i18n/sale_blanket_order.pot,sha256=
|
|
6
|
+
odoo/addons/sale_blanket_order/i18n/de.po,sha256=Bxbp9pBtzg6cANls-puIwA9n--CD0PFl_xWwrV9lghU,43507
|
|
7
|
+
odoo/addons/sale_blanket_order/i18n/es.po,sha256=hXalrAhXM97BzY5_6ysSSOOQ8BVw8LBE9N_Y2tfzmpI,43801
|
|
8
|
+
odoo/addons/sale_blanket_order/i18n/fr.po,sha256=61FzYCZLYJ89V-xmX3mDsXRM6XAywUQm3l35EujxUyQ,43484
|
|
9
|
+
odoo/addons/sale_blanket_order/i18n/fr_FR.po,sha256=2uh9bKojCnLuNCc2m0whQBq3JDgCnjqCCcTfLWaThq4,43451
|
|
10
|
+
odoo/addons/sale_blanket_order/i18n/it.po,sha256=L0PSPvElyVam07_FtgNgTJOKEWHm0R7k5Hsb6qgmKYc,43225
|
|
11
|
+
odoo/addons/sale_blanket_order/i18n/pt.po,sha256=KaUVIngbe6A60uEcctZZV-ONz0UMbZf8eX8xX1xEtLw,38132
|
|
12
|
+
odoo/addons/sale_blanket_order/i18n/sale_blanket_order.pot,sha256=2wgvZqwWpLCa-4le4StdN8wA5QccI7bHy7fm1hCFArg,37641
|
|
13
13
|
odoo/addons/sale_blanket_order/models/__init__.py,sha256=7adrBSDps9-KQKNJjoCBKeoWgeF21I62H9yqyQVcZGM,90
|
|
14
|
-
odoo/addons/sale_blanket_order/models/blanket_orders.py,sha256=
|
|
14
|
+
odoo/addons/sale_blanket_order/models/blanket_orders.py,sha256=c_H-pp0SQdervNLGjm-ahSwkKsrCIcOAcSeUjVrbQIw,26325
|
|
15
15
|
odoo/addons/sale_blanket_order/models/sale_config_settings.py,sha256=zYTEVPXYmCUp8p-OYyIiGdZajGl07HGNBrrIkxB1GwQ,410
|
|
16
|
-
odoo/addons/sale_blanket_order/models/sale_orders.py,sha256=
|
|
16
|
+
odoo/addons/sale_blanket_order/models/sale_orders.py,sha256=EAuIqDG4Z7ABxbSBUQ7FzKEzb7BrRhZNB92Elo_4l8E,7572
|
|
17
|
+
odoo/addons/sale_blanket_order/readme/CONTEXT.md,sha256=wOxt02O7J6yLZOTTC6V-f5k0IIXEmxRzAM88lJQrM4o,633
|
|
17
18
|
odoo/addons/sale_blanket_order/readme/CONTRIBUTORS.md,sha256=fJugLGdf1dLnUhz5Z07BBOrKRhY6IViSzuhhZdNuLKw,529
|
|
18
19
|
odoo/addons/sale_blanket_order/readme/CREDITS.md,sha256=YP3UAmtN99a01txssowJnlWMSHoFGSrDmvhW_kir-dQ,87
|
|
19
20
|
odoo/addons/sale_blanket_order/readme/DESCRIPTION.md,sha256=zLsygDRJRyguTPv-AbBQ-o-qDNMcLF5WhO-W5sCQIzo,311
|
|
20
21
|
odoo/addons/sale_blanket_order/readme/USAGE.md,sha256=F3duHsDRx_XpUM66kQnLlUouNttk_7KsJhRzmfsaKHY,1795
|
|
21
|
-
odoo/addons/sale_blanket_order/report/report.xml,sha256=
|
|
22
|
-
odoo/addons/sale_blanket_order/report/templates.xml,sha256=
|
|
22
|
+
odoo/addons/sale_blanket_order/report/report.xml,sha256=BOdh42iNPyEQw0307Q3WhoQ0CILhLWj44UfJjogPQJg,708
|
|
23
|
+
odoo/addons/sale_blanket_order/report/templates.xml,sha256=IXb4Ufp29mdNtsogBiBoOrP-HE31nA3RoKwKmr-T77M,9084
|
|
23
24
|
odoo/addons/sale_blanket_order/security/ir.model.access.csv,sha256=CaWBy-ISssj-W2zxpxQfUDupMjhkOjGrPv31NMw17fg,1170
|
|
24
25
|
odoo/addons/sale_blanket_order/security/security.xml,sha256=N9WohkMmYoGzxQ-AiXi-MNd3-YJnwCcZkYIGSRqO-CE,1039
|
|
25
26
|
odoo/addons/sale_blanket_order/static/description/BO_actions.png,sha256=d7_B_xJ_cE8V2gNnpGRSx9bSpDSoeERfG0mKn9y41Qg,41353
|
|
@@ -29,18 +30,19 @@ odoo/addons/sale_blanket_order/static/description/BO_menu.png,sha256=TWKnQPgzBgN
|
|
|
29
30
|
odoo/addons/sale_blanket_order/static/description/PO_BOLine.png,sha256=O8dfvlVOqDcmrKrHtWw5J1gm76fOQ53YCtu9_ujb4bs,37234
|
|
30
31
|
odoo/addons/sale_blanket_order/static/description/PO_from_BO.png,sha256=lmRWLs1DYkXmZfRVn_Hg2X8nEfazH2eVZ8unVlcdj-0,27671
|
|
31
32
|
odoo/addons/sale_blanket_order/static/description/icon.png,sha256=6xBPJauaFOF0KDHfHgQopSc28kKvxMaeoQFQWZtfZDo,9455
|
|
32
|
-
odoo/addons/sale_blanket_order/static/description/index.html,sha256
|
|
33
|
+
odoo/addons/sale_blanket_order/static/description/index.html,sha256=uyVplISL2QP7GxvHA57IkZp1fe2Gs9_JoYLEhASIprc,18226
|
|
34
|
+
odoo/addons/sale_blanket_order/static/src/js/disable_add_order_line.esm.js,sha256=7qz-sPBpoESHDvSsD9USVX_2relewhEDXLsY_CpiCOg,893
|
|
33
35
|
odoo/addons/sale_blanket_order/tests/__init__.py,sha256=0z5WGDe8esOreObf1dM01uMp-O3GmL20PeIvqK0usXY,130
|
|
34
|
-
odoo/addons/sale_blanket_order/tests/test_blanket_orders.py,sha256=
|
|
36
|
+
odoo/addons/sale_blanket_order/tests/test_blanket_orders.py,sha256=aPYPtMgeuViTlIk6-rxMpGvUDDr2Ot-Dxzdvrc9wmaQ,18465
|
|
35
37
|
odoo/addons/sale_blanket_order/tests/test_sale_order.py,sha256=N40dy7MTXFcaOCoJ30b-UCEk0k8DwehKrE9bliTdrFg,7251
|
|
36
|
-
odoo/addons/sale_blanket_order/views/sale_blanket_order_line_views.xml,sha256=
|
|
37
|
-
odoo/addons/sale_blanket_order/views/sale_blanket_order_views.xml,sha256=
|
|
38
|
+
odoo/addons/sale_blanket_order/views/sale_blanket_order_line_views.xml,sha256=D0t9l0qrElWqpK9T0Tzr_5yY9RaCBJAE96s-0usPWPg,7211
|
|
39
|
+
odoo/addons/sale_blanket_order/views/sale_blanket_order_views.xml,sha256=OY7uzy-Cwh6Qxk6zSh-gcZuSuIFWhStjSB3w3PGOK7I,17171
|
|
38
40
|
odoo/addons/sale_blanket_order/views/sale_config_settings.xml,sha256=h9cVMWvDbnZZszQU7BrIKuUtxw-vQvth8PXCvkWfxUw,1116
|
|
39
|
-
odoo/addons/sale_blanket_order/views/sale_order_views.xml,sha256=
|
|
41
|
+
odoo/addons/sale_blanket_order/views/sale_order_views.xml,sha256=RUObyUYPm3yCtp12quphyC8UYia0yvOIQVbxscjPUhA,1174
|
|
40
42
|
odoo/addons/sale_blanket_order/wizard/__init__.py,sha256=4P5jq1IlE7JDNFP0ly3-alAHbqdIYf6fLjQjotKrG08,99
|
|
41
|
-
odoo/addons/sale_blanket_order/wizard/create_sale_orders.py,sha256=
|
|
42
|
-
odoo/addons/sale_blanket_order/wizard/create_sale_orders.xml,sha256=
|
|
43
|
-
odoo_addon_sale_blanket_order-
|
|
44
|
-
odoo_addon_sale_blanket_order-
|
|
45
|
-
odoo_addon_sale_blanket_order-
|
|
46
|
-
odoo_addon_sale_blanket_order-
|
|
43
|
+
odoo/addons/sale_blanket_order/wizard/create_sale_orders.py,sha256=pgB2SjEF09Wdq4f2Gbhalk2JycCns073Rmg8PzPu74w,8644
|
|
44
|
+
odoo/addons/sale_blanket_order/wizard/create_sale_orders.xml,sha256=AkNfOsEqqrb5ruxbsdX9NSJfAbUDeY6fD4kJxvz-59Y,2637
|
|
45
|
+
odoo_addon_sale_blanket_order-18.0.1.0.0.12.dist-info/METADATA,sha256=5Pt62Yjr529e8R7GzToiBiKYgaLPPpD6tOd_JeFAjcs,7441
|
|
46
|
+
odoo_addon_sale_blanket_order-18.0.1.0.0.12.dist-info/WHEEL,sha256=ZhOvUsYhy81Dx67gN3TV0RchQWBIIzutDZaJODDg2Vo,81
|
|
47
|
+
odoo_addon_sale_blanket_order-18.0.1.0.0.12.dist-info/top_level.txt,sha256=QE6RBQ0QX5f4eFuUcGgU5Kbq1A_qJcDs-e_vpr6pmfU,4
|
|
48
|
+
odoo_addon_sale_blanket_order-18.0.1.0.0.12.dist-info/RECORD,,
|