removeEvaluationMethod(persistentSupport, executionCourseFrom); removeCourseReport(persistentSupport, executionCourseFrom);
if (executionCourseFrom.getEvaluationMethod() != null) { executionCourseFrom.getEvaluationMethod().delete(); } if (executionCourseFrom.getCourseReport() != null) { executionCourseFrom.getCourseReport().delete(); }
    public void run(Integer executionCourseDestinationId, Integer executionCourseSourceId)            throws FenixServiceException, ExcepcaoPersistencia {        if (executionCourseDestinationId.equals(executionCourseSourceId)) {            throw new SourceAndDestinationAreTheSameException();        }        final ISuportePersistente persistentSupport = PersistenceSupportFactory                .getDefaultPersistenceSupport();        final IPersistentExecutionCourse persistentExecutionCourse = persistentSupport                .getIPersistentExecutionCourse();        final ExecutionCourse executionCourseFrom = (ExecutionCourse) persistentExecutionCourse                .readByOID(ExecutionCourse.class, executionCourseSourceId);        if (executionCourseFrom == null) {            throw new InvalidArgumentsServiceException();        }        final ExecutionCourse executionCourseTo = (ExecutionCourse) persistentExecutionCourse                .readByOID(ExecutionCourse.class, executionCourseDestinationId);        if (executionCourseTo == null) {            throw new InvalidArgumentsServiceException();        }        if (!isMergeAllowed(persistentSupport, executionCourseFrom, executionCourseTo)) {            throw new InvalidArgumentsServiceException();        }        copyProfessorships(persistentSupport, executionCourseFrom, executionCourseTo);        copyAttends(executionCourseFrom, executionCourseTo);        copyBibliographicReference(persistentSupport, executionCourseFrom, executionCourseTo);        removeEvaluationMethod(persistentSupport, executionCourseFrom);        removeCourseReport(persistentSupport, executionCourseFrom);        copySummaries(persistentSupport, executionCourseFrom, executionCourseTo);        copyGroupPropertiesExecutionCourse(executionCourseFrom, executionCourseTo);        copySite(persistentSupport, executionCourseFrom, executionCourseTo);        copyShifts(executionCourseFrom, executionCourseTo);        removeEvaluations(persistentSupport, executionCourseFrom);        executionCourseTo.getAssociatedCurricularCourses().addAll(                executionCourseFrom.getAssociatedCurricularCourses());        List executionCourseID = new ArrayList();        executionCourseID.add(executionCourseFrom.getIdInternal());        DeleteExecutionCourses deleteExecutionCourses = new DeleteExecutionCourses();        deleteExecutionCourses.run(executionCourseID);    }