diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/record/RecordServiceImpl.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/record/RecordServiceImpl.java index 3afd6bd994..4ac4504c11 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/record/RecordServiceImpl.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/record/RecordServiceImpl.java @@ -813,8 +813,15 @@ public class RecordServiceImpl implements RecordService, writer.putContent(reader); } - // make record - makeRecord(record); + // Check if the "record" aspect has been applied already. + // In case of filing a report the created node will be made + // a record within the "onCreateChildAssociation" method if + // a destination for the report has been selected. + if (nodeService.hasAspect(record, ASPECT_RECORD) == false) + { + // make record + makeRecord(record); + } return record; } diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/report/action/BaseReportAction.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/report/action/BaseReportAction.java index 6e919229d7..932caf993e 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/report/action/BaseReportAction.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/report/action/BaseReportAction.java @@ -22,10 +22,12 @@ import java.io.Serializable; import java.util.Map; import org.alfresco.error.AlfrescoRuntimeException; +import org.alfresco.model.ContentModel; import org.alfresco.module.org_alfresco_module_rm.action.RMActionExecuterAbstractBase; import org.alfresco.module.org_alfresco_module_rm.report.Report; import org.alfresco.module.org_alfresco_module_rm.report.ReportModel; import org.alfresco.module.org_alfresco_module_rm.report.ReportService; +import org.alfresco.repo.action.executer.ActionExecuterAbstractBase; import org.alfresco.repo.content.MimetypeMap; import org.alfresco.service.cmr.action.Action; import org.alfresco.service.cmr.repository.NodeRef; @@ -74,7 +76,10 @@ public abstract class BaseReportAction extends RMActionExecuterAbstractBase impl Report report = reportService.generateReport(reportType, actionedUponNodeRef, MimetypeMap.MIMETYPE_HTML, addProperties(actionedUponNodeRef)); NodeRef destination = getDestination(action); - reportService.fileReport(destination, report); + NodeRef filedReport = reportService.fileReport(destination, report); + + String filedReportName = (String) nodeService.getProperty(filedReport, ContentModel.PROP_NAME); + action.setParameterValue(ActionExecuterAbstractBase.PARAM_RESULT, filedReportName); } /**