Announcement

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

    10.1p/11.1p: Grouped ListGrid editing group column null-value bug

    Hi Isomorphic,

    please see this issue I found creating a testcase. Rows switch groups when setting the value to null when they should be in "Population over 1 billion" according to the sample code("else...").
    After a new load of the sample via "Try it", everything is OK again:

    Please modify this sample (v10.1p_2017-10-25, but also an issue in 11.1p) as follows and also change the data to match the video:
    Code:
    isc.ListGrid.create({
        ID: "countryList",
        width:500, height:[B]600[/B],
        alternateRecordStyles:true,
        dataSource: countryDS,
    [B]canEdit: true,[/B]
    ...
    ...
    Click image for larger version

Name:	Group change for null values.gif
Views:	126
Size:	191.5 KB
ID:	249929

    I have a similar problem in my application (group change only working when value is not null before).

    Best regards
    Blama

    #2
    We've made a fix for this to SGWT 5.1p/SC 10.1p and newer releases. It will be in the nightly builds dated 11-01-2017 and beyond.

    Comment


      #3
      Hi Isomorphic,

      it is working now consistently in the showcase, although I'm wondering if it is correct the way it is (most likely only a sample bug):
      Code:
                  getGroupValue : function (value, record, field, fieldName, grid) {
                      if      (value < 100000000)  return this.GROUP_SMALL;
                      else if (value < 1000000000) return this.GROUP_MED;
                      else                         return this.GROUP_LARGE;
                  },
      In SmartClient, this is the grouping code and all null-values now are in GROUP_SMALL, and this is consistent with JavaScript evaluating (null < 100000000) to true.

      In the same SmartGWT example (v11.1p_2017-11-01) setting a population value to null does result in a bunch of JS exceptions in the Developer Console and this display:
      Click image for larger version

Name:	Error-with-Null-population.PNG
Views:	70
Size:	20.3 KB
ID:	250118
      Most likely this is only a missing null-check here:
      Code:
      populationField.setGroupValueFunction(new GroupValueFunction() {  
          public Object getGroupValue(Object value, ListGridRecord record, ListGridField field, String fieldName, ListGrid grid) {  
      [B]int population = (Integer) value;  [/B]
      if(population < 100000000) {  
          return groupSmall;  
      } else if  (population < 1000000000) {  
          return groupMed;  
      } else {  
          return groupLarge;  
      }  
          }  
      });
      Best regards
      Blama

      Comment


        #4
        Hi Isomorphic,

        the change fixed the issue in my application (5.1p) for me as well. Most likely, is only the sample bug that is left.

        Thank you & Best regards,
        Blama

        Comment


          #5
          The sample issue will be resolved for SGWT 6.1p and newer releases in the nightly builds dated 2017-11-07 and beyond.

          Comment


            #6
            Hi Isomorphic,

            the SmartGWT sample (now v11.1p_2017-12-29) is now working for me with null-values as well.

            Best regards
            Blama

            Comment

            Working...
            X