Bug 165897 [Salesforce Project]Table column lost its data when insert a new column to the right
Reproduce steps: 1. Get and install BIRT Salesforce ODA driver. 2. Download the attached BIRT report design. 3. Insert a new column to the right of Negotiation/Review. 4. Input name as "Month Grand Total" and expression as following: row["Prospecting"]+row["Qualification"]+row["NeedsAnalysis"]+row["ValueProposition"]+row["IdDecisionMakers"]+row["PerceptionAnalysis"]+row["ProposalPriceQuote"]+row["NegotiationReview"] 5. Run the report and Negotiation/Review column lost its data.
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/expression/MultiPassExpressionCompiler.java
*/
	private void flatternAggregateExpression( ComplexExpression complexExpr )
			throws DataException
	{
		Collection subExprs = complexExpr.getSubExpressions( );
		Iterator iter = subExprs.iterator( );
		while ( iter.hasNext( ) )
		{
			CompiledExpression childExpr = (CompiledExpression) iter.next( );
			if ( childExpr instanceof AggregateExpression )
			{
				if ( canBeCalculated( new AggregateObject( (AggregateExpression) childExpr ) ) )
				{
					passLevel--;
					return;
				}
				hasNesetedAggregate = true;
			}
			else if ( childExpr instanceof ComplexExpression )
			{
				Collection childSubExprs = ( (ComplexExpression) childExpr ).getSubExpressions( );
				Iterator childIter = childSubExprs.iterator( );
				while ( childIter.hasNext( ) )
				{
					CompiledExpression childChildExpr = (CompiledExpression) childIter.next( );
					if ( childChildExpr instanceof AggregateExpression )
					{
						if ( canBeCalculated( new AggregateObject( (AggregateExpression) childExpr ) ) )
						{
							passLevel--;