Visão geral
Este passo é responsável por executar e acompanhar demandas de cada curso.
Funcionamento dos filtros
Os filtros disponíveis para seleção são: curso, habilitação, matriz e turno. Os cursos que serão retornado no filtro, são todos os cursos que possuam parametrização por curso referente ao período letivo que está vinculado ao período letivo de planejamento selecionado no topo da página.
Estes filtros funcionam da seguinte forma, se no curso estiver selecionado a opção todos os demais campos (habilitação, matriz e turno) ficam desabilitados, caso se selecione um curso, o campo de habilitação fica disponível para seleção.
Se no campo habilitação estiver selecionado a opção todas os demais campos (matriz e turno) ficam desabilitados, caso se selecione uma habilitação, o campo de matriz ficará disponível. O mesmo acontece com o campo de matriz, se estiver selecionada a opção todas o campo de turno ficará desabilitado, caso se selecione uma matriz, o campo de turno ficará disponível.
Grid dos cursos
Pós seleção dos filtros, basta clicar no botão adicionar. Ele irá popular a grid de acordo com o filtro selecionado. Toda vez que se clica no botão adicionar os cursos são adicionados da grid sempre no topo dela, porém, jamais irá repetir o mesmo curso, habilitação, matriz e turno.
A grid é composta pelas colunas de curso, habilitação, matriz e turno, colunas de identificação, e pelas colunas status, data de início, data de término e usuário, colunas responsáveis pela execução da demanda daquele curso, por fim uma coluna que irá possibilitar visualizar a demanda executada, ao clicar neste ícone, será feito o redirecionamento para o passo de visualizar demanda, com os filtros preenchidos do curso, habilitação, matriz e turno referente a linha clicada. As colunas data de início, data de término, usuário ficarão preenchidas caso a demanda esteja em processamento, processada ou processada com erro, já a coluna de visualizar demanda somente ficará disponível se a demanda tiver sido executada com sucesso, ou seja, com status de processado.
Por fim temos três botões pós a grid, limpar, atualizar e processar. O botão limpar, tem finalidade de limpar toda a grid. O atualizar efetua uma atualização nos dados que estão presente na grid, ou seja, faz uma chamada ao servidor com os dados que estão na grid e traz atualizações dos dados caso exista. Vale frisar que esta grid não se atualiza automaticamente a cada demanda executada, é necessário clicar no botão atualizar ou se clicar no botão adicionar para adicionar outro curso, será feito a adição do novo curso e a grid será atualizada. Por último o botão processar tem função de processar a demanda de um ou mais cursos, somente é possível processar algo se tiver marcado alguma linha na grid, mais informações do botão processar está descrito logo abaixo.
Processar Demanda
Disparada ao clicar no botão processar irá criar um job para cada curso marcado na grid. Se o curso selecionado estiver com o status de demanda aguardando processamento, demanda em processamento, geração da oferta aguardando processamento, geração da oferta em processamento, geração da oferta processada ou geração da oferta processada com erro não será feita o processamento deste curso. Para os demais status será feito o processamento, porém vale ressaltar que um curso já processado com sucesso for processado novamente o mesmo será sobreposto, não será gravado nenhum histórico de processamento anteriores. O mesmo vale para cursos que estão com o status demanda processado com erro.
A regra de processamento da demanda funciona da seguinte maneira, o período letivo de planejamento selecionado, tem vinculado a ele um período letivo, e este possui um período letivo anterior. Dado esta informação, o processo irá buscar todos os alunos devidamente matriculados no período letivo anterior do curso selecionado para o processamento. Uma informação obrigatória e que deverá estar devidamente preenchida é o campo período na matrícula do período letivo do aluno, sem este campo preenchido o processamento dará erro e este aluno não será considerado na contagem da demanda. Para cada aluno matriculado será buscado todas as disciplinas obrigatórias concluídas, pendentes e em andamento, e a cada disciplina da grade é verificado se aluno não cursou a disciplina, caso afirmativo, é verificado se o período da disciplina é menor ou igual ao período do aluno, se sim soma 1 de vaga devedora, se não soma 1 de vaga regular. Isso acontece até o período da disciplina da grade for menor que o período do aluno + 2.
As disciplinas de 1º periodo podem receber um valor de demanda regular, para isso é necessário preencher o campo demanda de alunos do 1º período no cadastro do período letivo de planejamento. Ao preencher este campo com um valor maior que zero, todas as disciplinas do 1º período de cada matriz curricular processada receberá este valor na coluna de demanda regular.
Disciplinas optativas/eletivas não são consideradas neste processo, apenas disciplinas obrigatórias. A regra de correquisito também não está sendo levada em consideração.
Foi incluído o campo Validar pré-requisitos no cadastro do período letivo de planejamento. Com este parâmetro marcado, não será possível gerar demanda para disciplinas que não tenha o pré-requisito cumprido.
Exemplo
Dado o curso de Sistema de Informação, o mesmo possui 8 períodos, sendo cada período com 5 disciplinas. Um aluno está no 3º período, matriculado nas 5 disciplinas do período.
No 1º período o aluno concluiu apenas 4 disciplinas.
No 2º período o aluno concluiu todas as 5 disciplinas.
Ao rodar o processamento da demanda, o calculo para este aluno seria assim, 1 demanda de períodos anteriores (disciplina do 1º período que não foi concluída) e 5 demanda regular (como o aluno está no 3º período com todas as 5 disciplinas matriculadas, deduzimos que ele vai concluir todas). Com isso, na visualização da demanda a disciplina que o aluno não conclui no 1º período terá o valor de 1 na demanda períodos anteriores e 0 na demanda regular, totalizando o valor de 1 na demanda total. Já as disciplinas do 4º período todas terão o valor de 0 na demanda períodos anteriores e 5 na demanda regular, totalizando 5 na demanda total.
Isso irá se repetir para todos os alunos e somando para cada disciplina.
Por fim, após realizar o processamento de uma demanda, será executada uma rotina que irá atualizar o status dessa etapa na tabela SPLETIVOPLANETAPAS. A etapa em questão é a 2, seus status passará a ser 2 e ATIVA será atualizado de 0 para 1.