Magento: Holen Sie sich die Sammlung von Auftragspositionen für eine Produkt-Kollektion gefiltert durch ein Attribut

Arbeite ich an der Entwicklung einer Kategorie roll-up-Bericht für Magento (1.6) zu speichern.

Zu diesem Zweck möchte ich, um einen Auftrag zu bekommen-Element-Kollektion für eine Teilmenge der Produkte - Produkt, dessen einzigartige Kategorie-id (das ist ein Magento Produkt-attribute, die ich erstellt) entsprechend einen bestimmten Wert.

Ich kann das relevante Ergebnis, die von der Orientierung der Sammlung catalog/product.

$collection = Mage::getModel('catalog/product')
->getCollection()
->addAttributeToFilter('unique_category_id', '75')
->joinTable('sales/order_item', 'product_id=entity_id', array('price'=>'price','qty_ordered' => 'qty_ordered'));

Magento mag es nicht, da es doppelte Einträge für die gleiche Produkt-id.

Wie kann ich Bastel den code, um dieses ResultSet basierend auf der Reihenfolge Posten? Der Beitritt in die Produkt-Kollektion gefiltert durch ein Attribut entzieht sich mir. Dieser code, der nicht tut den trick, denn es wird davon ausgegangen, dass das Attribut auf die Bestellposition und nicht das Produkt.

$collection = Mage::getModel('sales/order_item')
->getCollection()
->join('catalog/product', 'entity_id=product_id')
->addAttributeToFilter('unique_category_id', '75');

Jede Hilfe ist willkommen.

InformationsquelleAutor Laizer | 2012-02-14

Schreibe einen Kommentar