Esta funcionalidade permite ao usuário finalizar todos os dados do período letivo, para cada curso cadastrado no sistema e que possua alunos matriculados.
A finalização de um período letivo por curso faz com que todos os alunos e turmas sejam finalizados, sendo dessa forma, gerados automaticamente pelo sistema todos os históricos e atas de resultados finais do curso.
Ao acessar o módulo de Ferramentas / Finalizar período letivo…, o sistema deve exibir a tela de finalização do período letivo do curso selecionado.
Ao acessar o módulo de Cursos, o sistema deve exibir uma lista com os cursos cadastrados. Para finalizar o período letivo de um curso, basta selecionar o curso na lista e acessar a funcionalidade “Finalizar período letivo” na opção Ferramentas, no clique do botão direito do mouse na linha do curso na listagem ou utilizar as teclas de atalho Ctrl+Z, na visão Padrão; o sistema deverá então exibir a tela de finalização do período letivo do curso.
Ao clicar no botão Avançar, o sistema deve exibir outra tela ao usuário, a qual permitirá acompanhar todo o processo de finalização, onde cada ação descrita no processo deve ser cumprida e seguir a ordem em que são apresentadas na lista. À medida que o sistema executa cada ação, é exibida uma imagem na cor verde (como um confere) para identificar ao usuário que foi realizada com sucesso, caso alguma das ações apresente algum erro e não consiga ser executada, o sistema exibirá uma outra imagem na cor vermelha (como um X) para identificar ao usuário que a ação não foi realizada, e neste caso, o processo de finalização é interrompido e deve ser cancelado pelo usuário.
Após o processo de finalização, caso ele seja todo concluído com sucesso, o sistema irá finalizar o período letivo de todos os alunos matriculados para o curso informado.
Na finalização do período letivo deve existir os seguintes campos:
| Campo | Descrição | Tipo | Tamanho | Obrigatório? |
| Curso | Nome do curso que deseja finalizar | Texto | - | Sim |
| Excluir históricos existentes do curso | Indica se serão excluídos os históricos existentes do curso na finalização do ano letivo ou não | - | - | Não |
| Calendário escolar (atual) | Calendário escolar atual do curso que será finalizado | Texto | - | Sim |
| Calendário escolar (próximo) | Próximo calendário escolar do curso que será finalizado | Texto | - | Sim |
| Opções de rematrícula para alunos com pré-matrícula/rematrícula |
| Matricular/rematricular alunos automaticamente ao finalizar o ano letivo | Indica se os alunos serão rematriculados automaticamente ou não | - | - | Não |
| Matricular alunos cadastrados automaticamente ao finalizar o ano letivo | Indica se os alunos cadastrados serão matriculados automaticamente ou não | - | - | Não |
| Utilizar a data da pré-matrícula como data da matrícula | Indica se será utilizada a data da pré-matrícula como data da matrícula ou não | - | - | Não |
| Data da matrícula | Data da rematrícula dos alunos para o próximo ano letivo (Caso a opção de Utilizar a data da pré-matrícula não for marcada) | - | - | Não |
Ao finalizar o período letivo e gerar as atas de resultados finais das turmas do curso, o sistema deve salvar os seguintes dados dos alunos no banco de dados, na tabela de alunos nas atas (TabAlunoAta):
| Campo | Origem |
| CODIGOINSTALACAOELETRICA | Campo CODIGOINSTALACAOELETRICA da tabela TabAluno. |
| BAIRRO | Campo BAIRRO da tabela TabAluno. |
| ZONARESIDENCIA | Campo ZONARESIDENCIA da tabela TabAluno. |
| UTILIZATRANSPORTE | Campo UTILIZATRANSPORTE da tabela TabAluno. |
| TRANSPORTEPUBLICO | Campo TRANSPORTEPUBLICO da tabela TabAluno. |
| TRANSPORTEMUNICIPAL | Campo TRANSPORTEMUNICIPAL da tabela TabAluno. |
| LOCALIDADETRANSPORTE | Campo LOCALIDADETRANSPORTE da tabela TabAluno. |
| NOMETRANSPORTADOR | Campo NOMETRANSPORTADOR da tabela TabAluno. |
| ROTA | Campo ROTA da tabela TabAluno. |
| BOLSAFAMILIA | Campo BOLSAFAMILIA da tabela TabAluno. |
| POSSUIDEFICIENCIA | Campo POSSUIDEFICIENCIA da tabela TabAluno. |
| ENVIADOCENSO | Valor recuperado de acordo com os dados dos alunos nas turmas, tabela TabAlunosTurmas, em relação à data de referência do censo. |
| ENVIADOCENSOFINAL | Valor recuperado de acordo com o campo EnviadoCenso e o campo PeriodoLetivo da tabela TabCalendarios (Anos letivos de 2º semestre não são enviados ao censo final) |
Todos os campos obrigatórios devem ser preenchidos;
O sistema deve exibir o campo Curso preenchido com o nome do curso selecionado para realizar a finalização; o campo deve estar sempre desabilitado;
De acordo com o curso, o sistema deve:
Exibir habilitada a opção “Excluir históricos existentes do curso”, apenas se o curso possuir o campo “Gerar históricos automaticamente” desmarcado;
Exibir o título do calendário atual do curso, no campo “Atual” da guia “Calendários escolares”; este campo deve estar sempre desabilitado;
O sistema deve exibir habilitado o botão “Localizar um calendário”, para que através dele, seja exibida a tela “Localizar calendário”, contendo a lista de todos os calendários escolares cadastrados no sistema;
Ao marcar a opção “Rematricular alunos automaticamente ao finalizar o ano letivo”, o campo “Data da rematrícula” deve tornar-ser habilitado e obrigatório;
A data da rematrícula não pode ser menor que a data de início ou ser maior que a data de término do próximo ano letivo;
Quando a opção “Rematricular alunos automaticamente ao finalizar o ano letivo” estiver marcada:
O sistema deverá rematricular todos os alunos matriculados no curso;
O sistema deve habilitar as opções “Matricular alunos cadastrados automaticamente ao finalizar o ano letivo”, “Utilizar a data da pré-matrícula como data da matrícula” e “Data da rematrícula”;
Quando a opção “Rematricular alunos automaticamente ao finalizar o ano letivo” estiver desmarcada:
Quando a opção “Matricular alunos cadastrados automaticamente ao finalizar o ano letivo” estiver marcada:
Quando a opção “Utilizar a data da pré-matrícula como data da matrícula” estiver marcada:
O sistema deve utilizar a data da pré-matrícula de cada aluno, como a data da matrícula para o próximo ano letivo;
O sistema deve desabilitar o campo “Data da rematrícula”;
Quando a opção “Utilizar a data da pré-matrícula como data da matrícula” estiver desmarcada:
O sistema deve habilitar o campo “Data da rematrícula” e obrigar seu preenchimento;
O sistema deve utilizar o valor do campo “Data da rematrícula”, como a data da matrícula para todos os alunos que serão rematriculados para o próximo ano letivo;
O botão “Avançar” deve manter-se desabilitado até que todos os campos obrigatórios estejam preenchidos; Ao clicá-lo, o sistema deve exibir a tela seguinte, a qual conclui o processo de finalização do ano letivo;
A tela deve ser exibida contendo uma lista de ações que serão executadas durante o processo de finalização do período letivo, todas com as imagens em branco;
O botão “Concluir” deve ser exibido habilitado, para que o usuário possa dar início ao processo;
Após clicado no botão, o sistema deverá verificar se existe algum aluno matriculado e sem pré-matrícula cadastrada, e dessa forma então, avisar ao usuário que os alunos sem pré-matrícula não serão rematriculados e perguntar se deseja continuar a finalização. Caso o usuário clique em Sim, o sistema continuará o processo e de fato manterá esses alunos sem matrícula realizada (estará excluindo a matrícula dos alunos), mas com a pré-matrícula ainda cadastrada; caso clique em Não, o sistema deve cancelar a operação e desabilitar o botão “Concluir”;
Caso a ação seja executada com sucesso, sua imagem deve ser alterada para verde; Caso alguma ação não consiga ser executada, sua imagem deve ser alterada para um X na cor vermelha e o sistema deve interromper o processo, alertando ao usuário que cancele a operação;
Após concluir todas as ações com sucesso, o sistema deve exibir uma mensagem ao usuário que o ano letivo foi finalizado;
Segue abaixo cada ação que o sistema deverá executar durante a finalização do período letivo (deve existir pelo menos 1 aluno matriculado):
O sistema deve verificar se todos os alunos matriculados no curso estão com resultado final gerado, ou seja, diferente de Cursando;
Caso exista um ou mais alunos matriculados no curso, com resultado final igual a Cursando, o sistema deve cancelar a finalização do ano letivo, marcando a ação com a imagem (X - vermelho) e informar que o curso possui alunos pendentes;
Caso todos os alunos matriculados no curso possuam resultado gerado, o sistema deve então verificar se todos os alunos matriculados no curso possuem histórico. Essa verificação só deve ocorrer caso o curso gere históricos;
Caso um ou mais alunos não possuam histórico do curso, o sistema deve cancelar a finalização do ano letivo, marcando a ação com a imagem (X - vermelho) e informar que o curso possui alunos sem históricos cadastrados;
Caso o curso não gere históricos ou gere históricos e todos os alunos possuam históricos, o sistema deve liberar a ação marcando-a com a imagem (Confere - Verde);
O sistema deve gerar uma cópia do arquivo do banco de dados e armazená-lo no mesmo caminho do banco de dados, que é salvo no campo CaminhoBanco nas configurações do sistema;
O arquivo deve ser nomeado da seguinte forma: “School Backup” + data + “_” + hora;
O sistema deve verificar se o próximo ano letivo já foi incluído realmente no banco;
Caso o próximo período letivo não tenha sido incluído ainda, o sistema deve cancelar a finalização do período letivo, marcando a ação com a imagem (X - vermelho) e informar que não foi possível incluir o período letivo (selecionado pelo usuário, como próximo período letivo);
Caso o próximo período letivo tenha sido incluído, o sistema deve liberar a ação marcando-a com a imagem (Confere - Verde);
O sistema deve gerar e finalizar todas as atas de resultados finais para todas as turmas do curso;
Esse processo deve ser todo realizado diretamente no banco de dados, através do procedimento: ProcGerarAtas; e caso algum erro ou exceção ocorra durante a execução desse processo, o sistema deve cancelar a finalização do ano letivo, marcando a ação com a imagem (X - vermelho) e informar que não possível gerar as atas de resultados finais das turmas;
Caso todas as atas sejam geradas, o sistema deve liberar a ação marcando-a com a imagem (Confere - Verde);
O sistema deve atualizar para todos os alunos matriculados:
O sistema deve atualizar para todos os alunos cadastrados:
O sistema deve atualizar para todos os alunos matriculados, o campo “Ano anterior” com o mesmo valor do campo “Resultado final” do aluno na ata, exceto quando o campo “Tipo resultado” do cadastro de aluno ata, for igual a: Avançado, Classificado, Reclassificado ou Remanejado;
Caso algum erro ou exceção ocorra durante a execução desse processo, o sistema deve cancelar a finalização do ano letivo, marcando a ação com a imagem (X - vermelho) e informar que não foi possível atualizar a situação do ano anterior dos alunos;
Caso todos os alunos matriculados e cadastrados sejam atualizados, o sistema deve liberar a ação marcando-a com a imagem (Confere - Verde);
O sistema deve limpar todos os dados no banco de dados, referentes ao ano letivo letivo e curso que estão sendo finalizados;
Os dados que devem ser excluídos são os seguintes:
Todos os dados das tabelas TabNota, TabSubNota, TabMedia, TabAlunosDesempenhos, TabAlunosDesempFinais, TabAlunosTurmas, TabAulaDada e TabTurmaProfessor;
Os campos CodigoServidor e Aulas Dadas da tabela TabTurma_Disciplina_Professor;
Os campos CargaHoraria e Situacao (deve receber o valor “EM ABERTA”) da tabela TabTurma;
Esse processo deve ser todo realizado diretamente no banco de dados, através do procedimento: ProcLimparDadosPeriodoLetivo; e caso algum erro ou exceção ocorra durante a execução desse processo, o sistema deve cancelar a finalização do ano letivo, marcando a ação com a imagem (X - vermelho) e informar que não possível limpar os dados;
Caso todos os dados sejam limpos, o sistema deve liberar a ação marcando-a com a imagem (Confere - Verde);
Após finalizado o ano letivo, todos os alunos que não foram rematriculados, mas que possuíam pré-matrículas cadastradas, são listados no módulo de Alunos na visão “Pré-matrículas”; e devem possuir valor igual a “SIM” para o campo “Pré-matriculado” da listagem de alunos; para os demais alunos que foram rematriculados, estes devem possuir valor igual a “NÃO” para o campo “Pré-matriculado”, pois durante a finalização do ano letivo, o sistema deve limpar os dados da pré-matrícula para todos os alunos que são rematriculados pelo sistema;
Se o curso gerar históricos automaticamente, todos os alunos matriculados devem ter seus históricos finalizados para o ano letivo, contendo suas séries cursadas com seus respectivos resultados, somente se o aluno atingiu resultados finais como: Aprovado, Promovido, Reprovado, Retido ou Avançado; para os demais resultados, não deve existir a série no histórico para o ano letivo finalizado;
Todas as atas de resultados finais devem ser geradas pelo sistema, contendo todos os alunos matriculados em suas respectivas turmas;
No cadastro do curso finalizado, o período letivo deve estar conforme o próximo ano letivo informado durante a finalização;
Todos os dados dos alunos e turmas para o novo ano letivo devem estar limpos;