Activiti / Camunda alterar temporizador de limite com variável
Eu recebi uma pergunta especial sobre eventos de limite de timer em uma tarefa do usuário no Activiti / Camunda:
Ao iniciar o processo, defino a duração do timer com uma variável do processo e uso expressões na definição de limite para resolver a variável. O evento de limite é definido em uma tarefa do usuário.
<bpmn2:timerEventDefinition id="_TimerEventDefinition_11">
<bpmn2:timeDuration xsi:type="bpmn2:tFormalExpression">${hurry}</bpmn2:timeDuration>
</bpmn2:timerEventDefinition>
Em alguns casos, quando o cronômetro já está em execução, pode ocorrer, que o prazo final (dueDate) seja estendido porque o destinatário solicitou mais tempo. Para esse propósito, quero alterar o valor da variável do processo que define o prazo.
Por acaso, a variável já está resolvida no início do processo e configurada para o evento de limite.
Quaisquer alterações adicionais da variável não afetam a data de vencimento do cronômetro de limite porque ele é armazenado no banco de dados e não é atualizado quando o valor da variável é alterado.
Eu sei como atualizar o dueDate do elemento job através da API Java, mas quero fornecer uma abordagem genérica como defini-la com a alteração do valor da variável.
O caso de uso mais comum para estender o prazo final será quando o cronômetro de limite já estiver em execução.
Alguma idéia de como lidar com esse problema?
Todas as dicas são muito apreciadas. Cheers Chris