~~ODT~~ echo "
"; echo "Última atualização: "; ver('', false); echo "
";
====== Relatório Técnico Administrativos por Faixa Etária e Sexo ====== Este relatório tem por objetivo exibir um quantitativo dos técnico-administrativos ativos, separados por faixa etária e sexo. Está disponibilizado no portal público do SIGRH podendo ser acessador por qualquer pessoa. ===== Descrição do Caso de Uso ===== O Caso de Uso inicia-se quando o usuário acessa a opção: //SIGRH -> Portal Público -> Quantitativos -> Relatórios Mensais -> Técnico-Administrativos Ativos por Faixa Etária e Sexo// Após acessar a referida opção, o usuário é encaminhado para uma tela onde será possível selecionar um mês e ano para filtragem do relatório. * **__Mês/Ano__**: tipo TEXTO com as opções dos meses do ano em um combobox, e outro combobox com os anos a partir de 2005. Ao acessar a opção Consultar, será gerado um relatório em formato PDF com os seguintes dados juntamente com sua disposição em tela: ^Faixa Etária ^Masculino ^Feminino ^Total | | 0 a 24 anos | 9999 | 9999 | 9999 | | 25 a 29 anos | 9999 | 9999 | 9999 | | 30 a 34 anos | 9999 | 9999 | 9999 | | 35 a 39 anos | 9999 | 9999 | 9999 | | 40 a 44 anos | 9999 | 9999 | 9999 | | 45 a 49 anos | 9999 | 9999 | 9999 | | 50 a 54 anos | 9999 | 9999 | 9999 | | 55 a 59 anos | 9999 | 9999 | 9999 | | 60 a 64 anos | 9999 | 9999 | 9999 | | 65 anos ou mais| 9999 | 9999 | 9999 | Abaixo da tabela é exibido um gráfico com os mesmos dados exibidos na tabela {{:desenvolvimento:especificacoes:sigrh:portal_publico:casos_de_uso:relatorios_estatisticos:relatorios_mensais:docentes_ativos_por_faixa_etaria.png|}} Então o caso de uso é finalizado. ===== Principais Regras de Negócio ===== Não se aplica. ==== Resoluções/Legislações Associadas ==== Não se aplica. ===== Plano de Teste ===== Sistema: SIGRH Módulo: Portal Público Link(s): Quantitativos → Relatórios Mensais → Técnico-Administrativos Ativos por Faixa Etária Usuário: Não se aplica. Papel que usuário deve ter: Não se aplica. ===== Cenários de Teste ===== Utilizar a consulta abaixo para validar os dados do relatório, lembrando de substituir os parâmetros indicados na consulta pelos dados usados na filtragem do relatório. ex.: Mes = 09, Ano = 2011, Primeiro Dia do Mês = '01-09-2011', e a data de exclusão será gerada sempre como o último dia do Mês selecionado, '30-09-2011'. ===== Dados para o Teste ===== SELECT CAST ('PERMANENTE' AS VARCHAR) AS QUADRO, DESCRICAO, MINIMO, MASCULINO, FEMININO, MASCULINO+FEMININO AS TOTAL FROM ( SELECT A.DESCRICAO, ( SELECT CAST (COUNT(*) AS FLOAT) FROM FUNCIONAL.HISTORICO_SERVIDOR H INNER JOIN RH.SERVIDOR S ON S.ID_SERVIDOR=H.ID_SERVIDOR INNER JOIN COMUM.PESSOA P ON P.ID_PESSOA=S.ID_PESSOA LEFT JOIN COMUM.UNIDADE U ON U.ID_UNIDADE=S.ID_UNIDADE WHERE H.ANO=:ano AND H.MES=:mes AND S.ID_CATEGORIA=2 /*TECNICO ADMINISTRATIVO*/ AND S.ID_SITUACAO IN (1,8,12,20) /*ATIVO/CELETISTA*/ AND P.SEXO<>'F' AND ((date_part('YEAR', age(:primeiroDiaDoMes, P.DATA_NASCIMENTO)) BETWEEN A.MINIMO AND A.MAXIMO) OR (A.MINIMO=0 AND P.DATA_NASCIMENTO IS NULL)) AND (S.DATA_EXCLUSAO IS NULL OR S.DATA_EXCLUSAO>= :dataExclusao) ) AS MASCULINO, ( SELECT CAST (COUNT(*) AS FLOAT) FROM FUNCIONAL.HISTORICO_SERVIDOR H INNER JOIN RH.SERVIDOR S ON S.ID_SERVIDOR=H.ID_SERVIDOR INNER JOIN COMUM.PESSOA P ON P.ID_PESSOA=S.ID_PESSOA LEFT JOIN COMUM.UNIDADE U ON U.ID_UNIDADE=S.ID_UNIDADE WHERE H.ANO=:ano AND H.MES= :mes AND S.ID_CATEGORIA=2 /*TECNICO ADMINISTRATIVO*/ AND S.ID_SITUACAO IN (1,8,12,20) /*ATIVO/CELETISTA*/ AND P.SEXO='F' AND ((date_part('YEAR', age(:primeiroDiaDoMes, P.DATA_NASCIMENTO)) BETWEEN A.MINIMO AND A.MAXIMO) OR (A.MINIMO=0 AND P.DATA_NASCIMENTO IS NULL)) AND (S.DATA_EXCLUSAO IS NULL OR S.DATA_EXCLUSAO>= :dataExclusao) ) AS FEMININO,MINIMO FROM ( SELECT 'MENOR QUE 24 ANOS' AS DESCRICAO,0 AS MINIMO,24 AS MAXIMO UNION SELECT 'DE 25 A 29 ANOS',25,29 UNION SELECT 'DE 30 A 34 ANOS',30,34 UNION SELECT 'DE 35 A 39 ANOS',35,39 UNION SELECT 'DE 40 A 44 ANOS',40,44 UNION SELECT 'DE 45 A 49 ANOS',45,49 UNION SELECT 'DE 50 A 54 ANOS',50,54 UNION SELECT 'DE 55 A 59 ANOS',55,59 UNION SELECT 'DE 60 A 64 ANOS',60,64 UNION SELECT '65 ANOS OU MAIS',65,999 ) A ORDER BY A.MINIMO ) B