~~ODT~~ echo "
"; echo "Última atualização: "; ver('', false); echo "
";
====== Relatório Quantitativo de Alunos por Município ====== Este relatório lista, para o gestor de curso técnico, a quantidade de alunos ativos por município e curso, restrito à unidade do usuário. ===== Descrição do Caso de Uso ===== Este caso de uso inicia quando o usuário acessa a opção: SIGAA -> Técnico -> Relatórios -> Quantitativos -> Quantitativo de Alunos por Município O relatório será gerado no formato PDF, sem requerer parâmetros. O resultado será uma tabela no formato: ^ **__CURSO__**: Tipo - TEXTO. ^ **__UF__**: Tipo - TEXTO. ^ **__MUNICÍPIO__**: Tipo - TEXTO. ^ **__QTD__**: Tipo - TEXTO. | | ---- | ---- | ---- | ---- | O caso de uso é finalizado. ===== Principais Regras de Negócio ===== * **RN01** - Será contabilizado apenas os alunos dos cursos da unidade do usuário. ==== Resoluções/Legislações Associadas ==== "Não se Aplica". ===== Classes Persistentes e Tabelas Envolvidas ===== ^ Classe ^ Tabela | | br.ufrn.sigaa.dominio.Curso | sigaa.public.curso | | br.ufrn.sigaa.pessoa.dominio.Discente | sigaa.public.discente | | br.ufrn.sigaa.pessoa.dominio.Municipio | sigaa.comum.municipio | | br.ufrn.sigaa.dominio.UnidadeFederativa | sigaa.comum.unidade_federativa | ====== Plano de Teste ====== Sistema: SIGAA Módulo: Técnico Link(s): Relatórios -> Quantitativos -> Quantitativo de Alunos por Município Usuário: marcel.oliveira Papel que usuário deve ter: SigaaPapeis.GESTOR_TECNICO ===== Cenários de Teste ===== Testar o relatório para vários usuários. ===== Dados para o Teste ===== select c.id_curso, c.nome as curso, u.id_unidade_federativa, u.sigla as uf, e.id_municipio, m.nome as municipio, count(*) from public.curso c left join public.discente d on d.id_curso = c.id_curso left join comum.pessoa p on p.id_pessoa = d.id_pessoa left join comum.endereco e on e.id_endereco = p.id_endereco_contato left join comum.municipio m on m.id_municipio = e.id_municipio left join comum.unidade_federativa u on u.id_unidade_federativa = m.id_unidade_federativa where c.nivel = 'T' and (($P{municipioID}=-1) or (m.id_municipio = $P{municipioID})) --Municipio and ($P{unidade} <= 0 or $P{unidade} = c.id_unidade) and d.status in (1, 8, 9) -- ativo, graduando, formando group by c.id_curso, c.nome, u.id_unidade_federativa, u.sigla, e.id_municipio, m.nome order by c.nome, u.sigla, m.nome