
Migrate sales orders from M1 to M2 using Data Migration Tool
Preconditions:
- You should have installed Data Migration Tool, and configured it as well as the documentation says (data-migration-tool).
- Have the corresponding M1 and M2 database set up on your environment.
Once you go through your magento 2 root directory and run
1 |
php bin/magento migrate:data vendor/magento/data-migration-tool/etc/<platform-to-platform>/<version>/config.xml |
you will get the following error message:
[ERROR]: Source documents are not mapped: sales_flat_creditmemo_grid,sales_flat_invoice_grid,sales_flat_order_grid,sales_flat_shipment_grid
In this case, you will need to proceed as follows:
- Comment out or remove line 20 to 31 in map.xml file.
123456<!--<ignore><document>sales_flat_creditmemo_grid</document></ignore><ignore><document>sales_flat_invoice_grid</document></ignore><ignore><document>sales_flat_order_grid</document></ignore><ignore><document>sales_flat_shipment_grid</document></ignore>--> - Add inside
<document_rules>
tag of <source> tag.
1234<rename><document>sales_flat_order_grid</document><to>sales_order_grid</to></rename><rename><document>sales_flat_invoice_grid</document><to>sales_invoice_grid</to></rename><rename><document>sales_flat_creditmemo_grid</document><to>sales_creditmemo_grid</to></rename><rename><document>sales_flat_shipment_grid</document><to>sales_shipment_grid</to></rename> - Add below content under
<field_rules>
tag of <source> tag.
1234567891011121314<move><field>sales_flat_creditmemo_grid.grand_total</field><to>sales_creditmemo_grid.order_base_grand_total</to></move><!-- source table custom grid field--><ignore><field>sales_flat_invoice_grid.base_grand_total</field></ignore><ignore><field>sales_flat_creditmemo_grid.store_to_order_rate</field></ignore><ignore><field>sales_flat_creditmemo_grid.base_to_order_rate</field></ignore><ignore><field>sales_flat_creditmemo_grid.store_to_base_rate</field></ignore><ignore><field>sales_flat_creditmemo_grid.base_to_global_rate</field></ignore><ignore><field>sales_flat_creditmemo_grid.creditmemo_status</field></ignore><ignore><field>sales_flat_creditmemo_grid.invoice_id</field></ignore><ignore><field>sales_flat_creditmemo_grid.store_currency_code</field></ignore><ignore><field>sales_flat_creditmemo_grid.order_currency_code</field></ignore><ignore><field>sales_flat_creditmemo_grid.base_currency_code</field></ignore><ignore><field>sales_flat_creditmemo_grid.global_currency_code</field></ignore> - Comment out or remove line inside
<destination>
<document_rules>
tag.
123456<!--<ignore><document>sales_creditmemo_grid</document></ignore><ignore><document>sales_invoice_grid</document></ignore><ignore><document>sales_order_grid</document></ignore><ignore><document>sales_shipment_grid</document></ignore>--> - Add below line inside
<destination>
part of<field_rules>
tag.
123456789101112131415161718192021222324252627282930313233343536373839404142434445<ignore><field>sales_order_grid.billing_address</field></ignore><ignore><field>sales_order_grid.shipping_address</field></ignore><ignore><field>sales_order_grid.shipping_information</field></ignore><ignore><field>sales_order_grid.customer_email</field></ignore><ignore><field>sales_order_grid.customer_group</field></ignore><ignore><field>sales_order_grid.subtotal</field></ignore><ignore><field>sales_order_grid.shipping_and_handling</field></ignore><ignore><field>sales_order_grid.customer_name</field></ignore><ignore><field>sales_order_grid.payment_method</field></ignore><ignore><field>sales_order_grid.total_refunded</field></ignore><ignore><field>sales_invoice_grid.store_name</field></ignore><ignore><field>sales_invoice_grid.customer_name</field></ignore><ignore><field>sales_invoice_grid.customer_email</field></ignore><ignore><field>sales_invoice_grid.customer_group_id</field></ignore><ignore><field>sales_invoice_grid.payment_method</field></ignore><ignore><field>sales_invoice_grid.billing_address</field></ignore><ignore><field>sales_invoice_grid.shipping_address</field></ignore><ignore><field>sales_invoice_grid.shipping_information</field></ignore><ignore><field>sales_invoice_grid.subtotal</field></ignore><ignore><field>sales_invoice_grid.shipping_and_handling</field></ignore><ignore><field>sales_shipment_grid.customer_name</field></ignore><ignore><field>sales_shipment_grid.order_status</field></ignore><ignore><field>sales_shipment_grid.billing_address</field></ignore><ignore><field>sales_shipment_grid.shipping_address</field></ignore><ignore><field>sales_shipment_grid.billing_name</field></ignore><ignore><field>sales_shipment_grid.shipping_name</field></ignore><ignore><field>sales_shipment_grid.customer_email</field></ignore><ignore><field>sales_shipment_grid.customer_group_id</field></ignore><ignore><field>sales_shipment_grid.payment_method</field></ignore><ignore><field>sales_shipment_grid.shipping_information</field></ignore><ignore><field>sales_creditmemo_grid.billing_address</field></ignore><ignore><field>sales_creditmemo_grid.shipping_address</field></ignore><ignore><field>sales_creditmemo_grid.customer_group_id</field></ignore><ignore><field>sales_creditmemo_grid.order_status</field></ignore><ignore><field>sales_creditmemo_grid.customer_name</field></ignore><ignore><field>sales_creditmemo_grid.customer_email</field></ignore><ignore><field>sales_creditmemo_grid.payment_method</field></ignore><ignore><field>sales_creditmemo_grid.shipping_information</field></ignore><ignore><field>sales_creditmemo_grid.subtotal</field></ignore><ignore><field>sales_creditmemo_grid.shipping_and_handling</field></ignore><ignore><field>sales_creditmemo_grid.adjustment_positive</field></ignore><ignore><field>sales_creditmemo_grid.adjustment_negative</field></ignore> - Potential errors:
- If you have any other map error, you should handle it using a <transform> and a <handler>, or ignore it on the fields rule section.
- Any integrity check error should be solved via database removing involved orphan records.
- [Exception] Warning: Error while sending QUERY packet.
- It should be solved increasing the max_allowed_packet variable from sql (SET GLOBAL max_allowed_packet=524288000;)
Once you change and finish everything, let’s proceed with
1 |
php bin/magento migrate:data vendor/magento/data-migration-tool/etc/<platform-to-platform>/<version>/config.xml |
and if you get the following message:
[INFO][mode: data][stage: data migration][step: PostProcessing Step]: Migration completed
means that everything went well.