2011-11-02 10 views
5

Qual è esattamente la funzione della proprietà is_in_stock in Magento? Se un prodotto è in magazzino può essere determinato se qty >= 1?L'uso di magento is_in_stock

Sembra adattarsi automaticamente al livello di stock corrente (rispetto alla quantità minima consentita?), Ma perché è possibile modificarlo manualmente? Sento che non ha senso modificarlo, perché cambierà in qualunque cosa lo desideri comunque ..

Non riesco a trovare molte informazioni sulla funzionalità di questa proprietà via google, quindi potrebbe essere una buona aggiunta :-).

risposta

5

Molti commercianti più piccoli utilizzeranno Magento per monitorare i loro effettivi livelli di magazzino "Magazzino" (riserva) per i prodotti. Ci possono essere momenti in cui vogliono temporaneamente avere un articolo elencato come non disponibile sul loro web-store, ma vorranno il numero di magazzino in Magento per riflettere il numero di articoli che hanno a disposizione per altri motivi commerciali.

In un altro modo, il membro dati is_in_stock controlla in che modo il negozio visualizza il prodotto, indipendentemente dal numero di elementi disponibili.

+0

Grazie per la risposta. Quello che trovo strano in questo però è che sembra esserci un codice che imposta un elemento di nuovo in magazzino quando ad esempio un ordine viene cancellato ('Mage_CatalogInventory_Model_Stock-> backItemQty'). Quindi un piccolo commerciante dovrebbe impostare 'is_in_stock' su false e quindi un ordine viene cancellato (contenente il prodotto) e' is_in_stock' è di nuovo vero? –

+0

Sì, è una funzionalità mal implementata che è chiaramente il lavoro di più team che non parlano tra loro. –

0

Si consiglia di scavare intorno: app/code/core/Mage/CatalogInventory/Modello/azione/Item.php

Possibilmente post correlati: Magento issue with calling isInStock() method on a product

+0

Grazie per il suggerimento. Il post correlato è anche una cosa strana, ma non il problema intendo qui :-) –

+0

Np, mi interessa anche la differenza, se trovi la risposta corretta per favore posta qui se puoi. – B00MER

0

Completamente necessario rinnovare la mia risposta qui tante scuse. Quando ho guardato la funzione come viene definito in app/code/core/mago/Catalogo/Modello/Product.php ho visto questa situazione molto strana:

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

Quindi, fintanto che un prodotto è abilitato, isInStock ritornerà sempre vero. La funzione per sapere se un prodotto è in vendita è isSaleable().

+0

Questo è corretto ma non il problema che sto menzionando qui. Intendo la proprietà 'is_in_stock' di StockItem e non quella del prodotto. –

+0

Mi dispiace, mi sono concentrato sulla funzione e non sulla proprietà. L'esempio che si menziona in precedenza con l'impostazione manuale "Fuori scorta", dopo che il sistema lo ha riportato a "in stock" quando un ordine viene annullato, si verificherebbe solo se il sito ha la configurazione Gestisci stock impostata su Sì. Questo può anche essere superato a livello di prodotto all'interno di admin. Lo facciamo perché vogliamo il controllo dell'inventario di alcuni prodotti che vendiamo ma non su altri in cui non vendiamo mai e l'inventario è meno preoccupante. –