Relatório Quantitativo de Renovação de Bolsas PIBIC
Esse caso de uso consiste na geração de um relatório, com o intuito de informar quais os discentes que foram indicados para a mesma bolsa cadastrada anteriormente. O período para a renovação varia conforme o calendário da ProPesq (Pró-Reitoria de Pesquisa).
Bolsas PIBIC (Programa Institucional de Bolsas de Iniciação Científica) têm como objetivo incentivar a formação, privilegiar a participação ativa dos bons alunos em projetos de pesquisa com qualidade acadêmica, mérito científico e orientação adequada, individual e continuada.
Apenas os gestores de pesquisa podem acessar essa funcionalidade.
Descrição do Caso de Uso
Para gerar o relatório, o usuário deve informar as cotas desejadas:
- Cota Bolsa Atual: Cota a ser analisada pra verificar se o discente permanece na bolsa;
- Cota de Bolsa Inicial: Cota inicial do discente;
No relatório gerado, são exibidas as seguintes informações:
- Descrição: Descrição da bolsa;
- Categoria: Categoria que o bolsista se encontra (Ex.: IC ou TI);
- Total: Total de bolsistas que se enquadram nessa descrição.
Principais Regras de Negócio
Não se aplica.
Classes Persistentes e Tabelas Envolvidas
Classe | Tabela |
---|---|
br.ufrn.sigaa.pesquisa.dominio.MembroProjetoDiscente | sigaa.pesquisa.membro_projeto_discente |
br.ufrn.sigaa.pesquisa.dominio.PlanoTrabalho | sigaa.pesquisa.plano_trabalho |
br.ufrn.sigaa.pesquisa.dominio.TipoBolsaPesquisa | sigaa.pesquisa.tipo_bolsa_pesquisa |
OBS: não há classes persistidas na geração do relatório. Os dados do relatório são consultados diretamente nas tabelas.
Plano de Teste
Sistema: SIGAA
Módulo: Pesquisa
Link(s): Relatórios → Iniciação Científica → Relatório Quantitativo de Renovação de Bolsas PIBIC
Usuário(s): mariabernardete, mhcosta, eloisa, magno, fknc1952
Papel que usuário deve ter: SigaaPapeis.GESTOR_PESQUISA
Cenários de Teste
Não se aplica.
Dados para o Teste
Para obtenção dos resultados é necessário realizar o seguinte sql:
select tbp.descricao, (case tbp.categoria when 1 then 'IC' when 2 then 'IT' end) as categoria, count(distinct id_discente) from pesquisa.membro_projeto_discente mpd join pesquisa.plano_trabalho pt using(id_plano_trabalho) join pesquisa.tipo_bolsa_pesquisa tbp on (mpd.tipo_bolsa = tbp.id_tipo_bolsa) join (select id_discente, mpd2.tipo_bolsa from pesquisa.membro_projeto_discente mpd2 join pesquisa.plano_trabalho pt2 using(id_plano_trabalho) where id_cota_bolsas = COTA ANTERIOR) as planos_anteriores using (id_discente) where id_cota_bolsas = COTA ATUAL and mpd.tipo_bolsa = planos_anteriores.tipo_bolsa and mpd.ignorar is false group by tbp.descricao, tbp.categoria;
Ex.: Para que esse sql funcione corretamente é necessário trocar: COTA ANTERIOR = 4001710 COTA ATUAL = 10788000, estes números são obtidos na consulta abaixo.
Para saber os demais id das cotas basta realizar o seguinte sql:
select * from pesquisa.cota_bolsas