2012-12-03 97 views
3

我最近將我的Magento商店從1.4.2升級到1.7。Magento上的進口訂單

我在本地機器上進行了此升級,因爲在線商店仍在運行。作爲一種效果,當我將本地數據庫升級到1.7時,我有客戶在線數據庫上下單。

現在我需要合併來自兩個數據庫的訂單,所以我不會在後臺丟失任何訂單。

我查看了一些擴展,但他們都支付。

如何在不需要支付延期的情況下實現此目標我只能使用一次?

回答

0

這可以用我認爲的sql來實現。

訂單數據可以在前綴爲'sales_flat'的表中找到。您需要的是將舊數據庫中的訂單合併到新數據庫中不存在的新數據庫中。

問題可能是新數據庫中的新訂單可能與舊數據庫中的訂單具有相同的ID。

我會說這樣做(如草圖):

- >獲得sales_flat_order表你想要的訂單。您需要將他們的數據與來自其他sales_flat表的數據結合使用,例如支付數據的sales_flat_payment和物料數據的sales_flat_item。但是這可以在稍後的時間完成,因爲如果不以正確的順序導入,它們可能會導致關鍵約束錯誤。
- >確定訂單有效entity_ids和increment_ids,這樣它們就不會在新的數據庫訂單重疊
- >導入命令在新的數據庫(SQL導入)在此之後已經完蛋了sales_flat_order,您可以爲其他sales_flat表格執行此操作。

現在他們應該進口。請注意,存儲在其他模塊中的任何訂單信息都不可用(例如,mage_report模塊存儲一些統計信息),但我認爲重要信息以這種方式合併。

+0

我已經試過這種方法,以及一個我乾淨地導入所有'sales_'表格(覆蓋當前的表格)並且遇到了很多問題。最突出的是:小計計算完全關閉,計稅問題,訂單總額與其發票的總額不同,還有更多。還沒有找到解決方案。 – Joeymetro