2011-11-02 17 views
5

Czym dokładnie jest funkcja nieruchomości is_in_stock w Magento? To, czy produkt jest dostępny w magazynie, można ustalić na podstawie tego, czy qty >= 1?Korzystanie z magento is_in_stock

Wygląda na to, że automatycznie dopasowuje się do bieżącego poziomu zapasów (w porównaniu do minimalnej dopuszczalnej ilości?), Ale dlaczego można go modyfikować ręcznie? Czuję, że nie ma sensu go modyfikować, ponieważ zmieni się to, co i tak chce.

Nie mogę znaleźć wielu informacji o funkcjonalności tej nieruchomości przez google, więc może to być dobre dodatek :-).

Odpowiedz

5

Wiele mniejszych kupcy będą używać Magento monitorować ich rzeczywisty poziom zapasów magazynowych dla produktów. Być może zdarzają się sytuacje, w których chcą tymczasowo mieć produkt wymieniony jako niedostępny w swoim sklepie internetowym, ale będą chcieli, aby numer magazynowy w Magento odzwierciedlał liczbę przedmiotów, które mają pod ręką z innych powodów biznesowych.

Innymi słowy, element danych is_in_stock kontroluje sposób, w jaki sklep wyświetla produkt, niezależnie od tego, ile masz pod ręką.

+0

Dzięki za odpowiedź. Tym, co wydaje mi się dziwne jest to, że wydaje się, że istnieje kod, który ustawia towar z powrotem na zapas, gdy na przykład zamówienie jest anulowane ('Mage_CatalogInventory_Model_Stock-> backItemQty'). Tak więc mały kupiec ustawiłby 'is_in_stock' na false, a następnie zamówienie zostanie anulowane (zawierające produkt), a' is_in_stock' będzie znowu prawdziwe? –

+0

Tak, jest to słabo zaimplementowana funkcja, która wyraźnie jest dziełem wielu zespołów, które nie komunikują się ze sobą. –

0

Możesz grzebać: app/code/core/Mage/CatalogInventory/Model/Grafika/Item.php

prawdopodobnie związane postu: Magento issue with calling isInStock() method on a product

+0

Dzięki za cynk. Odpowiedni wpis to także dziwna sprawa, ale nie tutaj chodzi o problem :-) –

+0

Np, interesuje mnie również różnica, jeśli znajdziesz właściwą odpowiedź, opublikuj tutaj, jeśli możesz. – B00MER

0

Całkowicie potrzebuję zmienić moją odpowiedź tutaj tak wiele przeprosin. Kiedy spojrzałem na funkcję jak to jest zdefiniowane w app/code/core/mag/Katalog/model/Product.php Widziałem to bardzo dziwne sytuacji:

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

tak długo, jak produkt jest włączona, isInStock zawsze zwróci true. Funkcja informująca, czy produkt jest na sprzedaż, toSaleable().

+0

To prawda, ale nie problem, o którym tu wspomniałem. Mam na myśli własność 'is_in_stock' StockItem, a nie produkt. –

+0

Niestety, skupiłem się na funkcji, a nie na własności. Przykład, o którym wspomniano powyżej z ręcznym ustawieniem "Brak w magazynie", oznacza to, że po przywróceniu zamówienia system zostanie przywrócony do stanu "na składzie", może wystąpić tylko wtedy, gdy witryna ma ustawioną opcję "Zarządzanie zapasem" na "tak". To może być również przekroczone na poziomie produktu w obrębie administratora. Robimy to, ponieważ chcemy kontroli zapasów niektórych produktów, które sprzedajemy, ale nie na innych, w których nigdy nie sprzedajemy, a zapasy nie stanowią problemu. –