2010-11-16 11 views
0

Je suis en train d'utiliser Ext GroupingView mais sa liste simplement les lignes sans grouper mon code pour GroupingStore:Poste GroupingView ne fonctionne pas une simple liste les lignes sans regroupement

//......................................................// 
_store = new Ext.data.GroupingStore({ 
    autoDestroy: true, 
    proxy: new Ext.data.MemoryProxy({ items: [] }), 
    remoteSort: true, 
    groupOnSort: true, 
     sortInfo: { 
     field: 'xxxExamProfg', 
     direction: "ASC" 
    }, 
    groupField: 'xxxExamProfg',    
    reader: new yyy.xxxExamDetJsonReader() 
}); 

_gridPanel = new yyy.xxxExamDetGridPanel(Ext.copyTo({ 
    id: _this.id + '-gridPaneld', 
    store: _store, 
}, _this.initialConfig, [])); 

Ext.apply(_this, { 
    onRender: function(ct, position) { 
     yyy.xxxExamDetListField.superclass.onRender.call(_this, ct, position); 
     _this.wrap = _this.el.wrap({ cls: 'x-form-field-wrap' }); 
     _this.resizeEl = _this.positionEl = _this.wrap; 
     _gridPanel.render(_this.wrap); 
    }, 
    //......................................................// 
    setValue: function(v) { 
     _gridPanel.getStore().proxy.data.items = v; 
     _gridPanel.getStore().load(); 
     return yyy.xxxExamDetListField.superclass.setValue.apply(_this, arguments); 
    }, 
    getValue: function() { 
     return _gridPanel.getStore().proxy.data.items; 
    } 
}); 

et mon code pour GridPanel:

yyy.xxxExamDetGridPanel = Ext.extend(Ext.grid.GridPanel, { 
    border: false, 
    initComponent: function() { 
     this.colModel = new Ext.grid.ColumnModel({ 
     defaults: { width: 100, sortable: true }, 
     view: new Ext.grid.GroupingView({ 
      forceFit: true, 
      // custom grouping text template to display the number of items per group 
      groupTextTpl: '{text} ({[values.rs.length]} {[values.rs.length > 1 ? "Items" : "Item"]})' 
     }), 
      columns: [ 
       { dataIndex: 'Fservice', header: 'Exam Code', xtype: 'gridcolumn' }, 
       { dataIndex: 'xxxExamProfgdescr', header: 'xxxExamProfgdescr', xtype: 'gridcolumn' }, 
       { dataIndex: 'xxxExamProfg', header: 'xxxExamProfg', xtype: 'gridcolumn' }, 
       { dataIndex: 'Fedate', header: 'Date', xtype: 'datecolumn', format: 'd/m/Y' } 
      ] 
     }); 
     yyy.xxxGridPanel.superclass.initComponent.apply(this, arguments); 
    } //initComponent 
}); 

Ext.reg('yyy.xxxExamDetGridPanel', yyy.xxxDetGridPanel); 

J'essaye de comprendre pourquoi énumérant seulement les rangées sans les grouper ou aucun moyen de le déboguer?

Répondre

0

Vous avez placé GroupingView dans ColumnModel. Au lieu de cela, vous devez l'affecter à this.view comme vous affectez ColumnModel à this.colModel.

Ceci est un bon exemple de l'importance de l'indentation - votre erreur aurait été immédiatement claire pour tout le monde un peu expérimenté.