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
catch ( Exception e )
		{
			DataException dataException = new DataException( ResourceConstants.INVALID_JS_EXPR,
					e,
					exprInfo.getScriptExpression( ).getText( ) );
			return new InvalidExpression( dataException );
		}
	}
	/*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.birt.data.engine.impl.AbstractExpressionParser#compileDirectColRefExpr(org.mozilla.javascript.Node,
	 *      boolean)
	 */
	protected CompiledExpression compileDirectColRefExpr( Node parent, Node refNode,
			Node grandfather, boolean customerChecked, Context context )
			throws DataException
	{
		if ( ( refNode.getType( ) == Token.GETPROP || refNode.getType( ) == Token.GETELEM )
				&& ( !this.getDataSetMode( ) ) )
		{
			String columnBindingName;
			if ( refNode.getFirstChild( ).getType( ) == Token.NAME
					&& refNode.getLastChild( ).getType( ) == Token.STRING
					&& refNode.getFirstChild( )
							.getString( )
							.equals( this.ROW_INDICATOR ) )
			{
				{
					columnBindingName = refNode.getLastChild( ).getString( );