Bug 200979 BIRT Cross tab - Better error messages
In general the error messages are very generic - either "Cube does not exist" followed by stack trace or - stack trace. From the error message it is difficult to fix the problem in the report design. I have attached a couple of report design, in which case the error messages are so difficult to follow. We need to show user friendly error messages. ( This bug applies to data engine errors and engine errors ).
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/olap/data/impl/facttable/FactTableAccessor.java
measureInfo,
				segmentCount );
		DimensionDivision[] subDimensions = calculateDimensionDivision( getDimensionMemberCount( dimensions ),
				segmentCount );
		
		int[][][] columnIndex = getColumnIndex( DimJointColumnNames, dimensions );
		DimensionPositionSeeker[] dimensionSeekers = new DimensionPositionSeeker[dimensions.length];
		for ( int i = 0; i < dimensionSeekers.length; i++ )
		{
			dimensionSeekers[i] = new DimensionPositionSeeker( getDimCombinatedKey( columnIndex[i],
					dimensions[i].getAllRows( ) ) );
		}
		FactTableRow currentRow = null;
		FactTableRow lastRow = null;
		int[] dimensionPosition = new int[dimensions.length];
		DocumentObjectCache documentObjectManager = new DocumentObjectCache( documentManager );
		CombinedPositionContructor combinedPositionCalculator = new CombinedPositionContructor( subDimensions );
		
		FTSUNameSaveHelper helper = new FTSUNameSaveHelper( documentManager, factTableName );
		Object popObject = sortedFactTableRows.pop( );
		while ( popObject != null && !stopSign.isStopped( ) )
		{
			currentRow = (FactTableRow) popObject;
			if ( lastRow != null && currentRow.equals( lastRow ) )
			{
				throw new DataException( ResourceConstants.FACTTABLE_ROW_NOT_DISTINCT,
						currentRow.toString( ) );
			}
			for ( int i = 0; i < dimensionPosition.length; i++ )
			{