~~ODT~~ echo "
"; echo "Última atualização: "; ver('', false); echo "
";
====== Relatório de Formações dos Servidores ====== Esse caso de uso tem por finalidade gerar um relatório com dados das formações dos servidores ativos e cedidos nas unidades da instituição. O responsável por esse caso de uso é o gestor do departamento de administração de pessoal. Este caso de uso está especificado em [[desenvolvimento:especificacoes:sigrh:administracao_de_pessoal:casos_de_uso:consultas_relatorios:funcionais:consultas_gerais:formacoes_dos_servidores|Relatório de Formações dos Servidores]] do módulo Administração de Pessoal. ===== Principais Regras de Negócio ===== * **RN01** - O campo **Unidade** é vinculado à unidade do papel, se o papel exigir unidade. * **RN02** - O campo relativo à unidade de Lotação será exibido se o valor do parâmetro UTILIZA_CONCEITO_EXERCICIO for "true". * **RN03** - Quando o usuário logado possuir papel com exigência de vinculação a uma unidade, todas as operações somente podem ser realizadas para servidores lotados na unidade que foi vinculada ao papel. Caso contrário, as operações podem ser realizadas para servidores lotados em qualquer unidade. ==== Resoluções/Legislações Associadas ==== Não se aplica. ===== Classes Persistentes e Tabelas Envolvidas ===== ^ Classe ^ Tabela | | br.ufrn.rh.dominio.ClasseFuncional | administrativo.rh.classe_funcional | | br.ufrn.sigrh.dominio.Unidade | administrativo.comum.unidade | | br.ufrn.sigrh.funcional.dominio.Cargo | administrativo.rh.cargo | | br.ufrn.sigrh.pessoal.dominio.Pessoa | administrativo.comum.pessoa | ====== Plano de Teste ====== Sistema: SIGRH Módulo: Cadastro Link(s): Consultas/Relatórios → Funcionais → Funcionais → Consultas Gerais → Formação Usuário: mirian Papel que usuário deve ter: SigrhPapeis.GESTOR_DAP ===== Cenários de Teste ===== Não se aplica. ===== Dados para o Teste ===== Para obter uma lista de 'titulações' utilize o sql: SELECT * FROM rh.formacao; Para buscar registros de formações dos servidores, utilizar o sql: SELECT MAX(f.denominacao) AS titulacao, s.id_servidor, (p.nome || ' (' || s.siape || ')') AS servidor, u.nome_capa AS unidade, e.descricao AS escolaridade , fserv.denominacao AS formacao FROM rh.servidor s LEFT JOIN pessoal.formacao_escolar fe ON (fe.id_servidor = s.id_servidor) JOIN comum.pessoa p ON (s.id_pessoa = p.id_pessoa) JOIN comum.unidade u ON (s.id_unidade = u.id_unidade) JOIN rh.escolaridade e ON (s.id_escolaridade = e.id_escolaridade) JOIN rh.formacao fserv ON (s.id_formacao = fserv.id_formacao) LEFT JOIN rh.formacao f ON (fe.id_tipo_formacao = f.id_formacao) WHERE s.id_ativo IN ( 1,7 ) AND s.data_desligamento IS NULL GROUP BY s.id_servidor, s.siape, p.nome, u.nome_capa, e.descricao, fserv.denominacao, s.id_ativo, s.data_desligamento ORDER BY p.nome substituindo ? pelo valor do parâmetro utilizado na busca