diff --git a/plasmid/source/core-plugins/newbrowser/1/dss/reporting-plugins/newbrowserapi/script.py b/plasmid/source/core-plugins/newbrowser/1/dss/reporting-plugins/newbrowserapi/script.py
index 8358b8c0eee15394dce0873f3fc97f8f896c1a2d..a505e9cdca6abacc8a1b9fc3f1fcf84ba4fa01a9 100644
--- a/plasmid/source/core-plugins/newbrowser/1/dss/reporting-plugins/newbrowserapi/script.py
+++ b/plasmid/source/core-plugins/newbrowser/1/dss/reporting-plugins/newbrowserapi/script.py
@@ -166,15 +166,23 @@ def copySample(tr, parameters, tableBuilder):
 	#Copy children and attach to Sample
 	if sampleChildren != None:
 		for sampleChildIdentifier in sampleChildren:
-			child = tr.getSampleForUpdate(sampleChildIdentifier); #Retrieve Sample child to copy
+			child = tr.getSample(sampleChildIdentifier); #Retrieve Sample child to copy
 			copyChildCode = parameters.get("sampleCode") + "_" + child.getCode();
 			copyChildIdentifier = "/" + parameters.get("sampleSpace") + "/" + copyChildCode;
 			
 			# Create new sample children
-			child = tr.createNewSample(copyChildIdentifier, child.getSampleType()); #Create Sample given his id
-			childParents = child.getParentSampleIdentifiers();
+			childCopy = tr.createNewSample(copyChildIdentifier, child.getSampleType()); #Create Sample given his id
+			childParents = childCopy.getParentSampleIdentifiers();
 			childParents.add(sampleIdentifier);
-			child.setParentSampleIdentifiers(childParents);
+			childCopy.setParentSampleIdentifiers(childParents);
+			searchService = tr.getSearchService();
+			propertiesDefinitions = searchService.listPropertiesDefinitionsForSampleType(child.getSampleType());
+			for propertyDefinition in propertiesDefinitions:
+				propCode = propertyDefinition.getPropertyTypeCode();
+				propValue = child.getPropertyValue(propCode);
+				if propValue != None:
+					childCopy.setPropertyValue(propCode, propValue);
+			
 	return True;
 	
 def insertUpdateSample(tr, parameters, tableBuilder):