Bug 189575 The 2 APIs don't work.
ICubeQueryUtil.getMemberValueIterator( TabularCubeHandle cubeHandle, String dataBindingExpr, ICubeQueryDefinition queryDefn ) ICubeQueryUtil.getMemberValueIterator( TabularCubeHandle cubeHandle, String targetLevel, ILevelDefinition[] higherLevelDefns, Object[] values ) The 2 APIs don't work. Please verify and correct them, or Crosstab sort and filter may throw runtime exception. Thanks.
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/olap/data/impl/aggregation/sort/AggregationSortHelper.java
{
				aggrKeyIndex[j] = sks[i].getAggrKeys( )[j] + offset;
			}
			offset += sks[i].getAggrKeys( ).length;
			SortKey sk = new SortKey( aggrKeyIndex,
					sks[i].getAggrSortDirection( ),
					levelKeyIndex,
					0,
					sks[i].getTargetResultSet( ) );
			newSortKeys.add( sk );
		}
		return newSortKeys;
	}
	private static void populateEmptySortKey( IAggregationResultSet base,
			SortKey[] sks )
	{
		for ( int i = 0; i < sks.length; i++ )
		{
			if ( sks[i] == null )
			{
				sks[i] = new SortKey( new int[0], new boolean[0], i, 0, base );
			}
		}
	}
	private static IDiskArray getDiskArrayFromAggregationResultSet(
			IAggregationResultSet base ) throws IOException
	{
		IDiskArray diskArray = new BufferedStructureArray( AggregationResultRow.getCreator( ),
				4096 );
		for ( int j = 0; j < base.length( ); j++ )