Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    ListGrid filtering issue

    Hi,

    We're currently having a weird problem with 'local' listGrid filtering. The problem happens when the last bit of filtering
    data gets removed. The problem is that the underlying ResultSet's allRows array gets truncated to the contents of
    the 1st filter's resulting data, rather than actually all the rows that were fetched initially.

    To reproduce, use the sample code further below and follow these steps:

    1) When the screen gets loaded note the total number of records - let's say 100, depending on your data source

    2) Key-in one letter (only one letter) to filter out some of the records (any column). Click filter. Note the total number of records - let's say 75.

    3) Key-in a second letter to filter out even more data (same column as step 2). Click filter. You have less rows displayed, everything normal up to now.

    4) Now press delete a single time to remove the first letter from your filter. Click filter. You are back with 75 records - OK up to now.

    5) Now press delete a second time to remove the last letter from your filter. Click filter. YOU ARE STILL WITH 75 RECORDS.

    We should have gone back to 100 records. Or at least this is what I would have expected.

    I used the following straight forward code (under SDK version 7.0 beta) to reproduce.

    Can you tell me if I'm doing something wrong or if this is a bug?

    Thanks for your help!

    Code:
    var Test = isc.defineClass("Test", "Canvas");
    Test.addProperties
    ({
    	width : "100%",
    	height : '100%',
    
    	//----------------------------------------------------------------------------------------------------------------------------
    	initWidget : function()
    	{
    		this.Super("initWidget", arguments);
    
    		var DS_user = DataSource.create
    		({
    			ID : 'DS_user',
    			title : 'User', 
    			recordXPath : '//selector/row',
    			dataURL : 'data/User.xml',
    			dataFormat : 'xml',
    			fields :
    			[
    				{ name : 'LastName', title : 'Last Name', type : 'text', length : 80, sortDirection : 'ascending' },
    				{ name : 'FirstName', title : 'First Name', type : 'text', length : 80 },
    				{ name : 'Code', title : 'Code', type : 'text', length : 80, hidden : true, primaryKey : true }
    			]
    		});
    
    		var listGrid = ListGrid.create
    		({
    			width : '100%',
    			height : '100%',
    			alternateRecordStyles : true,
    			dataSource : DS_user,
    			showFilterEditor : true,
    			dataProperties :
    			{
    				fetchMode : 'local',
    				useClientFiltering : true
    			},
    			showAllRecords : true,
    			showSortArrow : 'field',
    			selectionType : 'multiple',
    			autoFetchData: true
    		});
    
    		this.addChild(listGrid);
    	}
    });

    #2
    Hi Yan,
    This is an issue with the 7.0beta build which has subsequently been resolved.
    We're very close to putting out a new release (which will contain this fix) - are you blocked by this, or would you be able to wait for a new build?

    Thanks
    Isomorphic Software

    Comment


      #3
      We can sure wait for the next 7.0 release to come out. Our software is not going GA for some time. I just wanted
      to make sure it wasn't something I was doing wrong. Glad to see that it will be taken care of.

      Keep up your excellent work and thanks for your quick reply.

      Regards,

      Comment

      Working...
      X