odoo-addon-openupgrade-scripts 16.0.1.0.4__py3-none-any.whl → 16.0.1.0.4.2__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.
@@ -88,6 +88,9 @@ merged_modules = {
88
88
  "account_invoice_report_due_list": "account",
89
89
  # OCA/e-commerce
90
90
  "website_sale_require_login": "website_sale",
91
+ # OCA/l10n-spain
92
+ "l10n_es_irnr": "l10n_es",
93
+ "l10n_es_irnr_sii": "l10n_es_aeat_sii_oca",
91
94
  # OCA/partner-contact
92
95
  "partner_company_group": "base_partner_company_group",
93
96
  # OCA/pos
@@ -42,8 +42,25 @@ def _handle_stock_picking_backorder_strategy(env):
42
42
  )
43
43
 
44
44
 
45
+ def _complete_stock_move_quantity_done_with_orm(env):
46
+ """In pre-migration we left out the moves with lines with different units of
47
+ measure to be treated by the ORM"""
48
+ env.cr.execute(
49
+ """
50
+ SELECT move_id
51
+ FROM stock_move_line
52
+ GROUP BY move_id
53
+ HAVING COUNT(DISTINCT product_uom_id) > 1
54
+ AND SUM(qty_done) <> 0
55
+ """
56
+ )
57
+ move_ids = [id for id, *_ in env.cr.fetchall() if id]
58
+ env["stock.move"].browse(move_ids)._quantity_done_compute()
59
+
60
+
45
61
  @openupgrade.migrate()
46
62
  def migrate(env, version):
47
63
  _handle_multi_location_visibility(env)
48
64
  _handle_stock_picking_backorder_strategy(env)
49
65
  openupgrade.load_data(env.cr, "stock", "16.0.1.1/noupdate_changes.xml")
66
+ _complete_stock_move_quantity_done_with_orm(env)
@@ -127,6 +127,59 @@ def _handle_stock_picking_backorder_strategy(env):
127
127
  )
128
128
 
129
129
 
130
+ def _prefill_stock_move_quantity_done(env):
131
+ """It's going to be an stored field now. Let's try to speed up the field
132
+ computation so it performs better in larga stock_move tables"""
133
+ if not openupgrade.column_exists(env.cr, "stock_move", "quantity_done"):
134
+ openupgrade.add_fields(
135
+ env,
136
+ [
137
+ (
138
+ "quantity_done",
139
+ "stock.move",
140
+ "stock_move",
141
+ "float",
142
+ False,
143
+ "stock",
144
+ )
145
+ ],
146
+ )
147
+ # For moves with lines with different units of measure we rather pass them through
148
+ # the ORM in post-migration, although this will deal with the vast majority of
149
+ # moves.
150
+ openupgrade.logged_query(
151
+ env.cr,
152
+ """
153
+ WITH precision_cte AS (
154
+ SELECT digits FROM decimal_precision
155
+ WHERE name = 'Product Unit of Measure' LIMIT 1
156
+ ),
157
+ consistent_moves AS (
158
+ SELECT move_id
159
+ FROM stock_move_line
160
+ GROUP BY move_id
161
+ HAVING COUNT(DISTINCT product_uom_id) = 1 AND SUM(qty_done) <> 0
162
+ ),
163
+ move_quantities AS (
164
+ SELECT sm.id AS move_id,
165
+ -- Round the values to the current decimal precision in case it changed
166
+ -- in the past
167
+ SUM(
168
+ ROUND(sml.qty_done, (SELECT digits FROM precision_cte))
169
+ ) AS total_quantity_done
170
+ FROM stock_move sm
171
+ JOIN stock_move_line sml ON sm.id = sml.move_id
172
+ WHERE sm.id IN (SELECT move_id FROM consistent_moves)
173
+ GROUP BY sm.id
174
+ )
175
+ UPDATE stock_move
176
+ SET quantity_done = mq.total_quantity_done
177
+ FROM move_quantities mq
178
+ WHERE stock_move.id = mq.move_id;
179
+ """,
180
+ )
181
+
182
+
130
183
  @openupgrade.migrate()
