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/ExprManagerUtil.java
*/
	private String findExpression ( String columnBindingName, IBaseQueryDefinition queryDefn )
	{
		if ( queryDefn == null )
		{
			return null;
		}
		
		if ( queryDefn.getBindings( ).get( columnBindingName ) == null )
		{
			return findExpression ( columnBindingName, queryDefn.getParentQuery( ));
		}
		
		IBaseExpression expr = (IBaseExpression)((IBinding)queryDefn.getBindings( ).get( columnBindingName ));
		if ( expr instanceof IScriptExpression )
			return ((IScriptExpression)expr).getText( );
		else 
			return null;
	}
	/**
	 * 
	 * @param cb
	 * @return
	 */
	private boolean useDefinedKeyWord( IColumnBinding cb )
	{
		return cb.getOuterLevel( ) > 0
				|| cb.getResultSetColumnName( )
						.equals( "__rownum" )
				|| cb.getResultSetColumnName( )