too simple business logic..
1. You should have From Purchasing to Good Receive Note to Inventory Item..So the flow is understable.
2. There's a lot more complexity in asset or inventory control.
Change 3rdparty named Ext.ux.Wizard.js
well,We can change 3rdparty named Ext.ux.Wizard 's file.
1.Ext.ux.Wizard.js line from 381 to 387:
org:
Code:
for (var i = 0, len = cards.length; i < len; i++) {
cards[i].on('show', this.onCardShow, this);
cards[i].on('hide', this.onCardHide, this);
cards[i].on('clientvalidation', this.onClientValidation, this);
}
this.cardPanel = Ext.create('Ext.panel.Panel', cardPanelConfig);
after change:
Code:
this.cardPanel = Ext.create('Ext.panel.Panel', cardPanelConfig);
var layoutItems = this.cardPanel.layout.getLayoutItems();
for (var i = 0, len = layoutItems.length; i < len; i++) {
layoutItems[i].on('show', this.onCardShow, this);
layoutItems[i].on('hide', this.onCardHide, this);
layoutItems[i].on('clientvalidation', this.onClientValidation, this);
}
2.method getWizardData
org:
Code:
getWizardData: function () {
var formValues = {};
var cards = this.cards;
for (var i = 0, len = cards.length; i < len; i++) {
if (cards[i].form) {
formValues[cards[i].id] = cards[i].form.getValues(false);
} else {
formValues[cards[i].id] = {};
}
}
return formValues;
}
after change:
Code:
getWizardData: function () {
var formValues = {};
var layoutItems = this.cardPanel.layout.getLayoutItems();
for (var i = 0, len = layoutItems.length; i < len; i++) {
if (layoutItems[i].form) {
formValues[layoutItems[i].id] = layoutItems[i].form.getValues(false);
} else {
formValues[layoutItems[i].id] = {};
}
}
return formValues;
}
then we can support create cards using xtype