Motor BPMS
A tela de Motor BPMs (mais conhecida como Motor DOX) lista todos os agendamentos feitos em processos BPM. É nessa tela que poderão ser consultados quais os processos que possuem agendamento para executar, qual a última data que esse agendamento foi executado, quando será sua próxima execução, e muito mais informações que podem ser visualizadas de acordo com a necessidade do usuário.
Porque é um recurso importante?
Bom, os agendamentos são usados em sua maioria em processos/atividades automáticos. Ou seja, que executam certa ação em que não há necessidade do envolvimento do usuário final, usuário do portal. Por exemplo, vamos supor que o sistema A utilize do sistema DOX porém suas informações estão todas em um banco de terceiro, como o TOTVS por exemplo.
Dado a esta particularidade, é necessário que haja uma "sincronização" de informações. Onde o processo traga lá do banco de terceiro TOTVS as informações para um banco local onde posteriormente essa informação possa ser atualizada, modificada etc. Então o sistema A criou um processo totalmente automático que busque um grande volume de informações para o sistema local.
Porém essa sincronização deve ser feita meio noite de todo dia, para que não afete os usuários que usam o sistema durante o dia. Pensando nessa necessidade, foi possível criar um AGENDAMENTO, onde o próprio sistema iria rodar o processo nos horários configurados.
O motor BPM nada mais é do que o que monitora/controla toda essa movimentação de agendamentos.
Claro que o caso acima do sistema A foi apenas um exemplo, pode ser criado vários cenários onde os agendamentos são de extrema importância. Por exemplo, neste exemplo do evento de temporizador de espera.
Para acessar a tela do Motor BPM, acesse o módulo de processo > Motor BPMS
Para alterar os campos de visualização na tela do Motor BPMS, basta clicar no menu assistente e selecionar a opção "Personalizar".
Desse modo, eles serão adicionados na coluna à direita, que é onde ficam todos os campos exibidos na tela de consulta.
Nessa tela, basta selecionar na coluna à esquerda os campos que você deseja que sejam visualizados e clicar duas vezes sobre eles. É um assistente interessante pois pode haver momentos em que alguma informação daquele agendamento é importante para análise e deve ser deixada na frente por exemplo.
Exemplo:
Assim como foi dito acima sobre processos automáticos, vamos criar um exemplo agora para melhor entendimento sobre o motor. Primeiro de tudo, sempre verificar se o micro serviço que roda o motor está ativo:
Depois de ativado, vamos para a configuração do processo. Assim como foi criado/desenvolvido o processo de "Registro de despesa" (clicando aqui), é criado um temporizador e isso adiciona um novo registro na fila do motor.
Edite o processo de "Registro de Despesa", e vá para a aba "Agendamento"
Clicando em "Novo", vamos configurar um agendamento para este procedimento. Ou seja, o motor irá iniciar uma instância de forma automática de acordo com a nossa configuração de data/horário.
Neste exemplo, criamos um agendamento de 15 em 15 minutos, para iniciar ao meio dia de 11/03/2022. Depois de 5 execuções esse agendamento irá se finalizar e não executar novamente.
Depois de finalizado a criação, clique em "Ok", salve e libere o processo. Acesse a fila do motor novamente e olhe o novo registro adicionado.
Como a primeira atividade do nosso processo é manual, o sistema irá abrir a instância e a pessoa com permissão poderá acessar para prosseguir com a colaboração de formulários/eventos. Se fosse um processo inteiramente automático, o sistema passaria por todas as atividades, executando o que foi desenvolvido, e finalizaria o processo de acordo com o fluxo.
Uma boa prática: Um tempo mínimo para as próximas execuções, use 15 de 15 minutos, pois pode causar lentidões ou "pesar" o sistema.