Bug 124610 Add a filter on a boolean computed column will cause error.
Description: Add a filter on a boolean computed column will cause error. Steps to reproduce: 1. New a BIRT sample data source and a dataset from table "orders" 2. Create a computed column with name="yes/no", type = any(no boolean for choose), value= if(row[1]%2==0){ true; }else{ false; } 3. Drag the dataset from Data Explorer to Layout 4. Select the table, click Filters tab in Property Editor. 5. Click Add button. 6. Select yes/no as Expression, Is True as Operator. 7. Save and preview. Expected result: Filter works. Actual result: Error0 : data.engine.ConvertToDataTypeError ( 1 time(s) ) detail : org.eclipse.birt.data.engine.core.DataException: can not be converted to class java.lang.Boolean.
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/script/ScriptEvalUtil.java
* of obj (or Double if obj is numeric)on the condition they are comparable.<br>
	 * e.g.<br>
	 * obj: Integer=>obj, op1 and op2 will be formatted to Double.<br>
	 * obj: Timestamp=>obj, op1 and op2 will be formatted to Date.<br>
	 * obj: Boolean=>obj and op1 will be formatted to Boolean.<br>
	 * obj: String=>obj, op1 and op2 will remain the same
	 * 
	 * @param obj
	 * @param operator
	 * @param op1
	 * @param op2
	 * @return A Boolean result
	 * @throws DataException
	 */
	public static Object evalConditionalExpr( Object obj,
			int operator, ExprTextAndValue op1, ExprTextAndValue op2 )
			throws DataException
	{
		Object resultObject = obj;
		Object resultOp1 = op1.value;
		Object resultOp2 = op2.value;
		Object[] obArray = MiscUtil.isComparable( obj, operator, op1, op2 );
		if ( obArray != null )
		{
			resultObject = obArray[0];
			resultOp1 = obArray[1];
			resultOp2 = obArray[2];
		}
		
		if ( logger.isLoggable( Level.FINER ) )