Bug 195970 Two issues when evaluate a query inlcuding a subquery[07]
Description: Currently, when evaluating a query which includes a subquery, the query will be evaluated twice. The binding of query will pass to subquery twice. If user write a java script such as new Date() and i++. The result of query will be incorrect. Another issue: when write the report document, the binding of query will be written twice and the performance is not good to evalulate it twice.
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/impl/BindingColumnsEvalUtil.java
this.odiResult = ri;
		this.scope = scope;
		this.saveHelper = saveUtil;
		
		try
		{
			this.isBasedOnRD = ExprMetaUtil.isBasedOnRD( ri.getResultClass( ) );
			if ( this.isBasedOnRD == true )
				this.evalHelper = new EvalHelper( ri );
		}
		catch ( DataException e )
		{
			
		}
		this.initBindingColumns( manualBindingExprs, autoBindingExprs );
		logger.exiting( BindingColumnsEvalUtil.class.getName( ),
				"BindingColumnsEvalUtil" );
	}
	/**
	 * @param serviceForResultSet
	 * @throws DataException 
	 */
	private void initBindingColumns( List manualBindingExprs,
			Map autoBindingExprs ) throws DataException
	{
		
		int size = manualBindingExprs.size( );
		GroupBindingColumn[] groupBindingColumns = new GroupBindingColumn[size];
		Iterator itr = manualBindingExprs.iterator( );
		while ( itr.hasNext( ) )