~~ODT~~
O usuário da Pro Reitoria de Graduação, PROGRAD, semestralmente, organiza as cerimônias de colação de grau e, para tanto, faz-se necessário saber quais discentes estão aptos a receber a medalha de mérito estudantil.
A medalha de mérito estudantil é entregue aos alunos de cada curso que obtiverem o maior Índice de Eficiência Acadêmica Normalizado (IEAN), dentre os alunos aptos a colação de grau em um determinado período letivo regular.
Este relatório lista os discentes que estão com o status GRADUANDO ou CONCLUÍDO, que podem colar grau e serem indicados como alunos laureados.
Este caso de uso inicia quando o usuário acessa a opção: SIGAA → Graduação → Relatórios - DACA → Alunos → Concluintes e Egressos → Concluintes e Egressos → Lista de Alunos Laureados.
Para gerar o relatório, o usuário deve escolher o ano e período dos discentes à colarem grau e o índice acadêmico que será utilizado para gerar o relatório. O índice acadêmico a ser considerado neste relatório via de regra deve ser o IEAN, porém o usuário tem a opção de selecionar que o relatório seja gerado a partir do IRA para contemplar casos antigos, aonde existia apenas o IRA e este era o índice considerado para listagem dos laureados. O IRA deixou de ser o índice padrão para cálculo de laureados na UFRN a partir de 2010.2.
O usuário tem como opção:
IRA, IEAN
.O relatório listará os discentes graduandos e concluídos, agrupados por curso, sendo listado:
Será, ainda, apresentado uma tabela semelhante contendo uma Lista dos Cursos de Discentes com IEAN menor que 600, mas que tiveram maior IEAN do curso.
Quando não houver, informar com texto “Não se Aplica”.
Classe | Tabela |
---|---|
br.ufrn.sigaa.pessoa.dominio.Discente | sigaa.public.discente |
br.ufrn.sigaa.ensino.graduacao.dominio.DiscenteGraduacao | sigaa.graduacao.discente_graduacao |
br.ufrn.sigaa.dominio.Curso | sigaa.public.curso |
br.ufrn.sigaa.ensino.dominio.MatriculaComponente | sigaa.ensino.matricula_componente |
br.ufrn.sigaa.ensino.dominio.IndiceAcademicoDiscente | sigaa.graduacao.indice_academico_discente |
Sistema: SIGAA
Módulo: Graduação
Link(s): SIGAA → Graduação → Relatórios - DACA → Alunos → Concluintes e Egressos → Concluintes e Egressos → Lista de Alunos Laureados
Usuário: lins, mirza
Papel que usuário deve ter: SigaaPapeis.DAE
Pode-se comparar os status dos discentes em Consultar Dados do Aluno.
SQL da Lista de Laureados:
select u.sigla as centro, c.id_curso, c.nome as curso_nome, d.matricula, p.nome as discente_nome, round(iad.valor) as IEAN, m.id_municipio, m.nome as municipio_nome, sd.descricao as status_discente from comum.unidade u INNER JOIN curso c ON u.id_unidade = c.id_unidade INNER JOIN discente d ON c.id_curso= d.id_curso INNER JOIN graduacao.discente_graduacao dgd ON d.id_discente = dgd.id_discente_graduacao INNER JOIN comum.pessoa p ON d.id_pessoa = p.id_pessoa INNER JOIN comum.municipio m ON c.id_municipio = m.id_municipio INNER JOIN status_discente sd ON d.status = sd.status INNER JOIN ensino.indice_academico_discente iad ON iad.id_discente = d.id_discente INNER JOIN (select cur.id_unidade, cur.id_curso, max(round(iadis.valor)) as iean_max from graduacao.discente_graduacao dg INNER JOIN discente dis ON dis.id_discente = dg.id_discente_graduacao INNER JOIN curso cur ON dis.id_curso = cur.id_curso INNER JOIN ensino.indice_academico_discente iadis ON iadis.id_discente = dis.id_discente where iadis.id_indice_academico = 7 and iadis.valor >= 600 and dis.status in ( 3,9 ) and exists ( select mco.id_discente from ensino.matricula_componente mco where mco.id_discente = dis.id_discente and mco.periodo=1 and mco.id_situacao_matricula <> 10 group by mco.id_discente having max(mco.ano)=2010) and not exists ( select mco.id_discente from ensino.matricula_componente mco where mco.id_discente = dis.id_discente and mco.periodo=2 and mco.id_situacao_matricula <> 10 group by mco.id_discente having max(mco.ano)=2010) group by cur.id_unidade, cur.id_curso ) as maxiean ON maxiean.id_curso = c.id_curso AND maxiean.id_unidade = c.id_unidade where iad.id_indice_academico = 7 and maxiean.iean_max = round(iad.valor) and iad.valor >= 600 and d.status in ( 3,9 ) and exists ( select mcop.id_discente from ensino.matricula_componente mcop where mcop.id_discente = d.id_discente and mcop.periodo=1 and mcop.id_situacao_matricula <> 10 group by mcop.id_discente having max(mcop.ano)=2010) and not exists ( select mcop.id_discente from ensino.matricula_componente mcop where mcop.id_discente = d.id_discente and mcop.periodo=2 and mcop.id_situacao_matricula <> 10 group by mcop.id_discente having max(mcop.ano)=2010) order by c.nome, u.sigla, m.nome, p.nome
SQL da Lista dos Discentes que não atingiram o IEAN mínimo:
select u.sigla as centro, c.id_curso, c.nome as curso_nome, d.matricula, p.nome as discente_nome, round(iad.valor) as IEAN, m.id_municipio, m.nome as municipio_nome, sd.descricao as status_discente from comum.unidade u INNER JOIN curso c ON u.id_unidade = c.id_unidade INNER JOIN discente d ON c.id_curso= d.id_curso INNER JOIN graduacao.discente_graduacao dgd ON d.id_discente = dgd.id_discente_graduacao INNER JOIN comum.pessoa p ON d.id_pessoa = p.id_pessoa INNER JOIN comum.municipio m ON c.id_municipio = m.id_municipio INNER JOIN status_discente sd ON d.status = sd.status INNER JOIN ensino.indice_academico_discente iad ON iad.id_discente = d.id_discente INNER JOIN (select cur.id_unidade, cur.id_curso, max(round(iadis.valor)) as iean_max from graduacao.discente_graduacao dg INNER JOIN discente dis ON dis.id_discente = dg.id_discente_graduacao INNER JOIN curso cur ON dis.id_curso = cur.id_curso INNER JOIN ensino.indice_academico_discente iadis ON iadis.id_discente = dis.id_discente where iadis.id_indice_academico = 7 and dis.status in ( 3,9 ) and exists ( select mco.id_discente from ensino.matricula_componente mco where mco.id_discente = dis.id_discente and mco.periodo=1 and mco.id_situacao_matricula <> 10 group by mco.id_discente having max(mco.ano)=2010) and not exists ( select mco.id_discente from ensino.matricula_componente mco where mco.id_discente = dis.id_discente and mco.periodo=2 and mco.id_situacao_matricula <> 10 group by mco.id_discente having max(mco.ano)=2010) group by cur.id_unidade, cur.id_curso ) as maxiean ON maxiean.id_curso = c.id_curso AND maxiean.id_unidade = c.id_unidade where iad.id_indice_academico = 7 and maxiean.iean_max = round(iad.valor) and d.status in ( 3,9 ) and exists ( select mcop.id_discente from ensino.matricula_componente mcop where mcop.id_discente = d.id_discente and mcop.periodo=1 and mcop.id_situacao_matricula <> 10 group by mcop.id_discente having max(mcop.ano)=2010) and not exists ( select mcop.id_discente from ensino.matricula_componente mcop where mcop.id_discente = d.id_discente and mcop.periodo=2 and mcop.id_situacao_matricula <> 10 group by mcop.id_discente having max(mcop.ano)=2010) and c.id_curso NOT IN( select c.id_curso from comum.unidade u INNER JOIN curso c ON u.id_unidade = c.id_unidade INNER JOIN discente d ON c.id_curso= d.id_curso INNER JOIN graduacao.discente_graduacao dgd ON d.id_discente = dgd.id_discente_graduacao INNER JOIN comum.pessoa p ON d.id_pessoa = p.id_pessoa INNER JOIN comum.municipio m ON c.id_municipio = m.id_municipio INNER JOIN status_discente sd ON d.status = sd.status INNER JOIN ensino.indice_academico_discente iad ON iad.id_discente = d.id_discente INNER JOIN (select cur.id_unidade, cur.id_curso, max(round(iadis.valor)) as iean_max from graduacao.discente_graduacao dg INNER JOIN discente dis ON dis.id_discente = dg.id_discente_graduacao INNER JOIN curso cur ON dis.id_curso = cur.id_curso INNER JOIN ensino.indice_academico_discente iadis ON iadis.id_discente = dis.id_discente where iadis.id_indice_academico = 7 and iadis.valor >= 600 and dis.status in ( 3,9 ) and exists ( select mco.id_discente from ensino.matricula_componente mco where mco.id_discente = dis.id_discente and mco.periodo=1 and mco.id_situacao_matricula <> 10 group by mco.id_discente having max(mco.ano)=2010) and not exists ( select mco.id_discente from ensino.matricula_componente mco where mco.id_discente = dis.id_discente and mco.periodo=2 and mco.id_situacao_matricula <> 10 group by mco.id_discente having max(mco.ano)=2010) group by cur.id_unidade, cur.id_curso ) as maxiean ON maxiean.id_curso = c.id_curso AND maxiean.id_unidade = c.id_unidade where iad.id_indice_academico = 7 and maxiean.iean_max = round(iad.valor) and iad.valor >= 600 and d.status in ( 3,9 ) and exists ( select mcop.id_discente from ensino.matricula_componente mcop where mcop.id_discente = d.id_discente and mcop.periodo=1 and mcop.id_situacao_matricula <> 10 group by mcop.id_discente having max(mcop.ano)=2010) and not exists ( select mcop.id_discente from ensino.matricula_componente mcop where mcop.id_discente = d.id_discente and mcop.periodo=2 and mcop.id_situacao_matricula <> 10 group by mcop.id_discente having max(mcop.ano)=2010) ) order by c.nome, u.sigla, m.nome, p.nome