Bug 189842 Changing the dimension will lead the exception when preview[1102]
Description: Changing the dimension will lead the exception when preview[1102] Build number: 2.2.0.v20070530-0630 Steps to reproduce: 1, New a crosstab and preview 2, Remove one of dimension 3, Drag another dimension from cube into the removed area 4, Preview Expected result: The preview should be successfully Actual result: Exception occurs Error log: - The binding "CUSTOMER_REGION" refers to invalid levels. data.olap.invalidBindingReferToInexitDim ( 1 time(s) ) detail : org.eclipse.birt.data.engine.core.DataException: The binding "CUSTOMER_REGION" refers to invalid levels. at org.eclipse.birt.data.engine.olap.impl.query.CubeCursorImpl.validateBindings(CubeCursorImpl.java:109) at org.eclipse.birt.data.engine.olap.impl.query.CubeCursorImpl.<init>(CubeCursorImpl.java:70) at org.eclipse.birt.data.engine.olap.impl.query.CubeQueryResults.getCubeCursor(CubeQueryResults.java:75) at org.eclipse.birt.report.engine.data.dte.CubeResultSet.<init>(CubeResultSet.java:78) at org.eclipse.birt.report.engine.data.dte.DteDataEngine.doExecuteCube(DteDataEngine.java:234) at org.eclipse.birt.report.engine.data.dte.DteDataEngine.doExecuteQuery(DteDataEngine.java:120) at org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.execute(AbstractDataEngine.java:178) at org.eclipse.birt.report.engine.executor.ExecutorManager$ExecutorContext.executeQuery(ExecutorManager.java:403) at org.eclipse.birt.report.item.crosstab.core.re.executor.BaseCrosstabExecutor.executeQuery(BaseCrosstabExecutor.java:95)
xtab/org.eclipse.birt.report.item.crosstab.ui/src/org/eclipse/birt/report/item/crosstab/ui/preference/CrosstabPreferencePage.java
import org.eclipse.jface.preference.StringFieldEditor;
import org.eclipse.jface.util.IPropertyChangeListener;
import org.eclipse.jface.util.PropertyChangeEvent;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Group;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPreferencePage;
/**
 * 
 */
public class CrosstabPreferencePage extends PreferencePage implements
		IWorkbenchPreferencePage,IPropertyChangeListener
{
	private transient IntegerFieldEditor txtMaxLimit;
	private static final int FILTER_LIMIT_DEFAULT = 100;
	private static final int MAX_FILTER_LIMIT = 10000;
	protected Control createContents( Composite parent )
	{
		
		
		Composite cmpTop = new Composite( parent, SWT.NONE );
		GridLayout layout = new GridLayout( 1, false );
		cmpTop.setLayout( layout );
		GridData gd = new GridData( GridData.FILL_HORIZONTAL );
		cmpTop.setLayoutData( gd );
		Group group = new Group( cmpTop, SWT.NONE );