As restrições antes da pontuação
O planeamento tem em conta as competências, as zonas postais, os horários, as indisponibilidades e as distâncias dos técnicos. Algumas regras são eliminatórias: uma atribuição incompatível, sobreposta a outra marcação ou fora do raio de intervenção do técnico é recusada.
Para os candidatos restantes, as sugestões mostram uma pontuação e razões legíveis. O responsável pelo planeamento vê porque é proposto um técnico, e não apenas qual.
Atribuição automática, com condições
Uma intervenção planeada num horário completo pode ser atribuída automaticamente. A FieldFlow só escolhe o melhor candidato se a sua pontuação atingir o limiar configurado e, depois, volta a validar todas as restrições sob bloqueio antes de gravar a atribuição.
Cada execução guarda o resultado, o candidato, a pontuação, a carga, a distância, o tempo de deslocação estimado, as explicações e o autor. Se nenhum candidato for suficientemente seguro, nada é forçado: o motivo fica visível no histórico.
Pré-visualizar e depois aplicar
O responsável pelo planeamento pode preparar um lote de até 200 intervenções. A pré-visualização é guardada sem mexer no planeamento e fixa, para cada intervenção, o técnico proposto, a sua pontuação e as explicações.
A aplicação exige uma segunda chamada explícita. A proposta é recalculada e tem de continuar a ser a melhor opção; se as condições tiverem mudado entretanto, a intervenção é ignorada e é pedida uma nova pré-visualização. A aplicação de um lote é:
- transacional: o lote inteiro ou nada;
- bloqueada: dois responsáveis não podem aplicá-la ao mesmo tempo;
- idempotente: repetir o pedido não cria duplicados.
Otimizar o percurso de um dia
Para um técnico e um dia, a FieldFlow pré-visualiza um percurso de 2 a 50 intervenções já atribuídas. O motor parte do armazém, constrói uma primeira ordem de visita com a pesquisa do vizinho mais próximo e melhora-a depois com a heurística 2-opt, que inverte troços do percurso enquanto a distância total diminuir.
A duração de cada intervenção é mantida e são propostos novos horários consecutivos. O motor compara a distância com o planeamento atual, incluindo o regresso ao armazém, e indica se o percurso cabe no horário do técnico. Nada muda sem validação: a aplicação recusa um cálculo desatualizado, um conflito, uma ausência ou horários que deixaram de ser compatíveis e, depois, replaneia, avisa os clientes e publica as alterações em tempo real.
Distâncias estimadas, e assumidas como tal
Cada local tem uma latitude e uma longitude, cada técnico uma posição de partida e um raio máximo. A distância é calculada em linha reta com a fórmula de Haversine e depois majorada para estimar a deslocação. É propositadamente simples e determinístico: o mesmo planeamento dá sempre o mesmo resultado.


