Announcement

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

    Expression filtering: change of notEqual expression does not refilter

    Hi,
    I test filter expressions, for example in the feature explorer SmartClient_Explorer.html#expressionFilter example. When I enter this value:
    !430
    in the area filter, and press enter it correctly filters, however when I then change this to:
    !450
    and press enter no refiltering happens.

    After some debugging I found that the stringComparisonComp() method in DataSource.js has this code:
    if (operator.equals) {
    if ((oldVal == newVal && !operator.negate) ||
    (oldVal != newVal && operator.negate))
    {
    return 0;
    }
    return -1;
    }

    it gets into this code but incorrectly assumes that the filter expressions has not changed and no refiltering is done. I tried different criteriapolicies but it did not help.

    I am using the 8.1 nightly build of 28-9 on chrome.

    gr. Martin

    #2
    We're not reproducing this in the latest codebase or on the public feature explorer here http://www.smartclient.com/#expressionFilter.

    Can you try with the latest nightly build.

    Comment


      #3
      I can reproduce on the feature explorer on smartclient.com. I first typed in:
      1) !450
      2) then pressed enter
      3) filtering happens
      4) then changed !450 --> !430
      5) pressed enter
      6) no refilter happens

      I will try later this weekend on the latest nightly.

      gr. Martin

      Comment


        #4
        No need - we just re-tested and are seeing it. It appears to be a Chrome-only bug.
        We'll let you know when we have a resolution for you.

        Comment


          #5
          We've made a change that should resolve this. Please try the next nightly build

          Thanks
          Isomorphic Software

          Comment


            #6
            This still occurs in the 8.1 build of 22th of October. You can reproduce it as follows in the expressionFilter example:
            - clear all filter expressions
            - in the first column (string) first enter: !BD
            - press enter --> the grid gets filtered
            - change the filter to !US
            - press enter --> the grid does not get refiltered

            Afaics the issue is still in the same code snippet I listed above, afaics it is not correct to assume that two notequal expressions with unequal values are equivalent.

            Note if there are other filter expressions then it can't be reproduced. I tested on chrome 14 on Ubuntu.

            gr. Martin
            Last edited by martintaal; 26 Oct 2011, 04:08.

            Comment


              #7
              This was fixed in the 8.2 branch but the fix wasn't ported to the 8.1 branch.
              Now fixed in both branches so should show up in nightly builds going forward on either branch

              Comment

              Working...
              X