Anular evento ValidateForm em caso de "Transferir" solicitação

Pessoal, boa tarde!

Existe a opção de "Transferir" a solicitação para um outro usuário do grupo/papel e/ou "Salvar" a solicitação apenas. Em ambos os casos, o evento ValidateForm é executado.

Existe alguma forma de "anular" essa validação nesses casos (validar, de fato, somente caso o usuário clique em "Enviar")?

Obrigada.

Renata, bom dia. fiz algo parecido e no validateForm fiz “if (getValue(“WKNextState”) == 11){ então valido }”. se a próxima atividade for x, é pq avancou, ai valido.

Otto, boa tarde! Aqui não funcionou… Ele sempre retorna uma próxima atividade! Gostaria de verificar SOMENTE caso o usuário clique em “Enviar”. Obrigada de qualquer forma! =)

Renata,

Você pode usar também a nova função de validação beforeSendValidate


var beforeSendValidate = (numState, nextState) =>{
    console.log("-beforeSendValidate-");
    console.log("numState: " + numState);
    console.log("nextState: " + nextState);
    throw("Erro Xyz");
}

Essa função executa somente quando o usuário clica em enviar, onde o processo sai da atividade atual e vai para a próxima. Documentação:

Before Send Validate

O legal dessa função é que ela executa somente em processos e após o usuário ter escolhido a atividade destino e o usuário que irá receber ela.

Pedro, boa tarde! tentei utilizar essa nova função, porém foi retornado o seguinte erro no console do navegador:

Uncaught TypeError: b.replace is not a function

Sabe o que pode ser?

Obrigada!

Renata, consegue colocar todo o log do console?
Eu reparei que declarei a função de forma errada… tenta com a nova edição para ver se vai…

Coloque a função que retorna o número da próxima atividade

EXEMPLO: ATIVIDADE ATUAL = 5 | PROXIMA ATIVIDADE = 9



function validateForm(form){

    var activity = getValue('WKNumState');
    var next_activity = getValue("WKNextState");

    if (activity == 5 && next_activity == 9) {

        if (form.getValue('campoValidar') == '') {

            throw (" O campo 'campoValidar' não foi preenchido\n");

        }

    }
}

Dessa maneira só será validado ao clicar em ENVIAR.