文章彙整

如何修改Magento2 Increment Id

Astral WebBy Astral Web 1 year agoNo Comments
首頁  /  Magento  /  Magento2 開源版  /  如何修改Magento2 Increment Id

今天要來介紹修改increment id,在Magento2裡不管是訂單、發票、配送單還是退款單都會有increment id這個欄位,這個欄位就是用來當流水號用的,但為什麼會需要修改這個欄位呢?很多時候在與第三方平台串接時候,都會以increment id當作對接的唯一值,在開發的期間又會有local、test、staging、production各種不同的對接通一個第三方平台,此時就會發生第三方平台收到同樣的increment id導致錯誤,無法繼續進行下去,因此去修改increment id前綴開頭號碼,是最為快速的解決方法!

而其它要修改的原因也有碰到客戶為了美觀,希望單號能從100000001開始等之類的理由需要修改increment id。

 

首先要知道Magento2裡面的sales_order、sales_invoice、sales_shipment、sales_creditmemo這四張表都有increment_id欄位,而這流水號的來源會對應sequence_order_{websiteId}、sequence_invoice_{websiteId}、sequence_shipment_{websiteId}、sequence_creditmemo_{websiteId},而最後的數字會根據此網站是否有開多website,來決定有幾張對應的sequence資料表,假設只有預設的一個website的話,如下圖所示

如果後面有新開第二個的website就會再多sequence_order_2、sequence_invoice_2、sequence_shipment_2、sequence_creditmemo_2這樣一組,以此類推。

而要怎麼修改increment_id呢,也很簡單,只要進入Mysql資料庫,使用以下的語法

ALTER TABLE `magento`.`sequence_order_1` 
AUTO_INCREMENT = 100000001 ;
ALTER TABLE `magento`.`sequence_invoice_1` 
AUTO_INCREMENT = 100000001 ;
ALTER TABLE `magento`.`sequence_shipment_1` 
AUTO_INCREMENT = 100000001 ;
ALTER TABLE `magento`.`sequence_creditmemo_1` 
AUTO_INCREMENT = 100000001 ;

這樣流水號就能修改成功了!但要注意自己的websiteId數字多少,再去修改sequence表最後的數字就行了。

 

以上就是本篇的分享喔!喜歡歐斯瑞文章的讀者們,記得追蹤歐斯瑞粉絲團Instagram,也別忘了訂閱我們的電子報,才不會錯過最新的文章分享喔!

若有任何問題,也歡迎隨時聯繫我們

 000

歐斯瑞

歐斯瑞 - 一個對網路世界充滿熱情的團隊

歐斯瑞提供免費電商知識,並協助各大類型之企業 電商諮詢建置MagentoShopify 相關的電商專案。

立即聯繫我們

推薦文章

Categories:
  Magento2 開源版MagentoMagento2 商業版後端開發網站技術與設計

留下回應

你的電子郵件地址不會被公開.