odoo14-addon-ddmrp 14.0.1.23.4__py3-none-any.whl → 14.0.1.24.0__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.
@@ -7,7 +7,7 @@ DDMRP
7
7
  !! This file is generated by oca-gen-addon-readme !!
8
8
  !! changes will be overwritten. !!
9
9
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
10
- !! source digest: sha256:063af95a356227267e8e39893c40820c278c5d6c3b0e7eeaa56937e9fdab706c
10
+ !! source digest: sha256:81c9f86d5d94033c4e599e426d7a95628e63ebcb642deff966a8e49a5b951476
11
11
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
12
12
 
13
13
  .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
@@ -5,7 +5,7 @@
5
5
  {
6
6
  "name": "DDMRP",
7
7
  "summary": "Demand Driven Material Requirements Planning",
8
- "version": "14.0.1.23.4",
8
+ "version": "14.0.1.24.0",
9
9
  "license": "LGPL-3",
10
10
  "development_status": "Beta",
11
11
  "author": "ForgeFlow, " "Odoo Community Association (OCA)",
@@ -629,6 +629,11 @@ msgstr ""
629
629
  msgid "Get configuration warnings for stock buffers."
630
630
  msgstr ""
631
631
 
632
+ #. module: ddmrp
633
+ #: model_terms:ir.ui.view,arch_db:ddmrp.view_move_tree
634
+ msgid "Go to Source"
635
+ msgstr ""
636
+
632
637
  #. module: ddmrp
633
638
  #: model:ir.model.fields.selection,name:ddmrp.selection__mrp_production__execution_priority_level__3_green
634
639
  #: model:ir.model.fields.selection,name:ddmrp.selection__purchase_order_line__execution_priority_level__3_green
@@ -1071,7 +1076,7 @@ msgstr ""
1071
1076
 
1072
1077
  #. module: ddmrp
1073
1078
  #: model_terms:ir.ui.view,arch_db:ddmrp.stock_buffer_view_tree
1074
- msgid "No stock available on source location for distributed buffer"
1079
+ msgid "No stock available in source location for distributed buffer"
1075
1080
  msgstr ""
1076
1081
 
1077
1082
  #. module: ddmrp
@@ -1136,11 +1141,6 @@ msgstr ""
1136
1141
  msgid "On-Hand Alert: Yellow"
1137
1142
  msgstr ""
1138
1143
 
1139
- #. module: ddmrp
1140
- #: model_terms:ir.ui.view,arch_db:ddmrp.stock_buffer_view_tree
1141
- msgid "Open Non-completed Moves"
1142
- msgstr ""
1143
-
1144
1144
  #. module: ddmrp
1145
1145
  #: code:addons/ddmrp/hooks.py:0
1146
1146
  #, python-format
@@ -1421,11 +1421,6 @@ msgstr ""
1421
1421
  msgid "RFQ Qty (Outside DLT)"
1422
1422
  msgstr ""
1423
1423
 
1424
- #. module: ddmrp
1425
- #: model_terms:ir.ui.view,arch_db:ddmrp.stock_buffer_view_tree
1426
- msgid "RFQ Qty Outside DLT"
1427
- msgstr ""
1428
-
1429
1424
  #. module: ddmrp
1430
1425
  #: model:product.product,name:ddmrp.product_product_rm01
1431
1426
  #: model:product.template,name:ddmrp.product_product_rm01_product_template
@@ -1601,12 +1596,28 @@ msgid ""
1601
1596
  "Shows the current on-hand for stock buffers expressed as coverage days."
1602
1597
  msgstr ""
1603
1598
 
1599
+ #. module: ddmrp
1600
+ #: model_terms:ir.ui.view,arch_db:ddmrp.stock_buffer_view_tree
1601
+ msgid ""
1602
+ "Some RFQ quantities are outside of the DLT Horizon and may require "
1603
+ "rescheduling. Press this button to display the involved "
1604
+ "RFQs"
1605
+ msgstr ""
1606
+
1604
1607
  #. module: ddmrp
1605
1608
  #: model_terms:ir.ui.view,arch_db:ddmrp.stock_buffer_view_form
1606
1609
  msgid ""
1607
- "Some incoming quantities are outside of the DLT Horizon and may require "
1608
- "rescheduling. Press this button "
1609
- "to display the involved supply orders"
1610
+ "Some incoming RFQs are outside of the DLT Horizon and may require "
1611
+ "rescheduling. Press this button"
1612
+ " to display the involved supply orders"
1613
+ msgstr ""
1614
+
1615
+ #. module: ddmrp
1616
+ #: model_terms:ir.ui.view,arch_db:ddmrp.stock_buffer_view_form
1617
+ msgid ""
1618
+ "Some incoming qty is outside of the DLT Horizon and may require "
1619
+ "rescheduling. Press this button"
1620
+ " to display the involved supply orders"
1610
1621
  msgstr ""
1611
1622
 
1612
1623
  #. module: ddmrp
@@ -1696,6 +1707,12 @@ msgstr ""
1696
1707
  msgid "Stock Move Last Year Consumption"
1697
1708
  msgstr ""
1698
1709
 
1710
+ #. module: ddmrp
1711
+ #: code:addons/ddmrp/models/stock_move.py:0
1712
+ #, python-format
1713
+ msgid "Stock Move Source"
1714
+ msgstr ""
1715
+
1699
1716
  #. module: ddmrp
1700
1717
  #: model_terms:ir.ui.view,arch_db:ddmrp.view_move_consumption_pivot
1701
1718
  msgid "Stock Moves Yearly Consumption"
@@ -1920,7 +1937,7 @@ msgstr ""
1920
1937
 
1921
1938
  #. module: ddmrp
1922
1939
  #: model_terms:ir.ui.view,arch_db:ddmrp.stock_buffer_view_form
1923
- msgid "View Incoming (Within DLT)"
1940
+ msgid "View Incoming Moves (Within DLT)"
1924
1941
  msgstr ""
1925
1942
 
1926
1943
  #. module: ddmrp
@@ -1362,17 +1362,6 @@ class StockBuffer(models.Model):
1362
1362
  "domain": str([("id", "in", lines.ids)]),
1363
1363
  }
