Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

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
titleObservaçãoNota

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
languagejavajavascript
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
titleAtenção

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
titleNota

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;

 

}