Bug 190419 The topn filter doesn't take effect on the datetime type dimension[1102]
Description: The topn filter doesn't take effect on the datetime type dimension[1102] Build number: 2.2.0.v20070601-1347 Steps to reproduce: 1, New a crosstab which includes datetime type dimension 2, Specify a filter on the year level using two filter condition data["year"] topn 2 or dimension["Date"]["year"] topn 2 3, Preview Expected result: Both filter condition can take effect Actual result: No effect only 2005 year in crosstab
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/olap/data/api/CubeQueryExecutorHelper.java
private IDiskArray populateLevelKeyList( AggregationDefinition aggregation,
			IAggregationResultSet resultSet, TopBottomFilter filter )
			throws IOException, DataException
	{
		int n = -1;
		boolean isTop = true;
		switch ( filter.getFilterType( ) )
		{
			case IJSTopBottomFilterHelper.TOP_N :
				n = (int) filter.getN( );
				break;
			case IJSTopBottomFilterHelper.BOTTOM_N :
				n = (int) filter.getN( );
				isTop = false;
				break;
			case IJSTopBottomFilterHelper.TOP_PERCENT :
				n = getTargetN( resultSet.length( ), filter.getFilterHelper( ) );
				break;
			case IJSTopBottomFilterHelper.BOTTOM_PERCENT :
				n = getTargetN( resultSet.length( ), filter.getFilterHelper( ) );
				isTop = false;
				break;
		}
		IDiskArray aggrValueArray = new OrderedUniqueDiskArray( n, isTop );
		IDiskArray levelKeyArray = new OrderedUniqueDiskArray( );
		AggregationFunctionDefinition[] aggrFuncs = aggregation.getAggregationFunctions( );
		DimLevel[] aggrLevels = filter.getAggrLevels( );
		
		
		String[] fields = getAllFieldNames( aggrLevels, resultSet );