1364
1364
 
1365
- def open_moves(self):
1366
- self.ensure_one()
1367
- # Utility method used to add an "Open Moves" button in the buffer
1368
- # planning view
1369
- domain = self._search_open_stock_moves_domain()
1370
- moves = self.env["stock.move"].search(domain)
1371
- moves = moves.filtered(
1372
- lambda move: move.location_dest_id.is_sublocation_of(self.location_id)
1373
- )
1374
- return self._stock_move_tree_view(moves)
1375
-
1376
1365
  def _get_horizon_adu_past_demand(self):
1377
1366
  return self.adu_calculation_method.horizon_past or 0
1378
1367
 
@@ -1821,72 +1810,72 @@ class StockBuffer(models.Model):
1821
1810
  wizard.make_procurement()
1822
1811
  return True
1823
1812
 
1824
- def _search_purchase_order_lines_incoming(self, outside_dlt=False):
1813
+ def action_view_supply_moves(self):
1814
+ result = self.env["ir.actions.actions"]._for_xml_id("stock.stock_move_action")
1815
+ result["context"] = {}
1816
+ moves = self._search_stock_moves_incoming() + self._search_stock_moves_incoming(
1817
+ outside_dlt=True
1818
+ )
1819
+ result["domain"] = [("id", "in", moves.ids)]
1820
+ return result
1821
+
1822
+ def _get_rfq_dlt(self, outside_dlt=False):
1823
+ self.ensure_one()
1825
1824
  cut_date = self._get_incoming_supply_date_limit()
1826
1825
  if not outside_dlt:
1827
1826
  pols = self.purchase_line_ids.filtered(
1828
1827
  lambda l: l.date_planned <= fields.Datetime.to_datetime(cut_date)
1829
- and l.order_id.state in ("draft", "sent")
1828
+ and l.state in ("draft", "sent")
1830
1829
  )
1831
1830
  else:
1832
1831
  pols = self.purchase_line_ids.filtered(
1833
1832
  lambda l: l.date_planned > fields.Datetime.to_datetime(cut_date)
1834
- and l.order_id.state in ("draft", "sent")
1833
+ and l.state in ("draft", "sent")
1835
1834
  )
1836
1835
  return pols
1837
1836
 
