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
}
		}
		
		currentGroupLevel = getCurrentGroupLevel( aggregateObj, context );
		
		aggregateExpression.setGroupLevel( currentGroupLevel );
				
		if ( exprType == IExpressionProcessor.GROUP_COLUMN_EXPR
				|| exprType == IExpressionProcessor.FILTER_ON_GROUP_EXPR
				|| exprType == IExpressionProcessor.SORT_ON_GROUP_EXPR )
		{
			aggregateObj.setPassLevel( 1 );
		}
		else
			aggregateObj.setPassLevel( ++passLevel );
		
		 
		 
		if ( aggregateExpression.isNestedAggregation( )
				&& aggregateExpression.getCalculationLevel( ) < aggregateExpression.getGroupLevel( )
				&& aggregateExpression.getCalculationLevel( ) != 0 )
		{
			throw new DataException( ResourceConstants.INVALID_TOTAL_EXPRESSION );
		}
		
		int id = registerAggregate( aggregateObj,
				aggregateExpression.isNestedAggregation( )
						? aggregateExpression.getCalculationLevel( ) : 0 );
		if ( id >= 0 )
			replaceAggregateNode( id, parent, callNode );