Hallo shopware Gemeinde,
für ein Plugin-Update bräuchte ich Eure Unterstützung zu dem neuen Attribut-System. Konkret geht es um die Erweiterung der Bestellübersicht, dort soll nach einem order attribute gefiltert werden und das Attribut soll in der Übersicht aufgeführt werden.
Für shopware 5.1 habe ich das bisher so gelöst:
Auszug aus list.js
getColumns: function() {
var me = this;
var columns = me.callOverridden(arguments);
var meineSpalte = {
header: 'Spaltenname',
dataIndex:'attribute[mein_neues_Attribut]',
flex: 1,
sortable: true,
renderer: function (p,v,r) {
return me.meineRenderMethode(r.getAttributesStore.data.items[0].raw.meinNeuesAttribut);
}
};
return Ext.Array.insert(columns, 10, [meineSpalte]);
},
Auszug aus filter.js
override: 'Shopware.apps.Order.view.list.Filter',
createFilterForm: function() {
var me = this;
var filterForm = me.callOverridden(arguments);
filterForm.add(me.createNewField());
return filterForm;
},
createNewField: function() {
var me = this;
return Ext.create('Ext.form.field.ComboBox', {
xtype: 'combobox',
flex: 1,
name: 'attribute.meinNeuesAttribut',
emptyText: me.snippets.empty,
fieldLabel: 'Spaltenname',
valueField: 'name',
displayField: 'description',
queryMode: 'local',
mode: 'local',
required: false,
editable: false,
allowBlank: true,
store: me.meinStore
});
}
Vielleicht hat jemand ein Code-Beispiel wie ich das für shopware 5.2 lösen kann?
Ich bekomme das attributeForm via “me.attributeForm.loadAttribute(record.get(‘id’));” geladen, mir ist jedoch nicht ganz klar, wie ich den Wert auslesen kann, um diesen beispielsweise an den Renderer weiter zugeben.
Vielen Dank für Eure Hilfe!
Beste Grüße
Pascal