Ich erstelle ein neues Modul, das ein Bestellraster für ein bestimmtes Produkt verwendet (dies ist nicht das Berichtsraster). In Magento Admin habe ich erfolgreich ein neues Bestellraster dafür erstellt, aber ich möchte am Ende den Gesamtpreis für das Produkt erhalten, wie im Verkauf > melden.
Bitte siehe Bild
Jede Hilfe wird geschätzt ,, Danke
magento-1.7
adminhtml
grid
grid-serlization
Keyur Shah
quelle
quelle
Antworten:
1.Sipmle Weg, fügen Sie diese Felder zu Ihrer Gürtelklasse hinzu, siehe meine:
Mein Ergebnis
2.Verwenden von Magento-Berichten: (Aber dieser ist so kompliziert)
Sie sollten ein Berichtsraster erstellen. Siehe
Mage_Adminhtml_Block_Report_Customer_Orders_Grid
Berichtsraster und versuchen Sie, das eigene Element zu impfen. Hier finden Sie großartige Tipps zu benutzerdefinierten Berichten:http://codegento.com/2011/03/creating-custom-magento-reports
http://www.summasolutions.net/blogposts/custom-reports-magento
quelle
Die Antwort von mageUz ist wirklich gut und einfach.
Ich hatte einige Probleme mit der Spalte "Aktion", die in der Summenzeile angezeigt wird, also habe ich mich etwas weiter damit befasst. Hier ist es also...
1. Blenden Sie die Aktionsspalte in Summen und mehr aus
Aufgrund wahrscheinlich ein Fehler in
widget/grid.phtml
dem'is_system'
wird der Parameter nicht in Betracht genommen, so zeigt es den Aktionslink in der Zeile Summen. Um dies zu lösen, fügen Sie einfach'totals_label' => '',
Ihre Aktionsspaltendeklaration hinzu.Der
'totals_label' => 'label',
Parameter kann in allen Spalten verwendet werden und überschreibt die Summenzelle, auch wenn sie festgelegt ist.Das heißt, Sie können die
$fields['entity_id']='Totals';
Zeile der Antwort von mageUz weglassen, zur Spalte 'entity_id' (oder einer beliebigen Spalte, die Sie auswählen) gehen und hinzufügen'totals_label' => $this->__('Total'),
(+ mehrsprachige Unterstützung)2. Gleiches Ergebnis, etwas anderer Ansatz
Fügen Sie in Ihrem Rasterblock eine geschützte Funktion _prepareTotals ($ column) hinzu. Rufen Sie es dann in der Funktion _prepareCollection () mit den gewünschten Zeilen als durch Kommas getrennte Summen auf. Um klarer zu sein, sollte Ihre Whatever / Grid.php ungefähr so aussehen
quelle
Die Antwort von Yiorgos Moschovitis funktioniert jedoch (Magento v1.5.1). Dies führt dazu, dass die Summe die Summe ALLER Zeilen ist. Die eingestellten Filter werden ignoriert.
Der Schlüssel, der geändert werden musste, war, den
prepareTotals
NACH dem zu setzenparent::_prepareCollection()
Der Rest des Codes ist der gleiche.
Der einzige Nachteil ist, dass die Zeilensummen auf die aktuell angezeigte Seite beschränkt sind.
quelle