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/PreparedQuery.java
prepare( );
		logger.fine( "Finished preparing the PreparedQuery." );
	}
	
	/**
	 * @throws DataException
	 */
	private void prepare( ) throws DataException
	{
	    
		Context cx = Context.enter();		
		try
		{
			
			
			
						
			if ( this.baseQueryDefn.getBindings( ) != null
					&& this.baseQueryDefn.getBindings( ).size( ) > 0 )
			{
				this.expressionCompiler.setDataSetMode( false );
			}
			
			List groups = baseQueryDefn.getGroups( );
			Set groupNameSet = new HashSet( );
			IGroupDefinition group;
			for ( int i = 0; i < groups.size( ); i++ )
			{
				group = (IGroupDefinition) groups.get( i );
				if ( group.getName( ) == null