Bug 193092 If measure filter's member value type is boolean, exception throws out when preview[1102]
Description: If measure filter's member value type is boolean, exception throws out when preview[1102] Build number: 2.2.0.v20070618-1344 Steps to reproduce: 1, Open the attached report design 2, The measure's filter has a boolean type member value 3, Preview Expected result: The filter works well Actual result: Exception occurs when preview Error log: org.eclipse.birt.report.service.api.ReportServiceException: Error happened while running the report; nested exception is: java.lang.IllegalArgumentException org.eclipse.birt.data.engine.olap.data.util.CompareUtil.compare(CompareUtil.java:58) org.eclipse.birt.data.engine.olap.util.filter.DimensionFilterEvalHelper.evaluateFilter(DimensionFilterEvalHelper.java:71) org.eclipse.birt.data.engine.olap.data.api.CubeQueryExecutorHelper.applyAggrFilter(CubeQueryExecutorHelper.java:769) org.eclipse.birt.data.engine.olap.data.api.CubeQueryExecutorHelper.generateLevelFilters(CubeQueryExecutorHelper.java:595) org.eclipse.birt.data.engine.olap.data.api.CubeQueryExecutorHelper.applyAggrFilters(CubeQueryExecutorHelper.java:477) org.eclipse.birt.data.engine.olap.data.api.CubeQueryExecutorHelper.execute(CubeQueryExecutorHelper.java:299)
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/script/ScriptEvalUtil.java
String patternStr = ( pattern == null )? "" : pattern.toString();
		
		
		 
		
		Matcher jsReExprMatcher = getJSReExprPatternMatcher( patternStr ); 
		int flags = 0;
		if ( jsReExprMatcher.matches() )
		{
			
			
			String flagStr = patternStr.substring( jsReExprMatcher.start(2), 
					jsReExprMatcher.end(2) );
			for ( int i = 0; i < flagStr.length(); i++)
			{
				switch ( flagStr.charAt(i) )
				{
					case 'm': flags |= Pattern.MULTILINE; break;
					case 'i': flags |= Pattern.CASE_INSENSITIVE; break;
					case 'g': break;			
						
					default:
						throw new DataException( ResourceConstants.MATCH_ERROR, patternStr );
				}
			}
			patternStr = patternStr.substring( jsReExprMatcher.start(1), 
					jsReExprMatcher.end(1) );
		}
		
		try