131
184
  def migrate(env, version):
132
185
  openupgrade.rename_tables(env.cr, _tables_renames)
@@ -138,3 +191,4 @@ def migrate(env, version):
138
191
  _update_sol_product_category_name(env)
139
192
  _compute_stock_location_replenish_location(env)
140
193
  _handle_stock_picking_backorder_strategy(env)
194
+ _prefill_stock_move_quantity_done(env)
@@ -90,7 +90,7 @@ stock / stock.move / lot_ids (many2many) : relati
90
90
  # NOTHING TO DO
91
91
 
92
92
  stock / stock.move / quantity_done (float) : is now stored
93
- # NOTHING TO DO: handle by ORM, can improve in the future
93
+ # DONE: pre-migration: pre-compute the majority for performance post-migration: compute with ORM the rest
94
94
 
95
95
  stock / stock.move / route_ids (many2many) : relation is now 'stock.route' ('stock.location.route') [nothing to do]
96
96
  # NOTHING TO DO
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: odoo-addon-openupgrade_scripts
3
- Version: 16.0.1.0.4
3
+ Version: 16.0.1.0.4.2
4
4
  Summary: Module that contains all the migrations analysis and scripts for migrating Odoo SA modules.
5
5
  Home-page: https://github.com/OCA/OpenUpgrade
6
6
  Author: Odoo Community Association (OCA)
@@ -1,7 +1,7 @@
1
1
  odoo/addons/openupgrade_scripts/README.rst,sha256=O6T06yZMeNt6_8kdXQfXON9h61CmHbZoS2h_6uYl-vw,3185
2
2
  odoo/addons/openupgrade_scripts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
3
  odoo/addons/openupgrade_scripts/__manifest__.py,sha256=f_Fz9Z7dbYnl_OgZiGgnt-Jz2ynNNGKPDZMrnQKVT3k,616
4
- odoo/addons/openupgrade_scripts/apriori.py,sha256=O96oPlfOGlf3bWH8HMr2HR7GGTqivkBbyMfO7Eug070,5864
4
+ odoo/addons/openupgrade_scripts/apriori.py,sha256=Kj_illSwx3kkXi8312Vyocbnp77dMsK3Am-tqpgS6m4,5964
5
5
  odoo/addons/openupgrade_scripts/readme/CONFIGURE.rst,sha256=cy1swpDkuqi9-6q8L1M1QD058QyfBvAE2PN_mmdxvwI,255
6
6
  odoo/addons/openupgrade_scripts/readme/DESCRIPTION.rst,sha256=ckrM5YlY8awluPWIV7WOBynTOG_QKOjXrCsXD_RhmyU,86
7
7
  odoo/addons/openupgrade_scripts/readme/INSTALL.rst,sha256=tXbOmw3QIhO1KLIziMpXzuuY0tOhI8IGT2ktCArwfGM,115
@@ -596,10 +596,10 @@ odoo/addons/openupgrade_scripts/scripts/spreadsheet_dashboard_sale_timesheet/16.
596
596
  odoo/addons/openupgrade_scripts/scripts/spreadsheet_dashboard_stock_account/16.0.1.0/upgrade_analysis.txt,sha256=Vp-WUODorZEcKxq6rrNuRluCu9NbzZfNXIcNEM03Vdo,291
597
597
  odoo/addons/openupgrade_scripts/scripts/spreadsheet_dashboard_website_sale_slides/16.0.1.0/upgrade_analysis.txt,sha256=ia8_6HEpeaY5bOmyhrMq92t8PKztRaCPP_w7w4AqZW0,307
598
598
  odoo/addons/openupgrade_scripts/scripts/stock/16.0.1.1/noupdate_changes.xml,sha256=duUlxKkToVmaan9wD3Kl8phi_TT3V4CJ3mNAADH69NE,805
