assert query != null;  Collection exprs = getScriptExpressions ( query.getRowExpressions( ) );
assert reportItem != null;  Collection exprs = getValueExpressions( reportItem );
	private void validateSelectedColumns( IBaseQueryDefinition query )			throws EngineException	{		assert query != null;		Collection exprs = getScriptExpressions ( query.getRowExpressions( ) );		if ( selectedColumns != null )		{			for ( int i = 0; i < selectedColumns.length; i++ )			{				boolean findColumn = false;				Iterator iter = exprs.iterator( );				while ( iter.hasNext( ) )				{					IScriptExpression expr = (IScriptExpression) iter.next( );					if ( expr.getText( ).equalsIgnoreCase( selectedColumns[i] ) )					{						findColumn = true;						break;					}				}				if ( findColumn == false )				{					throw new EngineException( "Invalid Columns" );				}			}		}		else		{			if ( exprs.size( ) <= 0 )			{				throw new EngineException( "Can't exported data in groups" );			}			else			{				selectedColumns = new String[exprs.size( )];				Iterator iter = exprs.iterator( );								for ( int i = 0; i < selectedColumns.length; i++ )				{					IScriptExpression expr = (IScriptExpression) iter.next( );					selectedColumns[i] = expr.getText( );				}			}		} 	}