Announcement

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

    Client side filtering doesn't work

    Isomorphic,

    I have come across this strange behavior today. I enabled the filter editor and put a criteria which would fetch only few rows (10 rows, all fetched on first request). When I try to filter the client side data by entering some values and clicking the filter icon, it displays the message: 'No items to show'.
    It doesn't show even after clearing all the filter editor entries.

    The same works in the case when a query doesn't fetch all rows to the client i.e when server side filtering is involved. It works absolutely fine as long as all rows are not present on client-side.

    I don't get any errors etc. in the logs. There is no entry in the log at all when I press the filter button when whole data is available on client side.

    Version:SC_SNAPSHOT-2012-01-17_v8.2p/Enterprise Deployment 2012-01-17
    Happens on all the browser without any log message or error.

    Using SQL datasource.

    Can you please look into this asap.

    Thanks.

    #2
    We're not seeing this with some basic test cases (and are not aware of a change in this area that would have introduced this bug for you).
    If you can show us a reproducible test case we'll take a look.

    Thanks
    Isomorphic Software

    Comment


      #3
      Isomorphic,

      I have used AdvancedCriteria in my use case. Now when I change it to Criteria object instead, filtering works but always does server side filtering though the data is available on the client.

      I have earlier posted this here:
      http://forums.smartclient.com/showthread.php?t=19720

      With Criteria object the behavior is as mentioned in the above link.

      Thanks.

      Comment


        #4
        Your bug with an edge case of AdvancedCriteria comparison being incorrect was long since fixed.

        Both examples and dozens of our automated test cases show there is no basic issue with simple Criteria. So again, we need a way to reproduce the problem.

        Comment


          #5
          Isomorphic,

          I have sent all the relevant code for a standalone testcase to: support@isomorphic.com.

          Can you please look into it and confirm.

          Thanks.

          Comment


            #6
            Did you send the wrong files? You're talking about an issue with Criteria but your test case involves AdvancedCriteria. It's also been tested against an old build and should be tested against the latest patched version (see smartclient.com/builds).

            Comment


              #7
              Hi,

              I have sent the correct files, but mentioned the version wrong in my email.

              This happens in the build i mentioned in my first post in this thread:
              Isomorphic SmartClient Framework (SC_SNAPSHOT-2012-01-17_v8.2p/Enterprise Deployment 2012-01-17)

              The use case I have sent is using the AdvanceCriteria. All the screenshots etc belong to this scenario.

              However I tried the same using just Criteria. It always does a server request instead of client side filtering when all Records are available on the client

              Let me know if you need anything more.

              Thanks.

              Comment


                #8
                We can't run this without being able to see the actual response that the server is returning, from the RPC tab in the Developer Console. It would also be useful to have the actual response text as captured by Firebug, which we can then use to spoof your server response (we have none of your SQL tables, etc).

                Comment


                  #9
                  Hi,

                  I have mailed the response using FireBug.

                  Thanks.

                  Comment


                    #10
                    Isomorphic,

                    Any update on this. Let me know if anything else is needed.

                    Thanks.

                    Comment


                      #11
                      What you sent was enough for us to see the problem. We believe it is now resolved. Please try the next nightly build (3.0p branch, dated Jan 27 or higher).
                      If the issue persists, let us know

                      Regards
                      Isomorphic Software

                      Comment


                        #12
                        Isomorphic,

                        This still doesn't work. I have mailed you the stand alone test case details.

                        Thanks.

                        Comment


                          #13
                          Isomorphic,

                          I got the following reply from support on this:

                          Code:
                          Your data does not include values for CLIENT_ID.  Since your criteria specify CLIENT_ID must be 112, as soon as client-side filtering is applied all records are eliminated.
                          
                          The data delivered to the client must, in general, include all data values that are referenced in criteria.  Otherwise there is no way that client-side filtering could operate correctly.
                          But don't you think it's ridiculous to expect all the where clause columns to be present in the select clause too. Where clause can be used to restrict the number of rows fetched, not necessarily a select column is necessary.

                          Thanks.

                          Comment


                            #14
                            As support already explained, there is no possible way that client-side filtering can work unless it actually has the data values available. Otherwise there is no way to tell whether records match the criteria so obviously client-side filtering cannot be performed.

                            You can always choose to return only certain columns, in this case, turn off client-side filtering.

                            Comment


                              #15
                              Isomorphic,

                              I tried putting client_id as mentioned by support. But still client side filtering is inconsistent.

                              Please find attached screenshots on filter. Nothing is seen in the logs. How do I resolve this inconsistent behavior. If you observe the filtering doesn't work properly, certain records are missing after filter and when filter is removed. In this case I have included client_id as part of select clause. So filter works but not appropriately.

                              Let me know you need any other details.


                              Thanks.
                              Attached Files

                              Comment

                              Working...
                              X