=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementOperand.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementOperand.java 2013-05-19 18:49:47 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementOperand.java 2013-05-27 12:47:46 +0000 @@ -151,6 +151,11 @@ @Override public String getUid() { + if ( uid != null ) + { + return uid; + } + String uid = null; if ( dataElement != null ) @@ -522,6 +527,7 @@ { return "DataElementOperand{" + "id=" + id + + ", uid=" + uid + ", dataElement=" + dataElement + ", categoryOptionCombo=" + categoryOptionCombo + ", dataElementId=" + dataElementId + === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/mapping/MapViewDeletionHandler.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/mapping/MapViewDeletionHandler.java 2012-11-07 07:06:26 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/mapping/MapViewDeletionHandler.java 2013-05-27 12:47:46 +0000 @@ -31,6 +31,8 @@ import org.hisp.dhis.dataelement.DataElement; import org.hisp.dhis.dataelement.DataElementGroup; +import org.hisp.dhis.dataelement.DataElementOperand; +import org.hisp.dhis.dataelement.DataElementOperandService; import org.hisp.dhis.indicator.Indicator; import org.hisp.dhis.indicator.IndicatorGroup; import org.hisp.dhis.organisationunit.OrganisationUnit; @@ -54,6 +56,13 @@ { this.mappingService = mappingService; } + + private DataElementOperandService operandService; + + public void setOperandService( DataElementOperandService operandService ) + { + this.operandService = operandService; + } // ------------------------------------------------------------------------- // DeletionHandler implementation @@ -66,6 +75,18 @@ } @Override + public void deleteMapView( MapView mapView ) + { + DataElementOperand operand = mapView.getDataElementOperand(); + + if ( operand != null ) + { + mapView.setDataElementOperand( null ); + operandService.deleteDataElementOperand( operand ); + } + } + + @Override public String allowDeletePeriod( Period period ) { for ( MapView mapView : mappingService.getAllMapViews() ) === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/resources/META-INF/dhis/beans.xml' --- dhis-2/dhis-services/dhis-service-core/src/main/resources/META-INF/dhis/beans.xml 2013-05-27 11:34:38 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/resources/META-INF/dhis/beans.xml 2013-05-27 12:47:46 +0000 @@ -962,6 +962,7 @@ + === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/mapping/hibernate/MapView.hbm.xml' --- dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/mapping/hibernate/MapView.hbm.xml 2013-05-24 16:59:40 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/mapping/hibernate/MapView.hbm.xml 2013-05-27 12:47:46 +0000 @@ -34,10 +34,11 @@ - + - + === modified file 'dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/mapping/MapController.java' --- dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/mapping/MapController.java 2013-05-24 15:23:08 +0000 +++ dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/mapping/MapController.java 2013-05-27 12:47:46 +0000 @@ -200,8 +200,6 @@ // Supportive methods //-------------------------------------------------------------------------- - // TODO use the import service instead - private void mergeMap( Map map ) { if ( map.getUser() != null )