Processo - Fluxo

Senhores,

Como faço para desabilitar e habilitar campos do Formulário conforme o andamento do Fluxo - Processo?

Fala, Felipe, você pode utilizar o evento EnableFields, segue exemplo:

https://tdn.totvs.com/pages/releaseview.action?pageId=270924158#EventosdeFormul%C3%A1rio-enableFields

Você pode tá pegando qual a atividade está no momento com o parâmetro WKNumState, segue doc:

https://tdn.totvs.com/pages/releaseview.action?pageId=270919174

Pode ser via evento EnableFields:


forms.setEnabled("seuCampo",false);

ou via jquery:


$("#seuCampo").attr("readonly", true);

Tome cuidado com a função setEnabled, pois de acordo com a documentação e que já presenciamos, uma vez utilizado, os dados do campo não serão salvos ao gravar.

Então utilizamos a seguinte solução:

Crie o evento displayFields e faça um append na função de pegar o numero da tarefa:


customHTML.append("<script>")


customHTML.append("function getNumState(){ return "+ getValue("WKNumState") +"} ")


customHTML.append("</script>");

ai no javascript do formulário:

$(document).ready( function() { let tarefa = getNumState(); if(tarefa != 0 && tarefa != 123) { $("#seuCampo").attr("readonly", true); }

} );

https://tdn.totvs.com/pages/releaseview.action?pageId=270924158#EventosdeFormul%C3%A1rio-enableFields