599
- odoo/addons/openupgrade_scripts/scripts/stock/16.0.1.1/post-migration.py,sha256=Jr9z-ZZeX4Pgz-cYYAzMVNnka1J4kZpqGlvjIJ4uRIU,1804
600
- odoo/addons/openupgrade_scripts/scripts/stock/16.0.1.1/pre-migration.py,sha256=rrH-Z2SIjEa-jiChSexE1jwkXfCTmRQwG1hI7qjq4yc,4207
599
+ odoo/addons/openupgrade_scripts/scripts/stock/16.0.1.1/post-migration.py,sha256=kjmgr67pNoyqxkxwY8p8zyVE84kvuxDu0OuOAUT2yCM,2364
600
+ odoo/addons/openupgrade_scripts/scripts/stock/16.0.1.1/pre-migration.py,sha256=V3KW5p6IcCDnWwRFlbrVPlKu2RPkUvv-D5oUfnqfLyg,6114
601
601
  odoo/addons/openupgrade_scripts/scripts/stock/16.0.1.1/upgrade_analysis.txt,sha256=hI1BB9O45hRFUGUM8_uws2yoblPYMy26X3bZt1II7_U,8133
602
- odoo/addons/openupgrade_scripts/scripts/stock/16.0.1.1/upgrade_analysis_work.txt,sha256=dXR_YCBpT5ir8Rqnov_qa7amOdk5BawVZOhpEDcEwgs,14431
602
+ odoo/addons/openupgrade_scripts/scripts/stock/16.0.1.1/upgrade_analysis_work.txt,sha256=6LsBb-ofs-3pja-g5SOaGlD2baLyhSqBhB_kQz54Cdc,14479
603
603
  odoo/addons/openupgrade_scripts/scripts/stock_account/16.0.1.1/pre-migration.py,sha256=xVzqocfCFvbB5AGOrPUVyhCVdn8KEkyssMBvpsUcth8,948
604
604
  odoo/addons/openupgrade_scripts/scripts/stock_account/16.0.1.1/upgrade_analysis.txt,sha256=--ShQGHEIfJ3hxITbLby_mqEszI05hutMWsZekrqnd8,805
605
605
  odoo/addons/openupgrade_scripts/scripts/stock_account/16.0.1.1/upgrade_analysis_work.txt,sha256=ns6T8z3WXky-hn5FZNFLsxf3Uz7JIORzWT300uY_Aw8,865
@@ -723,7 +723,7 @@ odoo/addons/openupgrade_scripts/scripts/website_twitter/16.0.1.0/upgrade_analysi
723
723
  odoo/addons/openupgrade_scripts/static/description/banner.png,sha256=KTIBu4gfxeZVw9zjs_fivTgFEOeaAorlBxajmCA1p6k,26859
724
724
  odoo/addons/openupgrade_scripts/static/description/icon.png,sha256=6xBPJauaFOF0KDHfHgQopSc28kKvxMaeoQFQWZtfZDo,9455
725
725
  odoo/addons/openupgrade_scripts/static/description/index.html,sha256=In9_GT_zstffKTETBxiyjfSzZz_5JtVugN-08tmDS6o,12722
726
- odoo_addon_openupgrade_scripts-16.0.1.0.4.dist-info/METADATA,sha256=ffFidsIDWCefKZ6IhBAKXrdX6GKG5Bw5DXR1KbZR3Dw,3787
727
- odoo_addon_openupgrade_scripts-16.0.1.0.4.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
728
- odoo_addon_openupgrade_scripts-16.0.1.0.4.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
729
- odoo_addon_openupgrade_scripts-16.0.1.0.4.dist-info/RECORD,,
726
+ odoo_addon_openupgrade_scripts-16.0.1.0.4.2.dist-info/METADATA,sha256=GXkHF04dRlBu1YPjkj1wsXX7oanxxrKoJms98R4waRY,3789
727
+ odoo_addon_openupgrade_scripts-16.0.1.0.4.2.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
728
+ odoo_addon_openupgrade_scripts-16.0.1.0.4.2.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
729
+ odoo_addon_openupgrade_scripts-16.0.1.0.4.2.dist-info/RECORD,,