1838
- def action_view_supply(self, outside_dlt=False):
1839
- if self.item_type == "purchased":
1840
- pols = self._search_purchase_order_lines_incoming(outside_dlt)
1841
- moves = self._search_stock_moves_incoming(outside_dlt)
1842
- while moves.mapped("move_orig_ids"):
1843
- moves = moves.mapped("move_orig_ids")
1844
- pos = pols.mapped("order_id") + moves.mapped("purchase_line_id.order_id")
1845
- result = self.env["ir.actions.actions"]._for_xml_id("purchase.purchase_rfq")
1846
- # Remove the context since the action display RFQ and not PO.
1847
- result["context"] = {}
1848
- result["domain"] = [("id", "in", pos.ids)]
1849
- elif self.item_type == "manufactured":
1850
- moves = self._search_stock_moves_incoming(outside_dlt)
1851
- mos = moves.mapped("production_id")
1852
- result = self.env["ir.actions.actions"]._for_xml_id(
1853
- "mrp.mrp_production_action"
1854
- )
1855
- result["context"] = {}
1856
- result["domain"] = [("id", "in", mos.ids)]
1857
- else:
1858
- moves = self._search_stock_moves_incoming(outside_dlt)
1859
- picks = moves.mapped("picking_id")
1860
- result = self.env["ir.actions.actions"]._for_xml_id(
1861
- "stock.action_picking_tree_all"
1862
- )
1863
- result["context"] = {}
1864
- result["domain"] = [("id", "in", picks.ids)]
1837
+ def action_view_supply_moves_inside_dlt_window(self):
1838
+ result = self.env["ir.actions.actions"]._for_xml_id("stock.stock_move_action")
1839
+ moves = self._search_stock_moves_incoming()
1840
+ result["context"] = {}
1841
+ result["domain"] = [("id", "in", moves.ids)]
1865
1842
  return result
1866
1843
 
1867
- def action_view_supply_inside_dlt_window(self):
1868
- return self.action_view_supply()
1844
+ def action_view_supply_moves_outside_dlt_window(self):
1845
+ result = self.env["ir.actions.actions"]._for_xml_id("stock.stock_move_action")
1846
+ moves = self._search_stock_moves_incoming(outside_dlt=True)
1847
+ result["context"] = {}
1848
+ result["domain"] = [("id", "in", moves.ids)]
1849
+ return result
1869
1850
 
1870
- def action_view_supply_outside_dlt_window(self):
1871
- return self.action_view_supply(outside_dlt=True)
1851
+ def action_view_supply_rfq_inside_dlt_window(self):
1852
+ result = self.env["ir.actions.actions"]._for_xml_id("purchase.purchase_rfq")
1853
+ pols = self._get_rfq_dlt()
1854
+ pos = pols.mapped("order_id")
1855
+ result["context"] = {}
1856
+ result["domain"] = [("id", "in", pos.ids)]
1857
+ return result
1872
1858
 
1873
- def action_view_qualified_demand_pickings(self):
1874
- moves = self.qualified_demand_stock_move_ids
1875
- picks = moves.mapped("picking_id")
1876
- result = self.env["ir.actions.actions"]._for_xml_id(
1877
- "stock.action_picking_tree_all"
1878
- )
1859
+ def action_view_supply_rfq_outside_dlt_window(self):
1860
+ result = self.env["ir.actions.actions"]._for_xml_id("purchase.purchase_rfq")
1861
+ pols = self._get_rfq_dlt(outside_dlt=True)
1862
+ pos = pols.mapped("order_id")
1879
1863
  result["context"] = {}
1880
- result["domain"] = [("id", "in", picks.ids)]
1864
+ result["domain"] = [("id", "in", pos.ids)]
1865
+ return result
1866
+
1867
+ def action_view_qualified_demand_moves(self):
1868
+ result = self.env["ir.actions.actions"]._for_xml_id("stock.stock_move_action")
1869
+ result["context"] = {}
1870
+ result["domain"] = [("id", "in", self.qualified_demand_stock_move_ids.ids)]
1881
1871
  return result
1882
1872
 
1883
1873
  def action_view_qualified_demand_mrp(self):
1884
- mrp_moves = self.qualified_demand_mrp_move_ids
1885
1874
  result = self.env["ir.actions.actions"]._for_xml_id(
1886
1875
  "mrp_multi_level.mrp_move_action"
1887
1876
  )
1888
1877
  result["context"] = {}
1889
- result["domain"] = [("id", "in", mrp_moves.ids)]
1878
+ result["domain"] = [("id", "in", self.qualified_demand_mrp_move_ids.ids)]
1890
1879
  return result
1891
1880
 
1892
1881
  def action_view_past_adu_direct_demand(self):
@@ -1,7 +1,7 @@
1
1
  # Copyright 2019-20 ForgeFlow S.L. (http://www.forgeflow.com)
