FLUIG - Como direcionar a atividade para o mesmo usuário solicitante.

FLUIG - Como direcionar a atividade para o mesmo usuário solicitante.

Às vezes é necessário desenhar no Fluig processos em que as atividades de decisão apontem para atividades anteriormente executadas.

Entre em contato e faça um orçamento.

Neste tipo de configuração o sistema fluig (testado na 1.6.5) não permite o dono da atividade do processo enviar a atividade para ele mesmo. Proponho duas soluções para este problema, a primeira delas é quando será definido o mesmo usuário então utilizaremos o último executor da atividade anterior para ser o responsável por ela novamente. Caso a atribuição não seja de forma automática e sim através de uma lista de usuários, então será necessário criar um mecanismo de atribuição, pois o sistema não listará o usuário que estiver acessando no momento.

Último Executor da Atividade.

Se o caminho escolhido pendente SEMPRE direcionar para o usuário solicitante, então poderá utilizar o recurso de atribuição por execução da atividade. Vá nos mecanismos de atribuição da decisão, que contemplará o caminho Pendente e configure como: Atribuição por executor da atividade e clica em configurar, que irá abrir uma janela de configuração. Escolha a opção ‘O último executor’ e pronto.

Mecanismo de Customização.

Esta solução se baseia em criar um mecanismo de atribuição customizado que irá listar todos os usuários do sistema, de forma que ao configurar a atividade ‘DECISÃO’ com este mecanismo o sistema listará todos usuários.

O material para criação de mecanismo de atribuição customizado pode ser encontrado no link: https://tdn.totvs.com/pages/releaseview.action?pageId=142804157

function resolve(process, colleague) {
try {
    var userList = new java.util.ArrayList();
    var usuarioView = DatasetFactory.getDataset("colleague", null, null, null);

    for (var i = 0; i < usuarioView.values.length; i++) {
        userList.add(usuarioView.getValue(i, "login"));

    }

} catch (e) {
    log.info(e);
    log.error(e);
    throw "Erro: " + e;
} finally {
    return userList;

}
}