Bug 207889 NOT IN filter of table doesn't work and throws exceptions when preview[07]
Description: Exception occurs when preview a table with NOT IN filter[07] Build number: 2.3.0.v20071029-0630 Steps to reproduce: 1, New a CUSTOMERS Dataset 2, Drag dataset into layout 3, Select the table and specify a Not IN filter: row["CUSTOMERNUMBER"] Not In 131 4, Preview Expected result: The filter works and preview should be ok Actual result: Exception occurs Error log: The filter definition using expression "row["CUSTOMERNUMBER"]" is not valid. Conditional operator is not supported: 0 data.engine.BadFilterDefn ( 1 time(s) ) detail : org.eclipse.birt.data.engine.core.DataException: The filter definition using expression "row["CUSTOMERNUMBER"]" is not valid.Conditional operator is not supported: 0 at org.eclipse.birt.data.engine.impl.FilterByRow.process(FilterByRow.java:237) at org.eclipse.birt.data.engine.executor.cache.RowResultSet.processFetchEvent(RowResultSet.java:134) at org.eclipse.birt.data.engine.executor.cache.RowResultSet.next(RowResultSet.java:98) at org.eclipse.birt.data.engine.executor.cache.ExpandableRowResultSet.next(ExpandableRowResultSet.java:64) at org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.populateData(SmartCacheHelper.java:299) at org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.initInstance(SmartCacheHelper.java:271) at org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.getResultSetCache(SmartCacheHelper.java:233) at org.eclipse.birt.data.engine.executor.cache.SmartCache.<init>(SmartCache.java:73) at org.eclipse.birt.data.engine.executor.transform.pass.PassUtil.populateOdiResultSet(PassUtil.java:146) at org.eclipse.birt.data.engine.executor.transform.pass.PassUtil.pass(PassUtil.java:63) at org.eclipse.birt.data.engine.executor.transform.pass.FilterCalculator.doFiltering(FilterCalculator.java:117) at org.eclipse.birt.data.engine.executor.transform.pass.FilterCalculator.applyFilters(FilterCalculator.java:90) at org.eclipse.birt.data.engine.executor.transform.pass.FilterCalculator.applyFilters(FilterCalculator.java:64)
data/org.eclipse.birt.report.data.adapter/src/org/eclipse/birt/report/data/adapter/api/DataAdapterUtil.java
else if ( apiDataType == DataType.STRING_TYPE )
			return DesignChoiceConstants.COLUMN_DATA_TYPE_STRING;
		else if ( apiDataType == DataType.DATE_TYPE )
			return DesignChoiceConstants.COLUMN_DATA_TYPE_DATETIME;
		else if ( apiDataType == DataType.DECIMAL_TYPE )
			return DesignChoiceConstants.COLUMN_DATA_TYPE_DECIMAL;
		else if ( apiDataType == DataType.DOUBLE_TYPE )
			return DesignChoiceConstants.COLUMN_DATA_TYPE_FLOAT;
		else if ( apiDataType == DataType.SQL_DATE_TYPE)
			return DesignChoiceConstants.COLUMN_DATA_TYPE_DATE;
		else if ( apiDataType == DataType.SQL_TIME_TYPE)
			return DesignChoiceConstants.COLUMN_DATA_TYPE_TIME;
		else if ( apiDataType == DataType.BOOLEAN_TYPE )
			return DesignChoiceConstants.COLUMN_DATA_TYPE_BOOLEAN;
		else if ( apiDataType == DataType.BLOB_TYPE )
			return DesignChoiceConstants.COLUMN_DATA_TYPE_BLOB;
		return DesignChoiceConstants.COLUMN_DATA_TYPE_ANY;
	}
	
	/**
	 * 
	 * @param modelAggrType
	 * @return
	 * @throws AdapterException
	 */
	public static String adaptModelAggregationType( String modelAggrType )
			throws AdapterException
	{
		Object o = aggrAdapterMap.get( modelAggrType );
		return o == null ? modelAggrType : o.toString( );