<< Voltar

Última atualização: 2017/07/27 11:01 por marcelo.tanaka

Lista de Alunos Laureados

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:

  • Ano-Período: Tipo - NUMÉRICO. Formato - 9999.9
  • Índice Acadêmico: Tipo - TEXTO. Com as opções: 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.

  • RN01 - A concessão da medalha de mérito estudantil só ocorrerá caso o IEAN do discente seja igual ou superior a 600(seiscentos). Caso a lista de laureados seja gerada com base no IRA o valor mínimo a ser considerado é 8.5.
  • RN02 - Ocorrendo casos de alunos com o mesmo IEAN, considerando-se o valor inteiro arredondando, cada aluno será indicado com laureado.
  • RN03 - A ordenação da listagem deve ser pelo nome do curso, sigla da unidade e nome do discente.
  • RN04 - Para os cursos em que nenhum aluno atingiu o valor mínimo de IEAN, será relacionado (com destaque em vermelho) aquele discente que tenha atingido a maior pontuação (mesmo que inferior a 600).
  • RN05 - Um mesmo curso (Unidade/Curso/Cidade) não pode aparecer em ambas listagens.

Resoluções/Legislações Associadas

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

Plano de Teste

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 
  • sigaa/graduacao/documentacao_tecnica/lista_de_alunos_laureados_daca.txt
  • Última modificação: 2017/07/27 11:01
  • por marcelo.tanaka