2
2
  # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).
3
3
 
4
- from odoo import api, fields, models
4
+ from odoo import _, api, fields, models
5
5
 
6
6
 
7
7
  class StockMove(models.Model):
@@ -84,3 +84,69 @@ class StockMove(models.Model):
84
84
  buffer.cron_actions(only_nfp="out")
85
85
  for buffer in in_buffers.with_context(no_ddmrp_history=True):
86
86
  buffer.cron_actions(only_nfp="in")
87
+
88
+ def _get_all_linked_moves(self):
89
+ """Retrieve all linked moves both origin and destination recursively."""
90
+
91
+ def get_moves(move_set, attr):
92
+ new_moves = move_set.mapped(attr)
93
+ while new_moves:
94
+ move_set |= new_moves
95
+ new_moves = new_moves.mapped(attr)
96
+ return move_set
97
+
98
+ all_moves = (
99
+ self | get_moves(self, "move_orig_ids") | get_moves(self, "move_dest_ids")
100
+ )
101
+ return all_moves
102
+
103
+ def _get_source_field_candidates(self):
104
+ """Extend for more source field candidates."""
105
+ return [
106
+ "sale_line_id.order_id",
107
+ "purchase_line_id.order_id",
108
+ "production_id",
109
+ "raw_material_production_id",
110
+ "unbuild_id",
111
+ "repair_id",
112
+ "rma_line_id",
113
+ "picking_id",
114
+ ]
115
+
116
+ def _has_nested_field(self, field):
117
+ """Check if an object has a nested chain of fields."""
118
+ current_object = self
119
+ try:
120
+ for field in field.split("."):
121
+ current_object = getattr(current_object, field)
122
+ return True
123
+ except AttributeError:
124
+ return False
125
+
126
+ def _get_source_record(self):
127
+ """Find the first source record in the field candidates linked with the moves,
128
+ prioritizing the order of field candidates."""
129
+ moves = self._get_all_linked_moves()
130
+ field_candidates = self._get_source_field_candidates()
131
+ # Iterate over the prioritized list of candidate fields
132
+ for field in field_candidates:
133
+ if self._has_nested_field(field):
134
+ for move in moves:
135
+ record = move.mapped(field)
136
+ if record:
137
+ return record
138
+ return False
139
+
140
+ def action_open_stock_move_source(self):
141
+ """Open the source record of the stock move, if it exists."""
142
+ self.ensure_one()
143
+ record = self._get_source_record()
144
+ if record:
145
+ return {
146
+ "name": getattr(record, "name", _("Stock Move Source")),
147
+ "view_mode": "form",
148
+ "res_model": record._name,
149
+ "type": "ir.actions.act_window",
150
+ "res_id": record.id,
151
+ }
152
+ return False
@@ -366,7 +366,7 @@ ul.auto-toc {
366
366
  !! This file is generated by oca-gen-addon-readme !!
367
367
  !! changes will be overwritten. !!
368
368
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
369
- !! source digest: sha256:063af95a356227267e8e39893c40820c278c5d6c3b0e7eeaa56937e9fdab706c
369
+ !! source digest: sha256:81c9f86d5d94033c4e599e426d7a95628e63ebcb642deff966a8e49a5b951476
370
370
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
371
371
  <p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/lgpl-3.0-standalone.html"><img alt="License: LGPL-3" src="https://img.shields.io/badge/licence-LGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/ddmrp/tree/14.0/ddmrp"><img alt="OCA/ddmrp" src="https://img.shields.io/badge/github-OCA%2Fddmrp-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/ddmrp-14-0/ddmrp-14-0-ddmrp"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/ddmrp&amp;target_branch=14.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
372
372
  <p>Demand Driven Material Requirements Planning is a formal multi-echelon
@@ -38,24 +38,19 @@
38
38
  type="object"
39
39
  />
40
40
  <field name="incoming_dlt_qty" string="Incoming Within DLT" />
41
- <field
42
- name="incoming_total_qty"
43
- string="Total Incoming"
44
- optional="show"
45
- />
46
41
  <field
47
42
  name="incoming_outside_dlt_qty"
48
43
  string="Incoming Outside DLT"
49
44
  optional="hide"
50
45
  />
51
46
  <field
52
- name="rfq_outside_dlt_qty"
53
- string="RFQ Qty Outside DLT"
54
- optional="hide"
47
+ name="incoming_total_qty"
48
+ string="Total Incoming"
49
+ optional="show"
55
50
  />
56
51
  <button
57
- title="Open Non-completed Moves"
58
- name="open_moves"
52
+ title="Total Incoming"
53
+ name="action_view_supply_moves"
59
54
  icon="fa-exchange"
60
55
  type="object"
61
56
  />
@@ -71,13 +66,22 @@
71
66
  />
72
67
  <button
73
68
  title="Some incoming quantities are outside of the DLT Horizon and may require rescheduling. Press this button to display the involved supply orders"
74
- name="action_view_supply_outside_dlt_window"
69
+ name="action_view_supply_moves_outside_dlt_window"
75
70
  icon="fa-warning"
76
71
  type="object"
77
- attrs="{'invisible':[('incoming_outside_dlt_qty', '=', 0), ('rfq_outside_dlt_qty', '=', 0)]}"
72
+ attrs="{'invisible':[('incoming_outside_dlt_qty', '=', 0)]}"
78
73
  />
74
+ <field name="rfq_outside_dlt_qty" invisible="1" />
79
75
  <button
80
- title="No stock available on source location for distributed buffer"
76
+ title="Some RFQ quantities are outside of the DLT Horizon and may require rescheduling.
77
+ Press this button to display the involved RFQs"
78
+ name="action_view_supply_rfq_outside_dlt_window"
79
+ icon="fa-warning"
80
+ type="object"
81
+ attrs="{'invisible':[('rfq_outside_dlt_qty', '=', 0)]}"
82
+ />
83
+ <button
84
+ title="No stock available in source location for distributed buffer"
81
85
  name="action_dummy"
82
86
  icon="fa-warning"
83
87
  type="object"
@@ -397,8 +401,8 @@
397
401
  <div name="incoming_dlt_qty" class="o_row">
398
402
  <field name="incoming_dlt_qty" />
399
403
  <button
400
- title="View Incoming (Within DLT)"
401
- name="action_view_supply_inside_dlt_window"
404
+ title="View Incoming Moves (Within DLT)"
405
+ name="action_view_supply_moves_inside_dlt_window"
402
406
  icon="fa-search"
403
407
  type="object"
404
408
  attrs="{'invisible': [('incoming_dlt_qty', '=', 0)]}"
@@ -409,11 +413,24 @@
409
413
  attrs="{'invisible':[('incoming_outside_dlt_qty', '=', 0), ('rfq_outside_dlt_qty', '=', 0)]}"
410
414
  >
411
415
  <button
412
- title="Some incoming quantities are outside of the DLT Horizon and may require rescheduling.
413
- Press this button to display the involved supply orders"
414
- name="action_view_supply_outside_dlt_window"
416
+ title="Some incoming qty is outside of the DLT Horizon and may require rescheduling.
417
+ Press this button to display the involved supply orders"
418
+ name="action_view_supply_moves_outside_dlt_window"
419
+ icon="fa-warning"
420
+ type="object"
421
+ attrs="{'invisible':[('incoming_outside_dlt_qty', '=', 0)]}"
422
+ />
423
+ <field
424
+ name="rfq_outside_dlt_qty"
425
+ invisible="1"
426
+ />
427
+ <button
428
+ title="Some incoming RFQs are outside of the DLT Horizon and may require rescheduling.
429
+ Press this button to display the involved supply orders"
430
+ name="action_view_supply_rfq_outside_dlt_window"
415
431
  icon="fa-warning"
416
432
  type="object"
433
+ attrs="{'invisible':[('rfq_outside_dlt_qty', '=', 0)]}"
417
434
  />
418
435
  (Outside DLT:
419
436
  <field
@@ -436,7 +453,7 @@
436
453
  />
437
454
  <button
438
455
  title="View Qualified Demand from Pickings"
439
- name="action_view_qualified_demand_pickings"
456
+ name="action_view_qualified_demand_moves"
440
457
  icon="fa-search"
441
458
  type="object"
442
459
  attrs="{'invisible': ['|', ('qualified_demand', '=', 0), ('qualified_demand_stock_move_ids', '=', [])]}"
@@ -2,15 +2,18 @@
2
2
  <!-- Copyright 2018-20 ForgeFlow S.L. (http://www.forgeflow.com)
3
3
  License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl-3.0) -->
4
4
  <odoo>
5
- <!--Fixes to show date on stock move report-->
6
- <!--If someday Odoo corrects this, we could remove this views-->
7
5
  <record id="view_move_tree" model="ir.ui.view">
8
6
  <field name="name">stock.move.tree</field>
9
7
  <field name="model">stock.move</field>
10
8
  <field name="inherit_id" ref="stock.view_move_tree" />
11
9
  <field name="arch" type="xml">
12
- <field name="date" position="after">
13
- <field name="date" />
10
+ <field name="state" position="after">
11
+ <button
12
+ title="Go to Source"
13
+ name="action_open_stock_move_source"
14
+ icon="fa-arrow-right"
15
+ type="object"
16
+ />
14
17
  </field>
15
18
  </field>
16
19
  </record>
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: odoo14-addon-ddmrp
3
- Version: 14.0.1.23.4
3
+ Version: 14.0.1.24.0
4
4
  Summary: Demand Driven Material Requirements Planning
5
5
  Home-page: https://github.com/OCA/ddmrp
6
6
  Author: ForgeFlow, Odoo Community Association (OCA)
@@ -30,7 +30,7 @@ DDMRP
30
30
  !! This file is generated by oca-gen-addon-readme !!
31
31
  !! changes will be overwritten. !!
32
32
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
33
- !! source digest: sha256:063af95a356227267e8e39893c40820c278c5d6c3b0e7eeaa56937e9fdab706c
33
+ !! source digest: sha256:81c9f86d5d94033c4e599e426d7a95628e63ebcb642deff966a8e49a5b951476
34
34
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
35
35
 
36
36
  .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
@@ -1,6 +1,6 @@
1
- odoo/addons/ddmrp/README.rst,sha256=AtgMXBCxL-HaOKadRZV6-Eb4L_RIpcWt0LcLufWjetU,12239
1
+ odoo/addons/ddmrp/README.rst,sha256=GCqN7b4B9CaTh6gw0j9Yn4SmfsdNd41CvqcupY5ce8M,12239
2
2
  odoo/addons/ddmrp/__init__.py,sha256=nksc4q8fpyy8n5h1T3-Wl9lh_CpdgZj9bBt5fQGvW5Y,98
3
- odoo/addons/ddmrp/__manifest__.py,sha256=G4d3RGEzzK-YZ_doH9jEN311Hp1GgiveGLxEONJ8eoM,2537
3
+ odoo/addons/ddmrp/__manifest__.py,sha256=-tBy7-mJFYQKRZHvmj6Fzn9A36YPsBMDw1mgLFLp7Ts,2537
4
4
  odoo/addons/ddmrp/hooks.py,sha256=81CupDt-4OpjEz7EXiAyqkUHzZ_cYLI5WiyEO6Y4DdQ,3269
5
5
  odoo/addons/ddmrp/data/decimal_precision_data.xml,sha256=mzYy_aam6bZLGPFl7HPhRv5XGTDCbHAKVZeAl0UYms4,528
6
6
  odoo/addons/ddmrp/data/ir_cron.xml,sha256=sW-Y2O0ZfpxQ6IcOOMGzgPX2k-vnSJbKxdcRD_6ybhY,1510
@@ -16,7 +16,7 @@ odoo/addons/ddmrp/demo/product_product_demo.xml,sha256=-jp5RGrexRsHIITmPhUGKClat
16
16
  odoo/addons/ddmrp/demo/product_supplierinfo_demo.xml,sha256=cfbqUhoZbhvEqNUwX4jIu3fckMa9yvDUPh6Sfg1jUM0,768
17
17
  odoo/addons/ddmrp/demo/res_partner_demo.xml,sha256=9MG3stWjWBzbLm_94f7IIZ-1K6a19vwmq3XwAA1Nrrs,766
18
18
  odoo/addons/ddmrp/demo/stock_buffer_demo.xml,sha256=R5fo0T_M05zLKCKm2KREjx2QlFo-7zCOKIU46QvwluY,1366
19
- odoo/addons/ddmrp/i18n/ddmrp.pot,sha256=sZVAy-OEKpbOe97Bz5zn9TbvlIsNSdp2k3tnmGMEwiA,70700
19
+ odoo/addons/ddmrp/i18n/ddmrp.pot,sha256=lJwFDt0BGl1ZIc9JQfQI0kXWyDNdfVVqMRe-6RxA7jI,71220
20
20
  odoo/addons/ddmrp/i18n/es.po,sha256=meizuFjF2h4jRKKPOuxAkLY2U82qvouqHmzEZL_KVjY,87057
21
21
  odoo/addons/ddmrp/i18n/es_AR.po,sha256=p6ZDjy2tdg9_XLxG4EQhu19Lostr5PBYGYKj-_GKScQ,85815
22
22
  odoo/addons/ddmrp/i18n/fr.po,sha256=wFTkGx3rVWuycqkh7INaIHT9SMFAp0-qYjMCGg9kzDw,72057
@@ -35,11 +35,11 @@ odoo/addons/ddmrp/models/product_product.py,sha256=oMzmvqX6waFk3TXTrK6AeOzlBpHEJ
35
35
  odoo/addons/ddmrp/models/product_template.py,sha256=sUUZ8kO3V5Cd7phAopCtd_wuMS_7JUR1giVamnPrI54,975
36
36
  odoo/addons/ddmrp/models/purchase_order.py,sha256=9kLCSlskdC-1uDBgAdM4zna-Lw18EB3mIlvci5fo54E,3732
37
37
  odoo/addons/ddmrp/models/res_company.py,sha256=7yGp6UwS0mtoTRY4a4khfufqadLs80pJDEVUnw8icOY,657
38
- odoo/addons/ddmrp/models/stock_buffer.py,sha256=YAqJODC_3wO_B6wCLKMDKuCPhDYni5GXpqDUHFaofr8,79291
38
+ odoo/addons/ddmrp/models/stock_buffer.py,sha256=1p98SshO7TxvK0X-NLz_MwNzB29UBdwibDOTlGjb6Bo,78726
39
39
  odoo/addons/ddmrp/models/stock_buffer_profile.py,sha256=a4jPw9tmIPJxbIm89QKHLlpxY0coJmWu7sY88QfY_Lg,2855
40
40
  odoo/addons/ddmrp/models/stock_buffer_profile_lead_time.py,sha256=8ZQMuxU0a-mob6MIzDSnkTvC3-4KGn4NLtQ2D3Cuwi8,592
41
41
  odoo/addons/ddmrp/models/stock_buffer_profile_variability.py,sha256=vMz4mSk2h2GVqhFidlZgpC3BXGMlyu9zjHm0aO5B7is,601
42
- odoo/addons/ddmrp/models/stock_move.py,sha256=tVOykcNZ5ApOMjsvseCP-FQwdWzXlGc-00WdFdeP624,3596
42
+ odoo/addons/ddmrp/models/stock_move.py,sha256=Xofbwa8qSmxTh9vGQ4gRWA_GueNLWylYamKgbrXZz6c,5915
43
43
  odoo/addons/ddmrp/models/stock_move_line.py,sha256=dJleguJeIUkfzl4dqeFQvLYo60gO4mjYVBukrkJhYFY,339
44
44
  odoo/addons/ddmrp/models/stock_picking.py,sha256=nZg-VTJvlWPYi0U_9JyTaVLww-fCGyy_ONgaf5MpV48,710
45
45
  odoo/addons/ddmrp/models/stock_rule.py,sha256=GHeUZFKfO0IS26epDMLYhJ-bjRjhs-j9uf4DioLoCcQ,2811
@@ -60,7 +60,7 @@ odoo/addons/ddmrp/security/ddmrp_groups.xml,sha256=dW2V1aZD5w9ssvtfaxy73jRf53sNh
60
60
  odoo/addons/ddmrp/security/ddmrp_rules.xml,sha256=W1hYvw6WtAKMLytNHzpQgX0aCx9PTM3fWsmcxrqXL88,2079
61
61
  odoo/addons/ddmrp/security/ir.model.access.csv,sha256=r_v87wOkAnIUwxgJpyZB1nqxCMGIg-jivK4znBVZSKA,2623
62
62
  odoo/addons/ddmrp/static/description/icon.png,sha256=QThDd6zhQU48MY3Y7Ij5m6yWQACbl0BCyoaHLL9-hAQ,7006
63
- odoo/addons/ddmrp/static/description/index.html,sha256=7wkuYCfOcdVosc2R0xcT2d0chqVNdAVE4TqnGvjgO-U,26542
63
+ odoo/addons/ddmrp/static/description/index.html,sha256=egSzf2N9XOc2JdmCMvKrfngdsqttF3h__OBUT5rRfjc,26542
64
64
  odoo/addons/ddmrp/static/img/has_mto_rule.png,sha256=IVYC3_qpiYrSTPfruURd7kQkwpaOnBlQ1Id3WAJisRo,4604
65
65
  odoo/addons/ddmrp/static/img/is_buffered.png,sha256=uGFYPIo5YIE9TO96uu8-LfHAlAtKN97H9j1Ik74hcHQ,5000
66
66
  odoo/addons/ddmrp/static/img/res_partner_eficent-image.jpg,sha256=ja8mU9YHbRwEDOHbXE5ROiKhABWqq4YFQ7cZwHWAqPA,24419
@@ -83,8 +83,8 @@ odoo/addons/ddmrp/views/purchase_order_view.xml,sha256=mw0NRSKz_VilND3OG_sJHP_x1
83
83
  odoo/addons/ddmrp/views/stock_buffer_profile_lead_time_view.xml,sha256=uX0oEwJv3EUYYynV0WuWBuZMfpYGx9j-HuYXxzVaaFA,2919
84
84
  odoo/addons/ddmrp/views/stock_buffer_profile_variability_view.xml,sha256=BLMlWsQD2TwxkZ4U-LQLSGKwJzBUD9WtxLeOX2ajBF4,2987
85
85
  odoo/addons/ddmrp/views/stock_buffer_profile_view.xml,sha256=m14bFUZs6KVNtHX0YqaRsUIh5PNZr-Sp0iQs52BaJ3I,4129
86
- odoo/addons/ddmrp/views/stock_buffer_view.xml,sha256=bRyop_hyT-WdwBdHwtiTtSG_0f4G6M4g5OarxOMNPNs,35520
87
- odoo/addons/ddmrp/views/stock_move_views.xml,sha256=ZC0c_ACXQ7lzlFbBxiT0vgqSBTYnVDvG6NHprAUI2b8,2253
86
+ odoo/addons/ddmrp/views/stock_buffer_view.xml,sha256=Ecx6IodOkGvaKggcJXDq8CrrgaJ7eIIM21XTQtx-p80,36795
87
+ odoo/addons/ddmrp/views/stock_move_views.xml,sha256=p_BHBEX1msl2TBosW_VV6ynHYHjC_q0_608NL1RCKXk,2313
88
88
  odoo/addons/ddmrp/views/stock_picking.xml,sha256=CD82zoeS6Nnbxw_c53fE-L-0YgTSITW-78Y3c63JzuE,684
89
89
  odoo/addons/ddmrp/views/stock_warehouse_views.xml,sha256=wPLTji7AncZWhsWxbQSPJa7_pAhdybYblMxaeJIVQ5c,612
90
90
  odoo/addons/ddmrp/wizards/__init__.py,sha256=dYdY2HkhVuqQEUEx6wtSCOK9318VCiSFpG1JVddME0U,201
@@ -99,7 +99,7 @@ odoo/addons/ddmrp/wizards/mrp_bom_change_location.xml,sha256=a6YZ67nrCkO3MrKy9wN
99
99
  odoo/addons/ddmrp/wizards/multi_level_mrp.py,sha256=7PjXJ4Gx8_DqK81eFSeeGTyN1YETSxWFEs6xddwbS2c,753
100
100
  odoo/addons/ddmrp/wizards/res_config_settings.py,sha256=WquTRzrSDWAUyd4Fk6qRBBkXRKVZiTcWumQNCzmyGGQ,1530
101
101
  odoo/addons/ddmrp/wizards/res_config_settings_views.xml,sha256=X8yZQpuF2xDeSSJWn9dtKt7WbSGc-vWZQjIr7J0y-yk,10278
102
- odoo14_addon_ddmrp-14.0.1.23.4.dist-info/METADATA,sha256=Nkm6rGfW0xajxa_WF6gBfvqtT1vXY7dPWThndwUPzzU,13117
103
- odoo14_addon_ddmrp-14.0.1.23.4.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
104
- odoo14_addon_ddmrp-14.0.1.23.4.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
105
- odoo14_addon_ddmrp-14.0.1.23.4.dist-info/RECORD,,
102
+ odoo14_addon_ddmrp-14.0.1.24.0.dist-info/METADATA,sha256=F3k7_reeZgP3eiayISH-E8AFGQ_2csac_Lj0HvXPhZw,13117
103
+ odoo14_addon_ddmrp-14.0.1.24.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
104
+ odoo14_addon_ddmrp-14.0.1.24.0.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
105
+ odoo14_addon_ddmrp-14.0.1.24.0.dist-info/RECORD,,