Durante a configuração de um Workflow, é possível definir um script (javascript) que será executado ao iniciar ou visualizar uma solicitação.
Para adicionar um script customizado em seu Workflow, navegue até a tela de edição do mesmo e clique na última barra da página Script, para expandir o campo em que deverá ser introduzido o script:
Por padrão, o CAP trabalha com a interface responsiva, portanto, as customizações deve ser realizadas no segundo campo: Script Responsivo
Manipulando elementos do CAP
O CAP possui objetos que armazenam informações das Solicitações e que podem ser consultados e manipulados utilizando JavaScript. Esses objetos são: capRequest e CAPContext.
Assim que os detalhes de uma solicitação são carregados, os objetos do CAP e os scripts customizados dos Workflows são adicionados às páginas, passando a ficar acessíveis.
Demonstrando abaixo, foi aberta a Ferramenta de Desenvolvedor do navegador e, em seguida, os detalhes de uma solicitação de exemplo. Em seguida, na aba Console, foi carregado o objeto capRequest:
Com o capRequest pode-se consultar informações da Solicitação, como:
Atuais responsáveis pela etapa;
Nome da Etapa atual;
Nome do Workflow;
Usuário solicitante;
Número da Solicitação;
Tempo de SLA configurado;
Outros.
Este objeto é mais utilizado para validação de regras, criação de alertas, execução condicional de etapas etc.
Abaixo está outro exemplo, também realizado na aba Console da Ferramenta de Desenvolvedor, foi carregado o objeto CAPContext:
A principal característica do CAPContext é a possibilidade de consulta e manipulação dos campos de uma solicitação.
Para verificar o conjunto de campos de uma solicitação, utilize o CAPContext.attributes:
Exemplo: O CAPContext pode ser utilizado para a exibição condicional de um campo!
Supondo que o um Workflow da área financeira só deva exibir um campo do tipo anexo "Comprovante", caso o usuário informe que o tipo de documento é "Boleto". Neste cenário simplificado, o script customizado ficaria da seguinte forma:
CAPContext.attributes.tipoDeDocumento.control.change(function () {
if (CAPContext.attributes.tipoDeDocumento.control.val() == "Boleto") {
CAPContext.attributes.comprovante.row.show();
} else {
CAPContext.attributes.comprovante.row.hide();
};
});
Recomendamos que dúvidas mais profundas sobre este tópico sejam direcionadas ao nosso canal de Suporte ao CAP.