Mês: janeiro 2020

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.

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.

Foi encontrado uma solução alternativa que é customizar um mecanismo de atribuição 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;

}

}

As dificuldades de integrar o Fluig com RM em três camadas.

O RM é um ERP robusto que permite que seja configurado em diversas camadas. Seja ela cliente, aplicação e banco de dados.

Links para consulta:
Como funciona as camadas do RM?
https://tdn.totvs.com/pages/releaseview.action?pageId=236432384
Como configurar o RM em 3 camadas: https://tdn.totvs.com/pages/releaseview.action?pageId=273982231

O problema de se utilizar 3 camadas no RM com propósito das integrações do FLUIG está justamente nas falhas do próprio RM em finalizar os processos do COCKPIT.

A execução, quando em 3 camadas, exige que pelo menos um servidor de aplicação (Tela de Ambiente > Cockpit) esteja configurado e rodando corretamente, desta forma os processos do Fluig irá executar as rotinas de Integração e o RM irá recebê-las, entretanto ficará em fila de execução e finalizará por TIMEOUT pelo RM. Ainda se a codificação da integração não for corretamente tratada o processo poderá ter falhas, já que será continuado dentro do Fluig porém sem as devidas informações.

Além do problema do COCKPIT parar sem aparentemente motivo é necessário realizar duas configurações: Uma é configurar pastas temporárias compartilhadas com permissão administrativa e a outra é configurar impressora padrão. Estas configurações deixam a solução mais complexa e pode deixar de funcionar caso haja algum problema de infra, como por exemplo se a senha que inicia os serviços expiraram.

Concluo que não vejo outra alternativa – até a data de hoje se não a de utilizar uma instalação em duas camadas exclusiva para esta integração devido a maior confiabilidade de funcionamento, já que exige apenas a execução do serviço RM.HOST.