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/ResultIterator.java
* clear the preparedList and boundColumnValueMap on next()
	 */
	private void clear( )
	{
		if ( preparedList != null )
			this.preparedList.clear( );
		this.boundColumnValueMap.clear( );
	}
	
	/**
	 * @throws BirtException 
	 * @throws IOException 
	 * 
	 */
	private void saveCurrentRow( ) throws IOException, BirtException
	{
		if( isFirstRowPepared )
		{
			columnList = new ArrayList( );
			Iterator keyIterator = boundColumnValueMap.keySet().iterator();
			
			while( keyIterator.hasNext() )
			{
				Object key = keyIterator.next();
				columnList.add(key);
			}
			IOUtil.writeInt(rowOutputStream, columnList.size());
			for( int i=0;i<columnList.size();i++)
			{
				IOUtil.writeObject(rowOutputStream, columnList.get(i));