=== modified file 'dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/event/BaseEventService.java' --- dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/event/BaseEventService.java 2013-05-17 07:40:18 +0000 +++ dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/event/BaseEventService.java 2013-05-17 09:48:29 +0000 @@ -185,6 +185,13 @@ ProgramStageInstance programStageInstance = saveExecutionDate( program, organisationUnit, executionDate, event.getCompleted() ); + String storedBy = event.getStoredBy(); + + if ( storedBy == null ) + { + storedBy = currentUserService.getCurrentUsername(); + } + for ( DataValue dataValue : event.getDataValues() ) { DataElement dataElement = dataElementService.getDataElement( dataValue.getDataElementId() ); @@ -198,7 +205,7 @@ { if ( validateDataElement( dataElement, dataValue.getValue(), importSummary ) ) { - saveDataValue( programStageInstance, dataElement, dataValue.getValue(), dataValue.getProvidedElsewhere() ); + saveDataValue( programStageInstance, storedBy, dataElement, dataValue.getValue(), dataValue.getProvidedElsewhere() ); importSummary.getDataValueCount().incrementImported(); } } @@ -245,10 +252,8 @@ return programStageInstance; } - private void saveDataValue( ProgramStageInstance programStageInstance, DataElement dataElement, String value, Boolean providedElsewhere ) + private void saveDataValue( ProgramStageInstance programStageInstance, String storedBy, DataElement dataElement, String value, Boolean providedElsewhere ) { - String storedBy = currentUserService.getCurrentUsername(); - if ( value != null && value.trim().length() == 0 ) { value = null;