Detectar e resolver os conflitos (na geração)
O Omniscol detecta os conflitos de forma contínua durante a preparação de um horário e a cada posicionamento manual. O diagnóstico distingue os conflitos bloqueantes das restrições não cumpridas e dos avisos que exigem uma arbitragem, e codifica essa gravidade por uma cor — nas faixas horárias candidatas e nas listas de seleção quando você coloca uma aula, e em cada linha do painel de diagnóstico. A geração automática é um cálculo separado (o algoritmo de geração coloca sob restrições, ou deixa uma aula por posicionar): o seu diagnóstico é tratado em Diagnosticar uma geração que falha.
O que o diagnóstico verifica
- Ocupação (reserva dupla) — um professor, uma turma, um grupo, um aluno, uma sala de aula ou um recurso não pode servir a duas aulas que se sobreponham, salvo modelagem explícita (grupos compatíveis, divisões, salas grandes).
- Disponibilidades e restrições horárias — período declarado indisponível, ou restrição horária não cumprida (professor, turma, grupo, sala de aula, curso, local), graduada conforme a prioridade da restrição. Uma janela de datas imposta, essa, é sempre bloqueante.
- Capacidade e carga horária — superlotação de uma sala de aula, recurso pedido em excesso de exemplares, sala de aula inadequada (capacidade, especialização, local), ou carga horária de um professor ultrapassada.
- Excedente de grade — as horas de aula a colocar ultrapassam, ou aproximam-se, do número de faixas horárias abertas da grade, para um professor ou para uma turma inteira.
- Locais e deslocamentos — tempo de deslocamento insuficiente entre dois locais para um professor ou uma turma, ou duas disciplinas declaradas incompatíveis colocadas ao mesmo tempo.
- Calendário — aula colocada em uma ausência (professor ou turma), em um dia fechado / férias, ou em um evento incompatível.
- Modelagem — alinhamento quebrado (grupos alinhados sem aula comum), número de aulas diferente entre grupos de uma mesma divisão ou de um mesmo alinhamento, professor ou sala de aula faltando, ou configuração incompleta (local, grade, parâmetro necessário antes da geração).
Conflitos com outro horário
No módulo Gestão de horários, na reorganização, como na edição de um horário de calendário, o diagnóstico confronta também o horário com os outros horários publicados nas mesmas datas e com as contas vinculadas: as que o menu Sincronização tem marcadas. Um professor, uma turma ou uma sala já ocupados em um deles criam um conflito, mesmo quando o horário atual não tem nenhuma outra aula nesse momento.
No detalhe do conflito, a aula de outro horário apresenta, após o nome da sua turma, o ícone seguido do título desse horário. Uma aula de uma conta vinculada apresenta o ícone seguido do nome dessa conta. O Omniscol reconhece a mesma turma, sala ou recurso de um horário para outro pelo seu identificador externo, caso contrário pelo nome: veja reconhecer a mesma turma de um horário para outro.
Níveis de gravidade
A mesma escala de gravidade — verde, amarelo, laranja, vermelho — colore vários pontos da edição.
Nas faixas horárias candidatas, quando você posiciona uma aula (ver Posicionamento manual). E em cada opção das listas de seleção: quando você escolhe um professor, uma sala de aula, um recurso, um grupo ou participantes para uma aula, cada entrada apresenta um ícone de calendário colorido conforme o seu nível na faixa horária visada — verde se a entidade está livre, vermelho se está ocupada — com o detalhe ao passar o cursor. Só uma indisponibilidade vermelha (ocupado, período fechado) impede a escolha; uma sala de aula pequena demais ou mal especializada continua selecionável, com aviso.
| Cor | Significado |
|---|---|
| verde | nenhum conflito — a entidade está livre (ou um recurso permanece abaixo do seu limite) |
| amarelo | incômodo leve, não bloqueante (restrição horária de prioridade média, ausência inteiramente substituída, sala de aula correta mas não ideal) |
| laranja | restrição forte (restrição horária de prioridade elevada, sala de aula preenchida até 110 % da sua capacidade, carga horária até 110 %, tempo de deslocamento entre locais curto demais, disciplinas incompatíveis, dia fechado) |
| vermelho | conflito bloqueante (reserva dupla, restrição horária obrigatória ou janela de datas imposta, sala de aula acima de 110 % da sua capacidade, ausência não coberta, alinhamento quebrado) |
No painel de diagnóstico. Cada problema listado apresenta um nível, retomado pelo filtro. O painel agrupa o laranja e o amarelo sob um único nível «importante», e acrescenta um nível «conselho» para as informações não bloqueantes:
| Nível | Sentido | Cores de faixa horária correspondentes |
|---|---|---|
| vermelho | Conflito bloqueante | vermelho |
| amarelo | Restrição não cumprida / Aviso | laranja + amarelo |
| azul | Conselho / Limite próximo | pressão de grade, divisões |
Quando a opção Bloqueio de escolhas em conflito (restrições fortes) está ativa, o Omniscol impede as escolhas que criariam uma restrição forte; caso contrário, o alerta permanece visível para que o administrador arbitre.
Excedente e pressão de grade
O Omniscol compara permanentemente as horas de aula a colocar com o número de faixas horárias abertas da grade — para cada professor (por turma e por local) e para cada turma inteira. A mensagem indica os dois valores, por exemplo «18 h / 16 h». Três patamares, conforme o preenchimento:
| Patamar | Preenchimento | Leitura |
|---|---|---|
| azul — pressão | grade preenchida a 90–100 % | os limites serão em breve atingidos; o posicionamento já está tenso |
| laranja — excedente ligeiro | 100–110 % (horas > faixas horárias até 110 %) | um horário válido será provavelmente impossível |
| vermelho — excedente forte | acima de 110 % | um horário válido será quase certamente impossível |
Este cálculo só é executado se pelo menos um local estiver configurado, e não sinaliza nada enquanto a grade permanecer abaixo de 90 %. Mede as horas requeridas em relação às faixas horárias disponíveis — a não confundir com o excesso de carga horária de um professor (horas lecionadas em relação às horas contratuais), que compartilha as mesmas cores mas continua sendo uma detecção distinta.
Todas as detecções
| Detecção | Família de filtro | Nível |
|---|---|---|
| Professor, turma ou grupo já ocupado | Conflitos | vermelho |
| Sala de aula já ocupada | Conflitos | vermelho |
| Alinhamento quebrado (grupos alinhados sem aula comum) | Conflitos | vermelho (laranja se só a sala de aula ou o recurso diferir) |
| Restrição horária não cumprida (professor, turma, grupo, sala de aula, curso, local) | Restrições horárias | obrigatória → vermelho, elevada → laranja, média → amarelo (janela de datas → sempre vermelho) |
| Sobrelotação de uma sala de aula | Capacidade | laranja até 110 % da capacidade, vermelho acima |
| Recurso em excesso | Capacidade | laranja |
| Sala de aula inadequada (capacidade, especialização, local) | Capacidade | amarelo — forçável |
| Carga horária de um professor ultrapassada | Capacidade | laranja até 110 %, vermelho acima |
| Excedente / pressão de grade | Excedente de grade | azul → laranja → vermelho (ver acima) |
| Tempo de deslocamento insuficiente entre locais (professor, turma) | Distância | laranja |
| Disciplinas incompatíveis ao mesmo tempo | Compatibilidade | laranja |
| Nenhuma sala de aula disponível entre as salas autorizadas | Sala de aula faltando | amarelo (vermelho se nenhuma) |
| Professor faltando (aula sem professor atribuído) | Professor faltando | amarelo |
| Sala de aula faltando (aula colocada sem sala de aula requerida) | Sala de aula faltando | amarelo |
| Número de aulas diferente entre grupos de uma divisão | Divisões | azul (indicativo) |
| Número de aulas diferente entre grupos alinhados | Alinhamentos | vermelho (configuração bloqueante) |
| Professor ausente na sua aula | Ausências | não coberto → vermelho, substituído → amarelo, parcial (coensino) → laranja |
| Turma ausente | Ausências | vermelho |
| Aula em um dia fechado / férias | Calendário | laranja (às vezes forçado a vermelho) |
| Configuração incompleta (local, grade, parâmetro) | — | bloqueante antes da geração |
Navegar a partir de um alerta
Cada linha do painel é clicável: a lupa conduz diretamente à aula, ao grupo ou à turma em questão — a forma mais rápida de isolar o contexto de um conflito. Para um conflito de grupos (divisão, alinhamento), o ícone mantém apenas os grupos em relação, o que faz sobressair a restrição quando o diagnóstico bruto não basta.
Filtrar o diagnóstico
O botão Filtros de diagnóstico (triângulo de aviso, no topo do painel) abre um menu para manter apenas os alertas úteis à análise em curso. O seu ícone passa a laranja enquanto um filtro permanecer ativo. Nele define-se:
- Níveis — mostrar ou ocultar o vermelho (bloqueante), o amarelo (importante / a verificar), o azul (conselho / limite próximo).
- Entidades — turmas, professores, salas de aula, recursos, grupos, e os tipos de eventos de calendário (eventos, férias, ausências).
- Níveis de turma, campus, locais — restringir a um perímetro. O campus isola uma entidade organizacional (unidade, faculdade, polo); o local refere-se ao lugar físico.
- Motivos — ativar ou desativar cada família de detecção: restrições horárias, conflitos, capacidade, distância, professor faltando, sala de aula faltando, compatibilidade, divisões, alinhamentos.
- Intervalo (horário calendário) — limitar às próximas semanas ou meses, e ocultar o passado.
- Comportamento — Bloqueio de escolhas em conflito (restrições fortes) impede ativamente os posicionamentos que criariam um conflito forte.
- Reiniciar — voltar a mostrar tudo.
Um filtro não resolve um conflito: apenas oculta o que não ajuda a análise em curso.
Resolver um conflito
As correções mais frequentes são:
- deslocar uma aula;
- mudar de professor, sala de aula ou recurso;
- ajustar uma restrição forte demais;
- corrigir uma indisponibilidade ou uma ausência digitada por engano;
- criar ou corrigir os grupos, divisões ou alinhamentos;
- acrescentar uma sala de aula compatível, uma capacidade ou uma especialização;
- bloquear uma aula que deve permanecer fixa antes de relançar uma geração.
Se a geração não encontrar uma solução completa, pode devolver um horário parcial: as aulas não posicionadas permanecem na barra de post-its das aulas a colocar. Corrija os diagnósticos prioritários, depois relance ou posicione manualmente os casos restantes.
Casos que exigem uma arbitragem
Alguns sinais correspondem a uma decisão de gestão em vez de a um erro de digitação. Exemplos:
- exame com uma sala principal e uma sala de tempo suplementar;
- capacidade declarada superior aos lugares informados quando a instituição sabe que uma parte dos inscritos não estará presente;
- sala anexa não modelada no Omniscol.
Nesses casos, é preferível modelar explicitamente a situação quando possível: multi-salas, grupos adaptados, capacidade corrigida ou evento separado. Deixar um alerta voluntário deve permanecer uma decisão conhecida da equipe, não um ruído permanente.
Procedimento
- Abra o diagnóstico do horário.
- Filtre se necessário por nível, campus, local, entidade ou tipo de problema.
- Trate primeiro os conflitos bloqueantes.
- Abra o detalhe do problema para identificar as aulas e recursos envolvidos.
- Corrija a aula, a restrição ou a modelagem.
- Relance o diagnóstico ou a geração para verificar que o problema desapareceu.