A Tarefa de Serviço é um poderoso mecanismo de integração do processo com outros sistemas. É um tipo de atividade essencialmente técnica e que deve ser utilizada somente por programadores.
Com esse objeto, é possível:
- Executar procedimentos em outros sistemas via Webservices / SOAP / WSDL, RESTful JSON, RESTful XML e SQL;
- Atualizar campos do formulário a partir de consultas Webservices / SOAP / WSDL, RESTful JSON, RESTful XML e SQL;
A utilização do recurso de Tarefa de Serviço expande em muito as capacidades de integração do produto. Num primeiro momento, esse recurso poderia ser usado simplesmente para acionar procedimentos externos, de outros sistemas (exemplo: iniciar o faturamento de um cliente no sistema financeiro). Pode, também, ser utilizado para enviar informações da execução do processo para um sistema externo (exemplo: enviar dados do requisitante do processo para o cadastro no CRM). E pode, também, ser utilizado para carregar campos do formulário com dados de outro sistema (exemplo: carregar campo do formulário indicando se o cliente possui crédito ou não, a partir de consulta ao CRM da empresa). Em todos os casos, é necessário que o sistema a ser conectado possua, também, uma camada de integração.
Seu cadastro compreende:
- Título: o título da tarefa, para identificação;
- Descrição: uma breve descrição da tarefa, para referência;
- Tipo: escolha o mecanismo de integração que será utilizado.
a. Fonte de dados: trata-se do mecanismo padrão, recomendado e oficial do sistema a partir da versão 3.6.3 . Vincula a tarefa de serviço a execução de uma fonte de dados pré-cadastrada;
b. Webservice: recurso obsoleto que permitia configurar uma conexão SOAP / WSDL diretamente na tarefa de serviço. Esse recurso não deve ser mais usado e a conexão SOAP / WSDL deve ser feita via fonte de dados;
c. Arquivo XML: recurso obsoleto que permitia configurar uma conexão a arquivo XML diretamente na tarefa de serviço. Esse recurso não deve ser mais usado e a conexão deve ser feita via fonte de dados;
4. Permitir mais de uma execução a cada instância: parâmetro que indica se esse serviço pode ser executado mais de uma vez dentro da mesma instância. Isso pode ocorrer, por exemplo, em processos que possuam loops e voltar a pontos passados do processo. Caso, por questões de segurança e integridade, o serviço deva ser executado somente uma vez, desmarque essa opção;
5. Fonte de dados: selecione aqui a fonte de dados que essa tarefa de serviço irá executar.
Após executar o serviço, é possível que você queira atualizar um ou mais campos do formulário da instância do processo com informações retornadas pelo serviço. Para isso, basta configurar a fonte de dados para que possua mapeamento de campos acessórios apontando para identificadores de campos de formulário existentes.
Por exemplo, no caso abaixo, os campos do formulário "nome", "idade", "nascimento" e "cpf" estão sendo automaticamente atualizados com informações retornadas pelo serviço.
Observe que, no caso do uso de fontes de dados através da execução de tarefas de serviços, os atributos "cod" e "txt" da fonte de dados transformada são irrelevantes e não são utilizados.
Caso os dados que você deseje atualizar estejam dentro de uma tabela multivalorada, e o retorno do seu serviço traz informações para atualizar múltiplas linhas da tabela multivalorada, será preciso indicar, dentro do mapeamento de campos acessórios, a linha correspondente da tabela multivalorada que você quer atualizar.
Para isso, adicione um novo atributo, de nome "_row", e cujo valor indica qual é a linha que será atualizada.
![](/Upload/8d940271-4e86-4304-81cf-d08359f41dc7.png)