{"comment":{"url":"https://api.github.com/repos/FenixEdu/fenixedu-academic/comments/12426195","html_url":"https://github.com/FenixEdu/fenixedu-academic/commit/0bd68e3262a9dc7eca4746bb2bd4b5c5a0d00ca3#commitcomment-12426195","id":12426195,"user":{"login":"diogo-simoes","id":3707705,"avatar_url":"https://avatars.githubusercontent.com/u/3707705?v=3","gravatar_id":"","url":"https://api.github.com/users/diogo-simoes","html_url":"https://github.com/diogo-simoes","followers_url":"https://api.github.com/users/diogo-simoes/followers","following_url":"https://api.github.com/users/diogo-simoes/following{/other_user}","gists_url":"https://api.github.com/users/diogo-simoes/gists{/gist_id}","starred_url":"https://api.github.com/users/diogo-simoes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/diogo-simoes/subscriptions","organizations_url":"https://api.github.com/users/diogo-simoes/orgs","repos_url":"https://api.github.com/users/diogo-simoes/repos","events_url":"https://api.github.com/users/diogo-simoes/events{/privacy}","received_events_url":"https://api.github.com/users/diogo-simoes/received_events","type":"User","site_admin":false},"position":20,"line":1658,"path":"src/main/java/org/fenixedu/academic/domain/student/Registration.java","commit_id":"0bd68e3262a9dc7eca4746bb2bd4b5c5a0d00ca3","created_at":"2015-07-29T17:18:13Z","updated_at":"2015-07-29T17:18:13Z","body":"> At the moment the system assumes that all `CycleCourseGroup` has `ProgramConclusion`.\r\n\r\nWell, from what I've been given to understand that is not entirely true. The issue here I believe is the integrated master degree. Whereas some schools issue a different graduation according to each of the cycles comprehended within these degrees (which is the case you are modeling), some other schools issue a graduation for the 1st cycle alone and then a final graduation that refers  to the whole curricular plan. In this case the `CycleCourseGroup` relative to the 2nd cycle will not have have a `ProgramConclusion` associated with. And this code will not work.\r\nPlease consider adding the filter I suggested since it's harmless for your use case. To be fully compliant with both scenarios, the algorithm needs to look into the `RootCourseGroup` besides seeking all `CycleCourseGroups`\r\nThanks"}}