2012-02-23 37 views
13

Có cách nào để thay đổi số thứ tự bắt đầu trong Magento mà không thay đổi số thứ tự đã có? Tôi chỉ muốn đặt 170000xxxx cho tất cả các đơn đặt hàng mới.Làm thế nào để thay đổi số thứ tự bắt đầu trong Magento

Cảm ơn

+0

Bạn không nên làm điều đó bởi vì số đầu tiên trong id increment trật tự là cửa hàng id nơi đặt hàng. Một số tiện ích có thể dựa vào nó. – Zyava

+0

có thể trùng lặp của [Số bắt đầu tùy chỉnh cho số đơn đặt hàng trong Magento 1.5] (http://stackoverflow.com/questions/5838368/custom-start-number-for-order-numbers-in-magento-1-5) –

Trả lời

31

Look in eav_entity_store và tìm increment_last_id. Cập nhật số này, đảm bảo rằng entity_type_id là chính xác cho các đơn đặt hàng.

Tìm entity_type_id cho các đơn hàng

SELECT entity_type_id FROM eav_entity_type WHERE entity_type_code = 'order';

+0

I đoán id loại thực thể cho đơn đặt hàng luôn là 4 hoặc một ít nhất phải khớp với số thứ tự cuối cùng với giá trị trong increment_last_id. – atif

+0

Các entity_type_id cho "thứ tự" cho các cài đặt của tôi luôn luôn có vẻ là 5. Tôi sẽ sử dụng truy vấn được đưa ra ở trên để luôn luôn kiểm tra những gì id chính xác là cho một cài đặt nhất định. –

5

Giải pháp đơn giản nhất cho điều này là sử dụng Ashley Schroder's "Set Custom Order Number" mở rộng. Phần mở rộng này, sau khi cài đặt, làm cho việc thay đổi số thứ tự tiếp theo là một thao tác đơn giản mà bạn có thể thực hiện thông qua phần cuối.

Bất kể phương pháp được sử dụng, đảm bảo trình tự số mới của bạn không bao gồm các đơn đặt hàng hiện tại, nếu không những điều xấu xảy ra (các ràng buộc duy nhất trong cơ sở dữ liệu không thỏa mãn, sự cố Magento).

+0

Dường như tiện ích mở rộng đó đã bị xóa. Dưới đây là một tiện ích mở rộng khác cho phép bạn thay đổi số đơn hàng của mình cùng với các tùy chọn khác: http://www.magentocommerce.com/magento-connect/custom-order-invoice-shipment-numbers.html –

+0

Nó vẫn có sẵn trực tiếp từ trang web của Ashley trang web ... http://www.aschroder.com/category/set-start-order-number-extension/ Liên kết được cập nhật. –

1
UPDATE `eav_entity_store` SET `increment_last_id` = '30000000' WHERE `entity_type_id` = STOREID;` 

STOREID -> Id cửa hàng bạn đang sử dụng.

+2

Điều này không đúng. Bạn đang conflating entity_type_id và store_id. Tôi tin rằng bạn có nghĩa là để nói điều gì đó dọc theo dòng: UPDATE eav_entity_store SET increment_last_id = '30000000' WHERE entity_type_id = (SELECT entity_type_id FROM eav_entity_type WHERE entity_type_code = 'order'); –

3

Sankar đã có nó gần như ngay

UPDATE `database`.`eav_entity_store` SET `increment_last_id` = '17000000' WHERE `entity_store_id` = 1; 
+0

Không .. Anh ấy đã sai, khuyên đây là ID cửa hàng. Nó phải là ID thực thể Đơn đặt hàng. Xem nhận xét đầu tiên cho câu trả lời của Sankar. – justabuzz

Các vấn đề liên quan