2011-11-02 33 views
5

Chức năng chính xác của bất động sản is_in_stock trong Magento là gì? Liệu sản phẩm có trong kho có thể được xác định xem liệu qty >= 1?Sử dụng magento is_in_stock

Dường như tự động điều chỉnh sang stock_level hiện tại (so với số lượng tối thiểu cho phép?) Nhưng tại sao bạn có thể sửa đổi thủ công? Tôi cảm thấy nó không sử dụng để sửa đổi nó, bởi vì nó sẽ thay đổi thành bất cứ điều gì nó muốn chính nó anyway ..

Tôi không thể tìm thấy nhiều thông tin về chức năng của tài sản này thông qua google, vì vậy có thể là tốt thêm vào :-).

Trả lời

5

Nhiều nhà buôn nhỏ hơn sẽ sử dụng Magento theo dõi mức kho thực tế "kho" (phòng dự phòng) của họ cho các sản phẩm. Có thể có những lúc họ muốn tạm thời có một mục được liệt kê là hết hàng trên cửa hàng web của họ, nhưng họ sẽ sto muốn số cổ phiếu trong Magento để phản ánh số lượng mặt hàng họ có trong tay vì các lý do kinh doanh khác.

Đặt một cách khác, thành viên dữ liệu is_in_stock kiểm soát cách cửa hàng hiển thị sản phẩm, bất kể số lượng mặt hàng bạn có trong tay.

+0

Cảm ơn câu trả lời. Những gì tôi thấy kỳ lạ về điều này mặc dù là có vẻ là mã mà thiết lập một mục trở lại để chứng khoán khi ví dụ một đơn đặt hàng bị hủy bỏ ('Mage_CatalogInventory_Model_Stock-> backItemQty'). Vì vậy, một thương gia nhỏ sẽ đặt 'is_in_stock' thành false và sau đó một lệnh bị hủy (chứa sản phẩm) và' is_in_stock' là đúng? –

+0

Vâng, đó là một tính năng kém được thực hiện rõ ràng là công việc của nhiều đội không nói chuyện với nhau. –

0

Bạn có thể muốn đào bới xung quanh: ứng dụng/code/core/Mage/CatalogInventory/mẫu/Chứng khoán/Item.php

bài liên quan Có thể: Magento issue with calling isInStock() method on a product

+0

Cảm ơn mẹo. Các bài viết liên quan cũng là một điều kỳ lạ, nhưng không phải là vấn đề tôi có ý nghĩa ở đây :-) –

+0

Np, tôi quan tâm đến sự khác biệt là tốt, nếu bạn tìm thấy câu trả lời đúng xin vui lòng gửi ở đây nếu bạn có thể. – B00MER

0

Hoàn toàn cần phải sửa lại câu trả lời của tôi ở đây rất nhiều lời xin lỗi. Khi tôi nhìn vào chức năng vì nó được định nghĩa trong ứng dụng/code/core/Mage/Catalogue/mẫu/Product.php tôi thấy tình hình rất kỳ quặc này:

public function isInStock() 
{ 
    return $this->getStatus() == Mage_Catalog_Model_Product_Status::STATUS_ENABLED; 
} 

Vì vậy, miễn là một sản phẩm đã được kích hoạt, isInStock sẽ luôn trả về đúng sự thật. Chức năng cho biết nếu một sản phẩm được bán là isSaleable().

+0

Điều đó đúng nhưng không phải vấn đề tôi đang đề cập ở đây. Tôi có nghĩa là tài sản 'is_in_stock' của StockItem và không phải của sản phẩm. –

+0

Xin lỗi về điều đó, tôi đã tập trung vào chức năng và không phải là tài sản. Ví dụ bạn đề cập ở trên bằng cách đặt "Hết hàng" theo cách thủ công, sau đó để hệ thống chuyển trở lại thành "còn hàng" khi đơn đặt hàng bị hủy sẽ chỉ xảy ra nếu trang web có cấu hình Quản lý Cổ phiếu là có. Điều đó cũng có thể được ghi đè ở cấp sản phẩm trong quản trị viên. Chúng tôi làm điều này bởi vì chúng tôi muốn kiểm soát hàng tồn kho của một số sản phẩm mà chúng tôi bán ra nhưng không phải trên những sản phẩm khác mà chúng tôi không bao giờ bán hết và hàng tồn kho ít quan tâm hơn. –

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