-
-
Notifications
You must be signed in to change notification settings - Fork 708
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[17.0][OU-ADD] stock: migrate to 17.0 #4557
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# Copyright 2024 Viindoo Technology Joint Stock Company (Viindoo) | ||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). | ||
|
||
from openupgradelib import openupgrade | ||
|
||
|
||
def _stock_scrap_convert_move_id_m2o_to_o2m(env): | ||
""" | ||
Convert m2o to o2m in 'stock.scrap' | ||
""" | ||
openupgrade.m2o_to_x2m( | ||
env.cr, env["stock.scrap"], "stock_scrap", "move_ids", "move_id" | ||
) | ||
|
||
|
||
@openupgrade.migrate() | ||
def migrate(env, version): | ||
openupgrade.load_data(env, "stock", "17.0.1.1/noupdate_changes.xml") | ||
_stock_scrap_convert_move_id_m2o_to_o2m(env) |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
# Copyright 2024 Tecnativa - Pedro M. Baeza | ||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). | ||
|
||
from openupgradelib import openupgrade | ||
|
||
_field_renames = [ | ||
("stock.move", "stock_move", "quantity_done", "quantity"), | ||
("stock.move.line", "stock_move_line", "qty_done", "quantity"), | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. it's more complex than that. as this field now as well counts what is done and what it reserved, you need to add reserved_qty if qty_done was 0 or the move's state isn't done (depends a bit on how users used v16). I suggest to copy the column instead of renaming to allow subsequent code make its own choices here |
||
] | ||
|
||
|
||
@openupgrade.migrate() | ||
def migrate(env, version): | ||
openupgrade.rename_fields(env, _field_renames) |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,152 @@ | ||
---Models in module 'stock'--- | ||
obsolete model report.stock.report_product_product_replenishment [abstract] | ||
obsolete model report.stock.report_product_template_replenishment [abstract] | ||
obsolete model stock.immediate.transfer [transient] | ||
obsolete model stock.immediate.transfer.line [transient] | ||
new model stock.forecasted_product_product [abstract] | ||
new model stock.forecasted_product_template [abstract] | ||
new model stock.quant.relocate [transient] | ||
# NOTHING TO DO | ||
|
||
---Fields in module 'stock'--- | ||
stock / product.category / filter_for_stock_putaway_rule (boolean): NEW | ||
stock / product.product / lot_properties_definition (properties_definition): NEW | ||
# NOTHING TO DO: fields in new model | ||
|
||
stock / product.product / sale_delay (float) : type is now 'integer' ('float') | ||
stock / product.template / sale_delay (float) : type is now 'integer' ('float') | ||
# NOTHING TO DO | ||
|
||
stock / stock.lot / activity_user_id (many2one) : not related anymore | ||
stock / stock.lot / activity_user_id (many2one) : now a function | ||
stock / stock.lot / location_id (many2one) : NEW relation: stock.location, isfunction: function, stored | ||
stock / stock.lot / lot_properties (properties) : NEW hasdefault: compute | ||
stock / stock.lot / message_main_attachment_id (many2one): DEL relation: ir.attachment | ||
stock / stock.lot / rating_ids (one2many) : NEW relation: rating.rating | ||
# NOTHING TO DO | ||
|
||
stock / stock.move / move_line_nosuggest_ids (one2many): DEL relation: stock.move.line | ||
stock / stock.move / picked (boolean) : NEW isfunction: function, stored | ||
stock / stock.move / picking_type_id (many2one) : not a function anymore | ||
# NOTHING TO DO | ||
|
||
stock / stock.move / quantity (float) : NEW isfunction: function, stored | ||
stock / stock.move / quantity_done (float) : DEL | ||
acpMicrocom marked this conversation as resolved.
Show resolved
Hide resolved
|
||
# DONE: pre-migration | ||
|
||
stock / stock.move / scrap_id (many2one) : NEW relation: stock.scrap | ||
stock / stock.move / scrap_ids (one2many) : DEL relation: stock.scrap | ||
# NOTHING TO DO | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. this is done in pre-migration where you transform |
||
|
||
stock / stock.move.line / qty_done (float) : DEL | ||
stock / stock.move.line / quantity (float) : NEW hasdefault: compute | ||
acpMicrocom marked this conversation as resolved.
Show resolved
Hide resolved
|
||
# DONE: pre-migration | ||
|
||
stock / stock.move.line / picked (boolean) : NEW hasdefault: compute | ||
stock / stock.move.line / quant_id (many2one) : NEW relation: stock.quant | ||
stock / stock.move.line / quantity_product_uom (float) : NEW isfunction: function, stored | ||
stock / stock.move.line / reserved_qty (float) : DEL | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. see above |
||
stock / stock.move.line / reserved_uom_qty (float) : DEL required | ||
|
||
stock / stock.package.type / height (integer) : type is now 'float' ('integer') | ||
stock / stock.package.type / packaging_length (integer) : type is now 'float' ('integer') | ||
stock / stock.package.type / width (integer) : type is now 'float' ('integer') | ||
# NOTHING TO DO | ||
|
||
stock / stock.picking / activity_user_id (many2one) : not related anymore | ||
stock / stock.picking / activity_user_id (many2one) : now a function | ||
stock / stock.picking / immediate_transfer (boolean) : DEL | ||
stock / stock.picking / message_main_attachment_id (many2one): DEL relation: ir.attachment | ||
stock / stock.picking / move_ids_without_package (one2many): is now stored | ||
stock / stock.picking / move_ids_without_package (one2many): not a function anymore | ||
stock / stock.picking / move_line_nosuggest_ids (one2many): DEL relation: stock.move.line | ||
stock / stock.picking / picking_properties (properties): NEW hasdefault: compute | ||
stock / stock.picking / rating_ids (one2many) : NEW relation: rating.rating | ||
stock / stock.picking / return_id (many2one) : NEW relation: stock.picking | ||
stock / stock.picking / return_ids (one2many) : NEW relation: stock.picking | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. those we'll need to reconstruct from stock.move#origin_returned_move_id |
||
stock / stock.picking / show_operations (boolean) : not a function anymore | ||
stock / stock.picking / show_operations (boolean) : now related | ||
|
||
stock / stock.picking.type / auto_print_delivery_slip (boolean): NEW | ||
stock / stock.picking.type / auto_print_lot_labels (boolean): NEW | ||
stock / stock.picking.type / auto_print_package_label (boolean): NEW | ||
stock / stock.picking.type / auto_print_packages (boolean) : NEW | ||
stock / stock.picking.type / auto_print_product_labels (boolean): NEW | ||
stock / stock.picking.type / auto_print_reception_report (boolean): NEW | ||
stock / stock.picking.type / auto_print_reception_report_labels (boolean): NEW | ||
stock / stock.picking.type / auto_print_return_slip (boolean): NEW | ||
stock / stock.picking.type / default_location_return_id (many2one): NEW relation: stock.location | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. this can be calculated that from the warehouse's old return picking type's default location |
||
stock / stock.picking.type / lot_label_format (selection) : NEW selection_keys: ['4x12_lots', '4x12_units', 'zpl_lots', 'zpl_units'], hasdefault: default | ||
stock / stock.picking.type / package_label_to_print (selection): NEW selection_keys: ['pdf', 'zpl'], hasdefault: default | ||
stock / stock.picking.type / picking_properties_definition (properties_definition): NEW | ||
stock / stock.picking.type / product_label_format (selection): NEW selection_keys: ['2x7xprice', '4x12', '4x12xprice', '4x7xprice', 'dymo', 'zpl', 'zplxprice'], hasdefault: default | ||
stock / stock.picking.type / show_reserved (boolean) : now a function | ||
# NOTHING TO DO: fields in new model | ||
|
||
stock / stock.scrap / move_id (many2one) : DEL relation: stock.move | ||
stock / stock.scrap / move_ids (one2many) : NEW relation: stock.move | ||
acpMicrocom marked this conversation as resolved.
Show resolved
Hide resolved
|
||
# DONE post-migration: convert data many2one to one2many | ||
|
||
stock / stock.scrap / message_main_attachment_id (many2one): DEL relation: ir.attachment | ||
stock / stock.scrap / rating_ids (one2many) : NEW relation: rating.rating | ||
stock / stock.scrap / should_replenish (boolean) : NEW | ||
stock / stock.warehouse / return_type_id (many2one) : DEL relation: stock.picking.type | ||
# NOTHING TO DO | ||
|
||
---XML records in module 'stock'--- | ||
NEW ir.actions.act_window: stock.action_picking_tree_incoming | ||
NEW ir.actions.act_window: stock.action_picking_tree_internal | ||
NEW ir.actions.act_window: stock.action_picking_tree_outgoing | ||
NEW ir.actions.act_window: stock.action_product_production_lot_form | ||
# NOTHING TO DO | ||
|
||
NEW ir.actions.client: stock.stock_forecasted_product_product_action | ||
NEW ir.actions.client: stock.stock_forecasted_product_template_action | ||
DEL ir.actions.client: stock.stock_replenishment_product_product_action | ||
DEL ir.actions.client: stock.stock_replenishment_product_template_action | ||
|
||
NEW ir.actions.report: stock.return_label_report | ||
NEW ir.actions.server: stock.action_scrap | ||
NEW ir.actions.server: stock.action_toggle_is_locked | ||
NEW ir.actions.server: stock.action_view_set_to_zero_quants_tree | ||
DEL ir.actions.server: stock.stock_quant_stock_move_line_desynchronization | ||
# NOTHING TO DO | ||
|
||
NEW ir.model.access: stock.access_stock_quant_relocate | ||
DEL ir.model.access: stock.access_stock_immediate_transfer | ||
DEL ir.model.access: stock.access_stock_immediate_transfer_line | ||
# NOTHING TO DO: new feature | ||
|
||
ir.model.constraint: stock.constraint_stock_package_type_positive_height (changed definition: is now 'check(height>=0.0)' ('check(height>=0)')) | ||
ir.model.constraint: stock.constraint_stock_package_type_positive_length (changed definition: is now 'check(packaging_length>=0.0)' ('check(packaging_length>=0)')) | ||
ir.model.constraint: stock.constraint_stock_package_type_positive_width (changed definition: is now 'check(width>=0.0)' ('check(width>=0)')) | ||
# NOTHING TO DO | ||
|
||
NEW ir.ui.menu: stock.in_picking | ||
NEW ir.ui.menu: stock.int_picking | ||
NEW ir.ui.menu: stock.menu_stock_adjustments | ||
NEW ir.ui.menu: stock.menu_stock_procurement | ||
NEW ir.ui.menu: stock.menu_stock_transfers | ||
NEW ir.ui.menu: stock.out_picking | ||
DEL ir.ui.menu: stock.all_picking | ||
# NOTHING TO DO: new feature | ||
|
||
NEW ir.ui.view: stock.product_view_kanban_catalog | ||
NEW ir.ui.view: stock.report_return_slip | ||
NEW ir.ui.view: stock.stock_picking_view_activity | ||
NEW ir.ui.view: stock.stock_quant_relocate_view_form | ||
NEW ir.ui.view: stock.view_production_lot_kanban | ||
NEW ir.ui.view: stock.view_stock_move_line_pivot | ||
NEW ir.ui.view: stock.view_stock_quant_form | ||
NEW ir.ui.view: stock.view_stock_quant_tree_simple | ||
DEL ir.ui.view: stock.report_mrp_line | ||
DEL ir.ui.view: stock.report_product_product_replenishment | ||
DEL ir.ui.view: stock.report_product_template_replenishment | ||
DEL ir.ui.view: stock.report_replenishment_header | ||
DEL ir.ui.view: stock.report_stock_inventory | ||
DEL ir.ui.view: stock.view_immediate_transfer | ||
DEL ir.ui.view: stock.view_stock_move_nosuggest_operations | ||
# NOTHING TO DO | ||
|
||
NEW product.removal: stock.removal_least_packages | ||
# NOTHING TO DO |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
your copyright notices look wrong