19.0 vanilla

This commit is contained in:
Ernad Husremovic 2026-03-09 09:31:47 +01:00
parent accf5918df
commit 6e65e8c877
688 changed files with 225434 additions and 199401 deletions

View file

@ -5,35 +5,25 @@ from . import models
from . import wizard
from . import report
from . import controller
from . import populate
from odoo import api, SUPERUSER_ID
def _pre_init_mrp(cr):
def _pre_init_mrp(env):
""" Allow installing MRP in databases with large stock.move table (>1M records)
- Creating the computed+stored field stock_move.is_done and
stock_move.unit_factor is terribly slow with the ORM and leads to "Out of
Memory" crashes
- Creating the computed stored fields `stock_move` `unit_factor` and `manual_consumption`
is terribly slow with the ORM and leads to "Out of Memory" crashes.
"""
cr.execute("""ALTER TABLE "stock_move" ADD COLUMN "is_done" bool;""")
cr.execute("""UPDATE stock_move
SET is_done=COALESCE(state in ('done', 'cancel'), FALSE);""")
cr.execute("""ALTER TABLE "stock_move" ADD COLUMN "unit_factor" double precision;""")
cr.execute("""UPDATE stock_move
SET unit_factor=1;""")
env.cr.execute("""ALTER TABLE "stock_move" ADD COLUMN "unit_factor" double precision NOT NULL DEFAULT 1;""")
env.cr.execute("""ALTER TABLE "stock_move" ADD COLUMN "manual_consumption" boolean NOT NULL DEFAULT FALSE;""")
def _create_warehouse_data(cr, registry):
def _create_warehouse_data(env):
""" This hook is used to add a default manufacture_pull_id, manufacture
picking_type on every warehouse. It is necessary if the mrp module is
installed after some warehouses were already created.
"""
env = api.Environment(cr, SUPERUSER_ID, {})
warehouse_ids = env['stock.warehouse'].search([('manufacture_pull_id', '=', False)])
warehouse_ids.write({'manufacture_to_resupply': True})
def uninstall_hook(cr, registry):
env = api.Environment(cr, SUPERUSER_ID, {})
def uninstall_hook(env):
warehouses = env["stock.warehouse"].search([])
pbm_routes = warehouses.mapped("pbm_route_id")
warehouses.write({"pbm_route_id": False})