Klara
30. März 2016 um 14:34
1
Hallo zam!
ich habe eine Erweiterung für die Bestellungsdetails geschrieben, die den Orderstatus gleich mitsetzt, und anschließend das detail-fenster schließt. Soweit so gut, nur ist leider doof, dass sich das Order-Window nicht so updatet, wie wenn man z.B. den Bestellstatus wechselt und dann speichert.
Hat jemand eine idee, wie ich von meinem Bestellfenster aus das aktualisieren des Orderfensters antriggern kann?
Ich wäre unendlich dankbar für einen tipp. Sitze jetzt schon so lange da dran…
Grüße
Hallo Klara,
eventuell helfen dir die beiden Anweisungen weiter. Du könntest es mit
overview.detailsForm.loadRecord(order);
oder mit
Ext.getCmp('id des Formulars').getStore().load();
probieren. So lade ich meine Formulare tab-übergreifend neu.
Hoffe das hilft und stimmt so … Bin auch noch nicht so lange dabei.
LG Max
1 „Gefällt mir“
Klara
31. März 2016 um 09:32
3
Hallo Max,
schon mal danke für deinen Tipp! Ich brings aber noch nicht ganz zum llaufen.
Auf meinem Button lege ich den Handler:
Ext.create(‘Ext.button.Button’, {
text: ‘Zur Lieferung bereit’,
cls:‘primary topSpace’,
handler:function(button, e) {
//overview.detailsForm.loadRecord (oId);
console.log(Ext.ComponentMgr.all);
var myComponentes = Ext.ComponentQuery.query(‘form’);
for(each in myComponentes) {
console.log(myComponentes[each][“title”]);
}
button.up(’.window’).close();
},
Ich versuche mir dann anhand des titles die ID des Formulars zu holen, in dem Array der Componenten und versuche dann:
Ext.getCmp(‘order-overview-panel-1439’).getStore().load();
VM10324:2 Uncaught TypeError: Cannot read property ‘getStore’ of undefined(…)(anonymous function) @ VM10324:2InjectedScript._evaluateOn @ (program):878InjectedScript._evaluateAndWrap @ (program):811InjectedScript.evaluate @ (program):667
Ext.getCmp(‘form-1464’).getStore().load();
VM10326:2 Uncaught TypeError: Cannot read property ‘getStore’ of undefined(…)
leider haut das nicht so recht hin - bzw ich machs hald falsch
welche Id brauche ich denn da genau?
LG
Klara
31. März 2016 um 10:14
4
Hab es jetzt so gelöst - weniger elegant, aber funktionell:
var myComponentes = Ext.ComponentQuery.query(‘button’);
for(each in myComponentes) {
if(myComponentes[each][“itemId”] == “refresh”) {
try {
myComponentes[each].el.dom.click();
} catch(e) {
}
}
}