2010-12-09 3 views
1

J'essaye d'alphabétiser les articles énumérés sur une facture dans le backend d'un site de magento.Comment puis-je obtenir une liste de produits liés à une facture dans magento?

J'ai accès à l'objet Mage_Adminhtml_Block_Sales_Order_Invoice_View_Items utilisé pour afficher ces éléments dans le backend.

Est-ce que je peux utiliser cet objet pour obtenir une liste de skus de produit et réorganiser ces éléments?

Edit:

Voici la ligne de code qui est la collecte des objets pour l'affichage dans la vue. J'imagine que je avais besoin d'obtenir les éléments triés avant ce point -

<?php $_items = $this->getInvoice()->getAllItems() ?> 

Répondre

0

vous pouvez essayer ceci:

$this->getInvoice()->getItemsCollection()->addAttributeToSort('sku', 'desc') 
+0

Merci, je vais essayer. Cela modifie-t-il cet état réel de l'objet? J'ai ajouté la ligne dans le modèle qui recueille les éléments de la facture dans le tableau dans mon message d'origine - je vais essayer d'ajouter votre ligne juste au-dessus de celle-ci. – wes

+0

N'a pas l'air d'avoir aucun effet, je vais essayer de fouiller un peu plus. – wes

+0

vous obtiendrez la collection qui doit être itérée cela ne modifie pas les collections existantes –

1

Vous devriez vous joindre gestionnaire de l'événement « sales_order_invoice_item_collection_load_before ». Obtenir l'objet de collection de l'événement et attacher cette fonction

$invoiceObject->addAttributeToSort('sku', 'desc') 
+0

Merci. J'ai trouvé un article expliquant comment accrocher les événements ici: http://techportal.ibuildings.com/2010/04/20/writing-a-custom-magento-module/ - Mais allez-vous nous aider à concrétiser cette idée? exemple de travail? – wes

Questions connexes