Success! Looks like we've fixed this one. According to our records the fix was applied for EXTJS-7990 in 4.2.2.1144.
  1. #1
    Ext JS Premium Member
    Join Date
    Mar 2008
    Location
    Phoenix, AZ
    Posts
    628
    Vote Rating
    10
    zombeerose will become famous soon enough zombeerose will become famous soon enough

      0  

    Default [4.1.3] Grouping feature initially disabled but store is still grouped

    [4.1.3] Grouping feature initially disabled but store is still grouped


    REQUIRED INFORMATION


    Ext version tested:
    • Ext 4.1.3
    Browser versions tested against:
    • Chrome 23
    Description:
    • If the grouping feature is initially configured as 'disabled:true' but the store is defined with a groupField, then the checked state of the grouping menu item is inconsistent with the store.
    Steps to reproduce the problem:
    • Run the code.
    • Examine the query parameters for the "sheldon.xml" request. Both a "group" and "sort" param are being sent.
    • Examine the state of the "Show in groups" checkbox in the column header menu.
    • Click the "Show in groups" checkbox twice so that it is the same checked state.
    • Run this code:
      Code:
      Ext.ComponentQuery.query('gridpanel')[0].getStore().load()
    • Examine the query parameters of the second "sheldon.xml" request. The params "group" and "sort" were not specified.

    The result that was expected:
    • If the grouping feature is initially configured, the store data should not be grouped.
    The result that occurs instead:
    • The data is initially grouped.
    Test Case:

    I modified the code in xml-grid.js as follows:
    Code:
    Code:
    Ext.require([
        'Ext.data.*',
        'Ext.grid.*'
    ]);
    
    
    Ext.onReady(function(){
        Ext.define('Book',{
            extend: 'Ext.data.Model',
            proxy: {
                type: 'ajax',
                reader: 'xml'
            },
            fields: [
                // set up the fields mapping into the xml doc
                // The first needs mapping, the others are very basic
                {name: 'Author', mapping: '@author.name'},
                'Title', 'Manufacturer', 'ProductGroup'
            ]
        });
    
    
        // create the Data Store
        var store = Ext.create('Ext.data.Store', {
            model: 'Book',
            autoLoad: true,
            groupField: 'Author', //<--- NEW
            proxy: {
                // load using HTTP
                type: 'ajax',
                url: 'sheldon.xml',
                // the return will be XML, so lets set up a reader
                reader: {
                    type: 'xml',
                    // records will have an "Item" tag
                    record: 'Item',
                    idProperty: 'ASIN',
                    totalRecords: '@total'
                }
            }
        });
    
    
        // create the grid
        Ext.create('Ext.grid.Panel', {
            store: store,
            columns: [
                {text: "Author", flex: 1, dataIndex: 'Author'},
                {text: "Title", width: 180, dataIndex: 'Title'},
                {text: "Manufacturer", width: 115, dataIndex: 'Manufacturer'},
                {text: "Product Group", width: 100, dataIndex: 'ProductGroup'}
            ],
            renderTo:'example-grid',
            width: 540,
            height: 200,
            features: [{ //<--- NEW
                disabled: true,
                ftype: 'grouping'
            }]
        });
    });


    HELPFUL INFORMATION

    Debugging already done:
    • none
    Possible fix:
    • none
    Additional CSS used:
    • only default ext-all.css
    Operating System:
    • Win 7

  2. #2
    Sencha - Senior Forum Manager mitchellsimoens's Avatar
    Join Date
    Mar 2007
    Location
    Gainesville, FL
    Posts
    37,404
    Vote Rating
    849
    mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute

      0  

    Default


    This is done intentional when you have groupField set on the store:

    Code:
            if (!groupers && groupField) {
                groupers = [{
                    property : groupField,
                    direction: config.groupDir || me.groupDir
                }];
            }
    Mitchell Simoens @SenchaMitch
    Sencha Inc, Senior Forum Manager
    ________________
    Check out my GitHub, lots of nice things for Ext JS 4 and Sencha Touch 2
    https://github.com/mitchellsimoens

    Think my support is good? Get more personalized support via a support subscription. https://www.sencha.com/store/

    Need more help with your app? Hire Sencha Services services@sencha.com

    Want to learn Sencha Touch 2? Check out Sencha Touch in Action that is in print!

    When posting code, please use BBCode's CODE tags.

  3. #3
    Ext JS Premium Member
    Join Date
    Mar 2008
    Location
    Phoenix, AZ
    Posts
    628
    Vote Rating
    10
    zombeerose will become famous soon enough zombeerose will become famous soon enough

      0  

    Default


    @mitchellsimoens

    Ok - can the docs be updated to indicate this or a console warning be added since the UI does not indicate that grouping is actually in effect?

Thread Participants: 1