=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/BaseAnalyticalObject.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/BaseAnalyticalObject.java 2013-11-11 23:01:07 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/BaseAnalyticalObject.java 2013-12-09 16:33:18 +0000 @@ -559,17 +559,18 @@ { List ids = new ArrayList(); - if ( column != null ) + List dimensions = new ArrayList(); + dimensions.addAll( column != null ? column : new ArrayList() ); + dimensions.addAll( row != null ? row : new ArrayList() ); + + for ( NameableObject item : dimensions ) { - for ( NameableObject item : column ) + if ( item.getClass().isAssignableFrom( DataElementOperand.class ) ) { - ids.add( item.getUid() ); + ids.add( ((DataElementOperand) item).getDataElement().getUid() ); + ids.add( ((DataElementOperand) item).getCategoryOptionCombo().getUid() ); } - } - - if ( row != null ) - { - for ( NameableObject item : row ) + else { ids.add( item.getUid() ); } @@ -579,7 +580,7 @@ return StringUtils.join( ids, DIMENSION_SEP ); } - + /** * Returns meta-data mapping for this analytical object. Includes a identifier * to name mapping for dynamic dimensions.