Histórico da Página
...
O objetivo deste guia é orientar como construir um script com a finalidade de resolver os responsáveis por uma tarefa do processo workflow e/ou gestor de processo.
Pré-requisitos
- Conhecimento da linguagem Javascript;
- Conhecimento sobre a construção de fluxos de processo Workflow Fluig;
- Conceitos sobre utilização de Datasets Fluig;
- Entendimento sobre serviços da Web, Webservices, SOAP e XML;
- Familiaridade com a ferramenta de desenvolvimento, TOTVS Developer Studio ou Eclipse;
- Plugin Fluig Designer instalado na ferramenta de desenvolvimento.
Construindo um Mecanismo Personalizado
Em algumas situações é necessário utilizar lógicas mais complexas e específicas sobre quem será(ão) o(s) responsável(is) pela execução da atividade na solicitação de processo workflow. Para isto, existe o "Mecanismo de Atribuição Customizado".
Para iniciar sua construção, deve-se, em um projeto existente, clicar na pasta mechanisms e acessar o menu Arquivo > Novo > Outros... (acessível pelas teclas de atalho CTRL+N, ou clicar com o botão direito do mouse sobre a pasta, e seguir pelo menu suspenso), expandir o grupo (pasta) Fluig, selecionar a opção Mecanismo Customizado Fluig e clicar no botão Avançar. Na tela seguinte, indicar o Código (obrigatório e não pode ser alterado depois) no campo respectivo e sua Descrição (opcional) igualmente, e, finalmente, clicar no botão Concluir.
Notainfo | ||
---|---|---|
| ||
O código para o mecanismo deve seguir a especificação de padronização conforme o documento: Raíz / VP Plataformas & Cloud / Produto / Projeto Experiencia de Uso TOTVS / Artefatos / Guia de Estilos / Experiencia #2 / 1702869 - Guia de Boas Práticas. |
...
Com isto, será criada a função básica que deve ser implementada: Exemplo de macro para bloco de código:
Bloco de código | ||
---|---|---|
| ||
function resolve(process,colleague){ var userList = null; return userList; } |
A função acima não retorna nenhum usuário. Sua execução não possibilitará escolher ninguém, por isto, esta função deve ser complementada.
A função deve retornar uma listagem, do tipo ArrayList com as matrículas dos usuários. A matrícula não é necessariamente igual ao login deste usuário. A matrícula corresponde ao valor existente no campo de mesmo nome no cadastro deste usuário e à coluna colleaguePK.colleagueId do Dataset colleague.
Nota | ||
---|---|---|
| ||
Se ocorrer qualquer erro de sintaxe ou na execução do mecanismo, este será abortado e, consequentemente, não devolverá nenhum responsável para próxima tarefa/atividade do processo. É importante que toda a implementação passe por um tratamento de erros e proteção de execução. Uma boa prática é utilizar as cláusulas try catch. |
Informações | ||
---|---|---|
| ||
Nenhuma mensagem de erro pode ser emitida ao usuário durante sua execução, pois estes mecanismos podem ser invocados sem que haja a interação com o usuário, como por exemplo, as chamadas ao webservice ECMWorkflowEngineService por meio das integrações externas. |
Assunto Primário
Explicação. Exemplo para links e anexos.
...
function resolve(process,colleague){
var userList = null;
return userList;
}