Announcement

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

    Multi-select Filter problems

    Hello

    I'm using
    SmartClient_v83d_2012-10-04_LGPL
    Internet Explorer 8

    Multi-select Filter doesn't show all records!
    I've a listGrid in wich one of the fields (Animals) is multi-select. Multi-select filter has problems in work: if I
    choose few values in filter, like "Cat","Dog" then in the listGrid I'll see rows, that in "Animals" field have only "Cat" or "Dog", but if field contain bouth "Cat" and "Dog" values then this row won't be displayed

    Code:
    var listGrid  = isc.ListGrid.create({
            ID: "list",
            alternateRecordStyles:true,
            dataSource:dataSource,
            autoFetchData: true,
            showFilterEditor: true,
            canGroupBy: false,
            dataFetchMode: "paged",
            canEdit:false,   
            showAllRecords: true,  
            selectionType: "single",
            fields: [
                {
                    name:"id",
                    width:1
                },
                {
                    title:"Animals",
                    name:"animals",
                    ,multipleAppearance:"picklist"
                    ,valueMap:["Dog","Cat","Fish"]
                 },
                 {
                    title:"text",
                    name:"text",
                    canFilter: false,
                },
               ]
    });
    Last edited by Johnny_T; 9 Oct 2012, 04:38.

    #2
    The provided JS code has some syntax errors, but a when those were fixed, everything seemed to work fine.

    I inserted the following code into our TilingFilter example (SmartClient_Explorer.html#tilingFilter) in the SC showcase:

    Code:
    var listGrid  = isc.ListGrid.create({
            ID: "list",
            width:400,height:200,
            alternateRecordStyles:true,
            dataSource:animals,
            autoFetchData: true,
            showFilterEditor: true,
            canGroupBy: false,
            dataFetchMode: "paged",
            canEdit:false,  
            showAllRecords: true, 
            selectionType: "single",
            fields: [
                {
                    name:"id",
                    width:1
                },
                {
                    title:"Animals",
                    name:"commonName",
                    multiple: true,
                    multipleAppearance:"picklist",
                    valueMap:["Lion","Koala","Ostrich"]
                 },
                 {
                    title:"text",
                    name:"text",
                    canFilter: false
                }
               ]
    });
    This code uses the DataSource from that showcase sample.

    Comment


      #3
      Multi-select Filter problems

      I tried the code with your corrections with my datasource, but it doesn't work.
      l've created 3 rows in grid :
      Code:
          --id--              --Animals--           --text--
             1                   Lion                some text
             2                   Koala               some text
             3                Lion, Koala            some text
      In filter I choose 2 values : Lion and Koala. After filtering got only 2 rows :
      Code:
          --id--              --Animals--           --text--
             1                    Lion                some text
             2                    Koala               some text
      The row with "Lion, Koala" value wasn't found
      Last edited by Johnny_T; 10 Oct 2012, 06:14.

      Comment


        #4
        Can you supply your datasource--the defining xml and any test data file?

        Take a look at the "animalsDS" tab in the showcase sample mentioned in the previous post to see an example of a datasource XML definition.

        Comment


          #5
          I've exactly the same problem.
          Using:
          Firefox 19.0.1
          SmartGWT 3.0
          2.4.0 GWT SDK

          I'm trying to use a multi-select filter and get as result only the "single matches".
          For example: if I filter "A & B", i get only items with "A" or "B" but not "A,B" or "B,A".

          Datasource fields:
          Code:
          <field name="ActiveSeasons" length="255" type="select" multiple="true" title="Saison" optionDataSource="tecnoSeasonDefinitions" optionOperationId="fetchDistinctSeasonName" displayField="SeasonName" valueField="SeasonName"></field>
          <field name="Brands" length="255" type="text" hidden="true" title="Marken" optionDataSource="tecnoBrands" displayField="BrandCode" valueField="BrandCode" multiple="true"></field>
          field in optionDatasource:
          Code:
          <field name="BrandCode" length="5" type="text" title="Markencode" required="true"></field>
          Code:
          <field name="SeasonName" title="Saison" length="2" type="text" required="true"></field>
          PS. I couldn't find the animal sample in the SC Showcase, I searched under "Grids", is it at an other position?
          Last edited by LKirsch; 26 Mar 2013, 00:54.

          Comment


            #6
            "animals" is a sample DataSource used in SmartClient samples, it is not used in SmartGWT samples. Any other sample DataSource is fine for testing.

            However, like the previous poster, you haven't posted your DataSource or the server-side log, so we don't even know what type of persistence you're using (SQL, JPA, Hibernate, custom?), and have nothing to analyze to see where the problem is.

            Comment


              #7
              The hole datasource (for the exact fields see my previous post):

              Code:
              <DataSource schema="dbo" dbName="RTGRIM" tableName="tecnoHotels"
              	ID="tecnoHotels" dataSourceVersion="1"
              	generatedBy="SC_SNAPSHOT-2011-12-05/EVAL Deployment 2011-12-05"
              	serverType="sql">
              	<fields>
              		<field primaryKey="true" name="ID" length="10" type="text"
              			hidden="true"></field>
              		<field name="Name" title="Hotel Name" length="200" type="text"></field>
              		<field name="Action" length="6" type="text" hidden="true"></field>
              		<field name="DestinationAirport" length="3" type="text" title="Airport"></field>
              		<field name="DestinationAirport2" length="3" type="text" title="Airport 2"></field>
              		<field name="DestinationAirport3" length="3" type="text" title="Airport 3"></field>
              		<field name="Type" length="3" type="text" hidden="true"></field>
              		<field name="Stars" title="Sterne" length="5" type="text"
              			multiple="true">
              			<valueMap>
              				<value>N</value>
              				<value>1</value>
              				<value>2</value>
              				<value>3</value>
              				<value>4</value>
              				<value>5</value>
              				<value>6</value>
              			</valueMap>
              		</field>
              		<field name="CityCode" length="5" type="text" title="CityCode"></field>
              		<field name="LocationCode" length="5" type="text" hidden="true"
              			title="LocationCode"></field>
              		<field name="TransferCode" length="20" type="text" hidden="true"></field>
              		<field name="AgentCode" length="8" type="text" title="Ext. System"
              			multiple="true">
              			<valueMap>
              				<value>GTA</value>
              				<value>HB</value>
              				<value>MTS</value>
              			</valueMap>
              		</field>
              		<field name="GiataCode" length="12" type="text" title="GiataCode"></field>
              		<field name="CatalogStart" type="datetime" hidden="true"></field>
              		<field name="CatalogStop" type="datetime" hidden="true"></field>
              		<field name="PublicDay" type="datetime" hidden="true"></field>
              		<field name="StopSaleDate" type="datetime" hidden="true"></field>
              		<field name="Customer" length="30" type="text" hidden="true"></field>
              		<field name="IffCode" length="5" type="text" hidden="true"></field>
              		<field name="ExportArt" type="integer" hidden="true"></field>
              		<field name="ExtHrs" length="30" type="text" hidden="true"></field>
              		<field name="Active" type="boolean" hidden="true"></field>
              		<field name="ADDRESS" length="200" type="text" hidden="true"></field>
              		<field name="POSTALCODE" length="60" type="text" hidden="true"></field>
              		<field name="CITY" title="Stadt" length="200" type="text"></field>
              		<field name="COUNTRYCODE" length="50" type="text" title="Land"></field>
              		<field name="EMAIL" length="100" type="text" hidden="true"></field>
              		<field name="WEB" length="100" type="text" hidden="true"></field>
              		<field name="EXTID" type="integer" hidden="true"></field>
              		<field name="GiataXml" type="integer" hidden="true"></field>
              		<field name="GiataUpload" type="integer" hidden="true"></field>
              		<field name="GiataForceUpload" type="integer" hidden="true"></field>
              		<field name="Defaultcontingent" type="integer" hidden="true"></field>
              		<field name="ZoneCode" type="integer"></field>
              		<field name="ZoneName" length="50" type="text" title="Region"></field>
              		<field name="EXTIDMTS" length="50" type="text" title="Ext. Code"></field>
              		<field name="ContractVersion" length="10" type="text" hidden="true"></field>
              		<field name="StopSaleUpdate" type="boolean" hidden="true"></field>
              		<field name="Comments" length="255" type="text" hidden="true"></field>
              		<field name="HotelCodeBlank" title="RTG-HotelCode" length="10"
              			type="text" canEdit="false"></field>
              		<field name="HotelABhfLandSitz" length="1" type="text" hidden="true"></field>
              		<field name="HotelABhfKurzSitz" length="5" type="text" title="Bahnhofcode"></field>
              		<field name="HotelTUeberschrift" title="Tour. Überschrift"
              			length="10" type="text"></field>
              		<field name="Flugpreisklassen" length="6" type="text" title="Flugpreisklasse">
              		</field>
              		<field name="PurchaseStatus" title="Status" length="25" type="select"
              			multiple="true">
              			<valueMap>
              				<value ID="2">Active</value>
              				<value ID="3">Deleted</value>
              				<value ID="1">New</value>
              			</valueMap>
              		</field>
              
              		<field name="SalesStatus" title="Sales Status" type="integer"
              			multiple="true">
              			<valueMap>
              				<value ID="6">Ignored</value>
              				<value ID="7">Mapped</value>
              				<value ID="1">None</value>
              				<value ID="3">On sale</value>
              				<value ID="5">Rejected</value>
              				<value ID="2">To be exported</value>
              				<value ID="4">To be rejected</value>
              			</valueMap>
              		</field>
              
              		<field name="HotelBSaisonKalkTab" length="10" type="select"
              			title="Kalkulationstabelle" optionDataSource="tecnoKalkBase"
              			displayField="GTAKalkTab_Tabelle" valueField="GTAKalkTab_Tabelle"
              			optionOperationId="fetchDistinct">
              		</field>
              		<field name="RTGName" title="RTG-Hotelname" length="200" type="text"></field>
              		<field name="XMLModifyDate" type="datetime"></field>
              		<field name="XMLModifyDateAvail" type="datetime" hidden="true"></field>
              		<field name="HotelAgent" length="3" type="text" hidden="true"></field>
              		<field name="Latitude" length="25" type="text" hidden="true"></field>
              		<field name="Longitude" length="25" type="text" hidden="true"></field>
              		<field name="HotelTProv" length="3" type="text" hidden="true"></field>
              		<field name="AvailRooms" length="255" type="text" hidden="true"
              			title="Zimmerarten"></field>
              		<field name="AvailBoards" length="255" type="text" hidden="true"
              			title="Verpflegung"></field>
              		<field name="ActiveSeasons" length="255" type="select" multiple="true"
              			title="Saison" optionDataSource="tecnoSeasonDefinitions"
              			optionOperationId="fetchDistinctSeasonName" displayField="SeasonName"
              			valueField="SeasonName"></field>
              		<field name="Brands" length="255" type="text" hidden="true"
              			title="Marken" optionDataSource="tecnoBrands" displayField="BrandCode"
              			valueField="BrandCode" multiple="true"></field>
              		<field name="RTGCategory" type="select" title="RTG-Kategorie"
              			multiple="true">
              			<valueMap>
              				<value>1</value>
              				<value>1.5</value>
              				<value>2</value>
              				<value>2.5</value>
              				<value>3</value>
              				<value>3.5</value>
              				<value>4</value>
              				<value>4.5</value>
              				<value>5</value>
              				<value>5.5</value>
              				<value>6</value>
              			</valueMap>
              		</field>
              		<field name="BlankCurrency" length="2" type="select"
              			optionDataSource="RIM_CURRENCY" displayField="NAME" valueField="CODE"
              			title="Währungsname" hidden="true" multiple="true"></field>
              		<field name="HC_RECOMMENDATION" title="Empf. (%)" type="float"></field>
              		<field name="HC_REVIEW_COUNT" title="Anzahl" type="int"></field>
              		<field name="HC_AVERAGE" title="Ø"
              			type="float"></field>
              	</fields>
              
              	<serverObject lookupStyle="new"
              		className="com.rtg.web.gwt.rim.server.dmi.TecnoHotelsDMI" />
              	<operationBindings>
              		<operationBinding operationType="fetch" operationId="defaultFetch">
              		</operationBinding>
              		<operationBinding operationType="fetch" serverMethod="searchBlankCodes"
              			operationId="searchBlankCodes" sqlPaging="none">
              		</operationBinding>
              		<operationBinding operationType="fetch" operationId="customFetch">
              			<customSQL>
              				SELECT [HotelCodeBlank]
              				FROM
              				[tecnoHotels]
              				where
              				HotelCodeBlank LIKE
              				$HotelCodeBlank
              			</customSQL>
              		</operationBinding>
              	</operationBindings>
              </DataSource>
              And the server log:
              Code:
              === 2013-04-03 15:00:04,484 [0-18] DEBUG IDACall - Header Name:Value pair: Host:127.0.0.1:8888
              === 2013-04-03 15:00:04,485 [0-18] DEBUG IDACall - Header Name:Value pair: User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20100101 Firefox/17.0
              === 2013-04-03 15:00:04,485 [0-18] DEBUG IDACall - Header Name:Value pair: Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
              === 2013-04-03 15:00:04,485 [0-18] DEBUG IDACall - Header Name:Value pair: Accept-Language:de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
              === 2013-04-03 15:00:04,485 [0-18] DEBUG IDACall - Header Name:Value pair: Accept-Encoding:gzip, deflate
              === 2013-04-03 15:00:04,485 [0-18] DEBUG IDACall - Header Name:Value pair: Connection:keep-alive
              === 2013-04-03 15:00:04,485 [0-18] DEBUG IDACall - Header Name:Value pair: Content-Type:application/x-www-form-urlencoded; charset=UTF-8
              === 2013-04-03 15:00:04,486 [0-18] DEBUG IDACall - Header Name:Value pair: Referer:http://127.0.0.1:8888/Rim.html?gwt.codesvr=127.0.0.1:9997
              === 2013-04-03 15:00:04,486 [0-18] DEBUG IDACall - Header Name:Value pair: Content-Length:2264
              === 2013-04-03 15:00:04,486 [0-18] DEBUG IDACall - Header Name:Value pair: Cookie:JSESSIONID=1c07jq47droa5
              === 2013-04-03 15:00:04,486 [0-18] DEBUG IDACall - Header Name:Value pair: Pragma:no-cache
              === 2013-04-03 15:00:04,486 [0-18] DEBUG IDACall - Header Name:Value pair: Cache-Control:no-cache
              === 2013-04-03 15:00:04,486 [0-18] DEBUG IDACall - session exists: 1c07jq47droa5
              === 2013-04-03 15:00:04,486 [0-18] DEBUG IDACall - remote user: kirschla
              === 2013-04-03 15:00:04,486 [0-18] INFO  RequestContext - URL: '/Rim/sc/IDACall', User-Agent: 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20100101 Firefox/17.0': Moz (Gecko) with Accept-Encoding header
              === 2013-04-03 15:00:04,490 [0-18] DEBUG XML - Parsed XML from (in memory stream): 3ms
              === 2013-04-03 15:00:04,497 [0-18] DEBUG RPCManager - Processing 1 requests.
              === 2013-04-03 15:00:04,500 [0-18] DEBUG RPCManager - Request #1 (DSRequest) payload: {
                  criteria:{
                      operator:"and",
                      _constructor:"AdvancedCriteria",
                      criteria:[
                          {
                              fieldName:"AgentCode",
                              operator:"inSet",
                              value:[
                                  "MTS"
                              ]
                          },
                          {
                              fieldName:"ActiveSeasons",
                              operator:"inSet",
                              value:[
                                  "S3",
                                  "S4"
                              ]
                          }
                      ]
                  },
                  operationConfig:{
                      dataSource:"tecnoHotels",
                      operationType:"fetch",
                      textMatchStyle:"substring"
                  },
                  startRow:0,
                  endRow:75,
                  componentId:"isc_HotelPortfolioView_2_0",
                  appID:"builtinApplication",
                  operation:"tecnoHotels_fetch",
                  oldValues:{
                      operator:"and",
                      _constructor:"AdvancedCriteria",
                      criteria:[
                          {
                              fieldName:"AgentCode",
                              operator:"inSet",
                              value:[
                                  "MTS"
                              ]
                          },
                          {
                              fieldName:"ActiveSeasons",
                              operator:"inSet",
                              value:[
                                  "S3",
                                  "S4"
                              ]
                          }
                      ]
                  }
              }
              === 2013-04-03 15:00:04,501 [0-18] INFO  IDACall - Performing 1 operation(s)
              === 2013-04-03 15:00:04,501 [0-18] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null
              === 2013-04-03 15:00:04,501 [0-18] DEBUG DeclarativeSecurity - DataSource tecnoHotels is not in the pre-checked list, processing...
              === 2013-04-03 15:00:04,502 [0-18] DEBUG ServerObject - Couldn't find a public method named: fetch on class: com.rtg.web.gwt.rim.server.dmi.TecnoHotelsDMI
              === 2013-04-03 15:00:04,502 [0-18] DEBUG DataSourceDMI - DataSourceDMI: no public method name: fetch available on class: com.rtg.web.gwt.rim.server.dmi.TecnoHotelsDMI - defaulting to builtin operations.
              === 2013-04-03 15:00:04,502 [0-18] DEBUG AppBase - [builtinApplication.tecnoHotels_fetch] No userTypes defined, allowing anyone access to all operations for this application
              === 2013-04-03 15:00:04,502 [0-18] DEBUG AppBase - [builtinApplication.tecnoHotels_fetch] No public zero-argument method named '_tecnoHotels_fetch' found, performing generic datasource operation
              === 2013-04-03 15:00:04,503 [0-18] INFO  SQLDataSource - [builtinApplication.tecnoHotels_fetch] Performing fetch operation with
              	criteria: {criteria:[{fieldName:"AgentCode",operator:"inSet",value:["MTS"]},{fieldName:"ActiveSeasons",operator:"inSet",value:["S3","S4"]}],operator:"and",_constructor:"AdvancedCriteria"}	values: {criteria:[{fieldName:"AgentCode",operator:"inSet",value:["MTS"]},{fieldName:"ActiveSeasons",operator:"inSet",value:["S3","S4"]}],operator:"and",_constructor:"AdvancedCriteria"}
              === 2013-04-03 15:00:04,504 [0-18] WARN  SQLWhereClause - [builtinApplication.tecnoHotels_fetch] Unable to find simple basetype for field ActiveSeasons (declared type is select)
              === 2013-04-03 15:00:04,504 [0-18] INFO  SQLDataSource - [builtinApplication.tecnoHotels_fetch] derived query: SELECT $defaultSelectClause FROM $defaultTableClause WHERE $defaultWhereClause
              === 2013-04-03 15:00:04,505 [0-18] DEBUG SQLDataSource - [builtinApplication.tecnoHotels_fetch] Executing row count query: SELECT COUNT(*) FROM $defaultTableClause WHERE $defaultWhereClause
              === 2013-04-03 15:00:04,505 [0-18] DEBUG SQLDataSource - [builtinApplication.tecnoHotels_fetch] Eval'd row count query: SELECT COUNT(*) FROM dbo.tecnoHotels WHERE (((tecnoHotels.AgentCode IN ('MTS')) AND tecnoHotels.AgentCode IS NOT NULL) AND ((tecnoHotels.ActiveSeasons IN ('S3', 'S4')) AND tecnoHotels.ActiveSeasons IS NOT NULL))
              === 2013-04-03 15:00:04,505 [0-18] DEBUG SQLConnectionManager - [builtinApplication.tecnoHotels_fetch] Returning borrowed connection '61918525'
              === 2013-04-03 15:00:04,505 [0-18] DEBUG SQLDriver - [builtinApplication.tecnoHotels_fetch] About to execute SQL query in 'RTGRIM' using connection '61918525'
              === 2013-04-03 15:00:04,505 [0-18] INFO  SQLDriver - [builtinApplication.tecnoHotels_fetch] Executing SQL query on 'RTGRIM': SELECT COUNT(*) FROM dbo.tecnoHotels WHERE (((tecnoHotels.AgentCode IN ('MTS')) AND tecnoHotels.AgentCode IS NOT NULL) AND ((tecnoHotels.ActiveSeasons IN ('S3', 'S4')) AND tecnoHotels.ActiveSeasons IS NOT NULL))
              === 2013-04-03 15:00:04,521 [0-18] DEBUG SQLDataSource - [builtinApplication.tecnoHotels_fetch] Using SQL Limit query
              === 2013-04-03 15:00:04,521 [0-18] DEBUG SQLDataSource - [builtinApplication.tecnoHotels_fetch] Using PK as default sorter: ID
              === 2013-04-03 15:00:04,521 [0-18] DEBUG SQLServerDriver - [builtinApplication.tecnoHotels_fetch] Using PK as default sorter: com.isomorphic.sql.SQLOrderClause@397376a7
              === 2013-04-03 15:00:04,521 [0-18] DEBUG SQLDataSource - [builtinApplication.tecnoHotels_fetch] SQL windowed select rows 0->75, result size 75. Query: SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY x.ID) AS rowID FROM (SELECT TOP 100 PERCENT  tecnoHotels.ADDRESS, tecnoHotels.Action, tecnoHotels.Active, tecnoHotels.ActiveSeasons, tecnoHotels.AgentCode, tecnoHotels.AvailBoards, tecnoHotels.AvailRooms, tecnoHotels.BlankCurrency, tecnoHotels.Brands, tecnoHotels.CITY, tecnoHotels.COUNTRYCODE, tecnoHotels.CatalogStart, tecnoHotels.CatalogStop, tecnoHotels.CityCode, tecnoHotels.Comments, tecnoHotels.ContractVersion, tecnoHotels.Customer, tecnoHotels.Defaultcontingent, tecnoHotels.DestinationAirport, tecnoHotels.DestinationAirport2, tecnoHotels.DestinationAirport3, tecnoHotels.EMAIL, tecnoHotels.EXTID, tecnoHotels.EXTIDMTS, tecnoHotels.ExportArt, tecnoHotels.ExtHrs, tecnoHotels.Flugpreisklassen, tecnoHotels.GiataCode, tecnoHotels.GiataForceUpload, tecnoHotels.GiataUpload, tecnoHotels.GiataXml, tecnoHotels.HC_AVERAGE, tecnoHotels.HC_RECOMMENDATION, tecnoHotels.HC_REVIEW_COUNT, tecnoHotels.HotelABhfKurzSitz, tecnoHotels.HotelABhfLandSitz, tecnoHotels.HotelAgent, tecnoHotels.HotelBSaisonKalkTab, tecnoHotels.HotelCodeBlank, tecnoHotels.HotelTProv, tecnoHotels.HotelTUeberschrift, tecnoHotels.ID, tecnoHotels.IffCode, tecnoHotels.Latitude, tecnoHotels.LocationCode, tecnoHotels.Longitude, tecnoHotels.Name, tecnoHotels.POSTALCODE, tecnoHotels.PublicDay, tecnoHotels.PurchaseStatus, tecnoHotels.RTGCategory, tecnoHotels.RTGName, tecnoHotels.SalesStatus, tecnoHotels.Stars, tecnoHotels.StopSaleDate, tecnoHotels.StopSaleUpdate, tecnoHotels.TransferCode, tecnoHotels.Type, tecnoHotels.WEB, tecnoHotels.XMLModifyDate, tecnoHotels.XMLModifyDateAvail, tecnoHotels.ZoneCode, tecnoHotels.ZoneName FROM dbo.tecnoHotels WHERE (((tecnoHotels.AgentCode IN ('MTS')) AND tecnoHotels.AgentCode IS NOT NULL) AND ((tecnoHotels.ActiveSeasons IN ('S3', 'S4')) AND tecnoHotels.ActiveSeasons IS NOT NULL))) x) y WHERE y.rowID BETWEEN 1 AND 75
              === 2013-04-03 15:00:04,521 [0-18] DEBUG SQLConnectionManager - [builtinApplication.tecnoHotels_fetch] Returning borrowed connection '417035791'
              === 2013-04-03 15:00:04,536 [0-18] INFO  DSResponse - [builtinApplication.tecnoHotels_fetch] DSResponse: List with 61 items
              === 2013-04-03 15:00:04,536 [0-18] DEBUG SQLConnectionManager - [builtinApplication.tecnoHotels_fetch] About to close PoolableConnection with hashcode "417035791"
              === 2013-04-03 15:00:04,536 [0-18] DEBUG SQLConnectionManager - About to close PoolableConnection with hashcode "61918525"
              === 2013-04-03 15:00:04,536 [0-18] DEBUG RPCManager - Content type for RPC transaction: text/plain; charset=UTF-8
              === 2013-04-03 15:00:04,540 [0-18] DEBUG RPCManager - non-DMI response, dropExtraFields: false
              I'm geeting also those warnings the whole time, but I read in an other post, that I can ignore it?! http://forums.smartclient.com/showthread.php?t=23896

              Code:
              [ERROR] [Rim] - 15:00:03.948:TMR1:WARN:SelectItem:isc_SelectItem_49[PurchaseStatus]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:03.991:TMR1:WARN:SelectItem:isc_SelectItem_39[SalesStatus]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:03.993:TMR1:WARN:SelectItem:isc_SelectItem_40[AgentCode]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:03.994:TMR1:WARN:SelectItem:isc_SelectItem_40[AgentCode]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:03.998:TMR1:WARN:SelectItem:isc_SelectItem_41[Stars]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:04.003:TMR1:WARN:SelectItem:isc_SelectItem_56[RTGCategory]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:04.005:TMR1:WARN:SelectItem:isc_SelectItem_57[BlankCurrency]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:04.007:TMR1:WARN:SelectItem:isc_SelectItem_58[Brands]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:04.008:TMR1:WARN:SelectItem:isc_SelectItem_59[ActiveSeasons]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:04.009:TMR1:WARN:SelectItem:isc_SelectItem_59[ActiveSeasons]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:04.186:TMR1:WARN:SelectItem:isc_SelectItem_49[PurchaseStatus]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:04.197:TMR1:WARN:SelectItem:isc_SelectItem_39[SalesStatus]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:04.255:TMR1:WARN:SelectItem:isc_SelectItem_41[Stars]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:04.299:TMR1:WARN:SelectItem:isc_SelectItem_56[RTGCategory]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:04.308:TMR1:WARN:SelectItem:isc_SelectItem_57[BlankCurrency]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              [ERROR] [Rim] - 15:00:04.315:TMR1:WARN:SelectItem:isc_SelectItem_58[Brands]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              One of them as example:
              Code:
              15:00:04.960 [ERROR] [Rim] 15:00:04.315:TMR1:WARN:SelectItem:isc_SelectItem_58[Brands]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
              
              com.smartgwt.client.core.JsObject$SGWT_WARN: 15:00:04.315:TMR1:WARN:SelectItem:isc_SelectItem_58[Brands]:$952 - this is a multiple FormItem but newValue is not null and is not an array.
                  at sun.reflect.GeneratedConstructorAccessor26.newInstance(Unknown Source)
                  at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
                  at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
                  at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:105)
                  at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
                  at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
                  at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages(BrowserChannelServer.java:292)
                  at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:546)
                  at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:363)
                  at java.lang.Thread.run(Thread.java:722)

              Comment


                #8
                It seem like you are hoping that IN_SET criteria will behave like a substring and match a criteria value "A" within a field value "A,B". It doesn't do that, and that's not what it's documented to do either.

                If you want that kind of filtering, you'll need to switch to substring filtering, or use SQL Templating to modify the generated SQL to do what you're hoping for.

                Comment


                  #9
                  I added the "OptionTextMatchStyle" to the listgridfield (I guess that is what you mean with "switch to substring filtering"?).

                  Code:
                  ListGridField seasons = new ListGridField(Cols.TECNOHOTELS_ACTIVE_SEASONS, 50);
                  seasons.setOptionTextMatchStyle(TextMatchStyle.SUBSTRING);
                  Server log:
                  Code:
                  === 2013-04-04 08:29:24,877 [p0-0] DEBUG IDACall - Header Name:Value pair: Host:127.0.0.1:8888
                  === 2013-04-04 08:29:24,877 [p0-0] DEBUG IDACall - Header Name:Value pair: User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64; rv:19.0) Gecko/20100101 Firefox/19.0
                  === 2013-04-04 08:29:24,877 [p0-0] DEBUG IDACall - Header Name:Value pair: Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
                  === 2013-04-04 08:29:24,877 [p0-0] DEBUG IDACall - Header Name:Value pair: Accept-Language:de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
                  === 2013-04-04 08:29:24,878 [p0-0] DEBUG IDACall - Header Name:Value pair: Accept-Encoding:gzip, deflate
                  === 2013-04-04 08:29:24,878 [p0-0] DEBUG IDACall - Header Name:Value pair: Content-Type:application/x-www-form-urlencoded; charset=UTF-8
                  === 2013-04-04 08:29:24,878 [p0-0] DEBUG IDACall - Header Name:Value pair: Referer:http://127.0.0.1:8888/Rim.html?gwt.codesvr=127.0.0.1:9997
                  === 2013-04-04 08:29:24,878 [p0-0] DEBUG IDACall - Header Name:Value pair: Content-Length:1938
                  === 2013-04-04 08:29:24,878 [p0-0] DEBUG IDACall - Header Name:Value pair: Cookie:JSESSIONID=qcfcujo26c14
                  === 2013-04-04 08:29:24,878 [p0-0] DEBUG IDACall - Header Name:Value pair: Connection:keep-alive
                  === 2013-04-04 08:29:24,878 [p0-0] DEBUG IDACall - Header Name:Value pair: Pragma:no-cache
                  === 2013-04-04 08:29:24,878 [p0-0] DEBUG IDACall - Header Name:Value pair: Cache-Control:no-cache
                  === 2013-04-04 08:29:24,878 [p0-0] DEBUG IDACall - session exists: qcfcujo26c14
                  === 2013-04-04 08:29:24,878 [p0-0] DEBUG IDACall - remote user: kirschla
                  === 2013-04-04 08:29:24,878 [p0-0] INFO  RequestContext - URL: '/Rim/sc/IDACall', User-Agent: 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:19.0) Gecko/20100101 Firefox/19.0': Moz (Gecko) with Accept-Encoding header
                  === 2013-04-04 08:29:24,888 [p0-0] DEBUG XML - Parsed XML from (in memory stream): 8ms
                  === 2013-04-04 08:29:24,931 [p0-0] DEBUG RPCManager - Processing 1 requests.
                  === 2013-04-04 08:29:24,934 [p0-0] DEBUG RPCManager - Request #1 (DSRequest) payload: {
                      criteria:{
                          operator:"and",
                          _constructor:"AdvancedCriteria",
                          criteria:[
                              {
                                  fieldName:"ActiveSeasons",
                                  operator:"inSet",
                                  value:[
                                      "S2",
                                      "S3"
                                  ],
                                  _constructor:"AdvancedCriteria"
                              }
                          ]
                      },
                      operationConfig:{
                          dataSource:"tecnoHotels",
                          operationType:"fetch",
                          textMatchStyle:"substring"
                      },
                      startRow:0,
                      endRow:75,
                      componentId:"isc_HotelPortfolioView_2_0",
                      appID:"builtinApplication",
                      operation:"tecnoHotels_fetch",
                      oldValues:{
                          operator:"and",
                          _constructor:"AdvancedCriteria",
                          criteria:[
                              {
                                  fieldName:"ActiveSeasons",
                                  operator:"inSet",
                                  value:[
                                      "S2",
                                      "S3"
                                  ],
                                  _constructor:"AdvancedCriteria"
                              }
                          ]
                      }
                  }
                  === 2013-04-04 08:29:24,934 [p0-0] INFO  IDACall - Performing 1 operation(s)
                  === 2013-04-04 08:29:24,934 [p0-0] DEBUG DeclarativeSecurity - Processing security checks for DataSource null, field null
                  === 2013-04-04 08:29:24,934 [p0-0] DEBUG DeclarativeSecurity - DataSource tecnoHotels is not in the pre-checked list, processing...
                  === 2013-04-04 08:29:24,935 [p0-0] DEBUG ServerObject - Couldn't find a public method named: fetch on class: com.rtg.web.gwt.rim.server.dmi.TecnoHotelsDMI
                  === 2013-04-04 08:29:24,935 [p0-0] DEBUG DataSourceDMI - DataSourceDMI: no public method name: fetch available on class: com.rtg.web.gwt.rim.server.dmi.TecnoHotelsDMI - defaulting to builtin operations.
                  === 2013-04-04 08:29:24,935 [p0-0] DEBUG AppBase - [builtinApplication.tecnoHotels_fetch] No userTypes defined, allowing anyone access to all operations for this application
                  === 2013-04-04 08:29:24,935 [p0-0] DEBUG AppBase - [builtinApplication.tecnoHotels_fetch] No public zero-argument method named '_tecnoHotels_fetch' found, performing generic datasource operation
                  === 2013-04-04 08:29:24,935 [p0-0] INFO  SQLDataSource - [builtinApplication.tecnoHotels_fetch] Performing fetch operation with
                  	criteria: {criteria:[{fieldName:"ActiveSeasons",operator:"inSet",value:["S2","S3"],_constructor:"AdvancedCriteria"}],operator:"and",_constructor:"AdvancedCriteria"}	values: {criteria:[{fieldName:"ActiveSeasons",operator:"inSet",value:["S2","S3"],_constructor:"AdvancedCriteria"}],operator:"and",_constructor:"AdvancedCriteria"}
                  === 2013-04-04 08:29:24,936 [p0-0] WARN  SQLWhereClause - [builtinApplication.tecnoHotels_fetch] Unable to find simple basetype for field ActiveSeasons (declared type is select)
                  === 2013-04-04 08:29:24,936 [p0-0] INFO  SQLDataSource - [builtinApplication.tecnoHotels_fetch] derived query: SELECT $defaultSelectClause FROM $defaultTableClause WHERE $defaultWhereClause
                  === 2013-04-04 08:29:24,936 [p0-0] DEBUG SQLDataSource - [builtinApplication.tecnoHotels_fetch] Executing row count query: SELECT COUNT(*) FROM $defaultTableClause WHERE $defaultWhereClause
                  === 2013-04-04 08:29:24,937 [p0-0] DEBUG SQLDataSource - [builtinApplication.tecnoHotels_fetch] Eval'd row count query: SELECT COUNT(*) FROM dbo.tecnoHotels WHERE (((tecnoHotels.ActiveSeasons IN ('S2', 'S3')) AND tecnoHotels.ActiveSeasons IS NOT NULL))
                  === 2013-04-04 08:29:24,937 [p0-0] DEBUG SQLConnectionManager - [builtinApplication.tecnoHotels_fetch] Returning borrowed connection '1561591691'
                  === 2013-04-04 08:29:24,937 [p0-0] DEBUG SQLDriver - [builtinApplication.tecnoHotels_fetch] About to execute SQL query in 'RTGRIM' using connection '1561591691'
                  === 2013-04-04 08:29:24,937 [p0-0] INFO  SQLDriver - [builtinApplication.tecnoHotels_fetch] Executing SQL query on 'RTGRIM': SELECT COUNT(*) FROM dbo.tecnoHotels WHERE (((tecnoHotels.ActiveSeasons IN ('S2', 'S3')) AND tecnoHotels.ActiveSeasons IS NOT NULL))
                  === 2013-04-04 08:29:24,948 [p0-0] DEBUG SQLDataSource - [builtinApplication.tecnoHotels_fetch] Using SQL Limit query
                  === 2013-04-04 08:29:24,948 [p0-0] DEBUG SQLDataSource - [builtinApplication.tecnoHotels_fetch] Using PK as default sorter: ID
                  === 2013-04-04 08:29:24,948 [p0-0] DEBUG SQLServerDriver - [builtinApplication.tecnoHotels_fetch] Using PK as default sorter: com.isomorphic.sql.SQLOrderClause@7980be7e
                  === 2013-04-04 08:29:24,948 [p0-0] DEBUG SQLDataSource - [builtinApplication.tecnoHotels_fetch] SQL windowed select rows 0->75, result size 75. Query: SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY x.ID) AS rowID FROM (SELECT TOP 100 PERCENT  tecnoHotels.ADDRESS, tecnoHotels.Action, tecnoHotels.Active, tecnoHotels.ActiveSeasons, tecnoHotels.AgentCode, tecnoHotels.AvailBoards, tecnoHotels.AvailRooms, tecnoHotels.BlankCurrency, tecnoHotels.Brands, tecnoHotels.CITY, tecnoHotels.COUNTRYCODE, tecnoHotels.CatalogStart, tecnoHotels.CatalogStop, tecnoHotels.CityCode, tecnoHotels.Comments, tecnoHotels.ContractVersion, tecnoHotels.Customer, tecnoHotels.Defaultcontingent, tecnoHotels.DestinationAirport, tecnoHotels.DestinationAirport2, tecnoHotels.DestinationAirport3, tecnoHotels.EMAIL, tecnoHotels.EXTID, tecnoHotels.EXTIDMTS, tecnoHotels.ExportArt, tecnoHotels.ExtHrs, tecnoHotels.Flugpreisklassen, tecnoHotels.GiataCode, tecnoHotels.GiataForceUpload, tecnoHotels.GiataUpload, tecnoHotels.GiataXml, tecnoHotels.HC_AVERAGE, tecnoHotels.HC_RECOMMENDATION, tecnoHotels.HC_REVIEW_COUNT, tecnoHotels.HotelABhfKurzSitz, tecnoHotels.HotelABhfLandSitz, tecnoHotels.HotelAgent, tecnoHotels.HotelBSaisonKalkTab, tecnoHotels.HotelCodeBlank, tecnoHotels.HotelTProv, tecnoHotels.HotelTUeberschrift, tecnoHotels.ID, tecnoHotels.IffCode, tecnoHotels.Latitude, tecnoHotels.LocationCode, tecnoHotels.Longitude, tecnoHotels.Name, tecnoHotels.POSTALCODE, tecnoHotels.PublicDay, tecnoHotels.PurchaseStatus, tecnoHotels.RTGCategory, tecnoHotels.RTGName, tecnoHotels.SalesStatus, tecnoHotels.Stars, tecnoHotels.StopSaleDate, tecnoHotels.StopSaleUpdate, tecnoHotels.TransferCode, tecnoHotels.Type, tecnoHotels.WEB, tecnoHotels.XMLModifyDate, tecnoHotels.XMLModifyDateAvail, tecnoHotels.ZoneCode, tecnoHotels.ZoneName FROM dbo.tecnoHotels WHERE (((tecnoHotels.ActiveSeasons IN ('S2', 'S3')) AND tecnoHotels.ActiveSeasons IS NOT NULL))) x) y WHERE y.rowID BETWEEN 1 AND 75
                  === 2013-04-04 08:29:24,949 [p0-0] DEBUG SQLConnectionManager - [builtinApplication.tecnoHotels_fetch] Returning borrowed connection '700804919'
                  === 2013-04-04 08:29:24,968 [p0-0] INFO  DSResponse - [builtinApplication.tecnoHotels_fetch] DSResponse: List with 50 items
                  === 2013-04-04 08:29:24,969 [p0-0] DEBUG SQLConnectionManager - [builtinApplication.tecnoHotels_fetch] About to close PoolableConnection with hashcode "700804919"
                  === 2013-04-04 08:29:24,969 [p0-0] DEBUG SQLConnectionManager - About to close PoolableConnection with hashcode "1561591691"
                  === 2013-04-04 08:29:24,969 [p0-0] DEBUG RPCManager - Content type for RPC transaction: text/plain; charset=UTF-8
                  === 2013-04-04 08:29:24,972 [p0-0] DEBUG RPCManager - non-DMI response, dropExtraFields: false
                  But it's still the same behaviour, it doesn't find the value "S3" in "S3,S4". Am I doing sometings wrong or isn't this working in generally and I have to modify the generated SQL?

                  Comment


                    #10
                    See docs - textMatchStyle does not affect AdvancedCriteria. AdvancedCriteria specifies the actual operator to use in each Criterion. You would need to set the FormItem.operator for the FormItem that is producing this criteria, or again, modify the SQL generated for the existing IN_SET criteria.

                    Comment

                    Working...
                    X