Pular para o conteúdo principal

Configurando tipos de tarefas

Quando um fluxo de processo é desenhado, e uma tarefa é definida como Tarefa de Usuário ou Tarefa de Serviço, algumas opções que possuem integração com outros sistemas da Betha podem ser configuradas no menu lateral direito.

tarefas

Tarefas de Usuário

Para as Tarefas de Usuário, duas opções se integram com nossos sistemas e podem ser configuradas no menu lateral direito, Atribuições e Formulários.

tarefas

Na opção Atribuições o usuário pode configurar o responsável por aquela etapa, os grupos e usuários participantes. Dessa forma, quando o processo estiver tramitando no sistema Conecta, automaticamente as etapas serão designadas para usuários pré-definidos no desenho do processo. O sistema BPM possui integração com o sistema Conecta, logo, as opções que estarão disponíveis para a escolha dentro das opções de responsável, grupos e participantes serão aqueles já configurados no Conecta na mesma entidade. Para saber como configurar grupos no Conecta, clique aqui.

LEMBRE-SE

Os grupos e usuários participantes de uma tarefa são aqueles que podem visualizá-la, já o responsável é aquele que executa a tarefa.

Na opção Formulários, o usuário pode selecionar através de um menu suspenso um dos formulários criados dentro da entidade e a sua versão. Caso o mesmo formulário seja designado a mais de uma etapa do processo, entende-se que há uma continuidade no preenchimento e configuração do mesmo. Dessa forma, o formulário que, por exemplo, apareceu na primeira etapa do processo e foi preenchido, na segunda etapa poderá ter um documento anexado a ele, dependendo do objetivo do processo. Caso não seja selecionado um formulário, uma tarefa padrão pré-definida irá aparecer no Conecta apenas com a opção de concluir.

Tarefas de Serviços

As tarefas de serviço executam automaticamente um serviço ou função sem intervenção humana, como chamadas a APIs, integração com sistemas ou execução de operações no backend, como a execução de Scripts e Relatórios. É usada para automação de processos.

No BPM, as tarefas externas oferecem um padrão de arquitetura robusto para orquestrar serviços e automatizar processos de negócios de forma desacoplada. Diferente da abordagem tradicional onde o motor de processo "empurra" o trabalho para os serviços, com as tarefas externas, é o "worker" (trabalhador) externo que "puxa" as tarefas do BPM.

Scripts

O script pode ser executando usando uma Service Task do tipo External.

Parâmetros:

Nome do tópico: workerScript *obrigatório

Nome do ParâmetroDescriçãoTipo de DadoValor Padrão
_identificadorScript_*Identificador único do script. Este campo é obrigatório.StringNenhum
_visibilidadeExecucaoPublica_Controla se o registro de execução deste script será visível publicamente no sistema.Booleanotrue
_enviarEmailFinalizar_Define se um e-mail de notificação deve ser enviado ao final da execução do script.Booleanofalse
_emailsParaNotificar_Lista de endereços de e-mail para notificar. Só é utilizado se _enviarEmailFinalizar_ for true.Lista de Strings
_ignorarNotificacao_Define se as notificações padrão do sistema (que não sejam por e-mail) devem ser suprimidas.Booleanotrue
_parametros_Objeto chave-valor contendo os parâmetros específicos que serão passados para o script.Mapa/Objeto{} (objeto vazio)
_sistemaId_Sistema onde o script está implantado.Número (Long)Sistema do processo
_entidadeId_Entidade onde o script está implantado.Número (Long)Entidade do processo
_databaseId_Database onde o script está implantado.Número (Long)Database do processo

Resultado:

Quando o resultado do script for um arquivo zip contendo arquivos json dentro, os valores serão lidos e enviados como resultado da tarefa, desde que o tamanho total não ultrapasse 10Kb de dados.

Nome do ParâmetroDescriçãoTipo de Dado
protocoloProtocolo de execução do script.String
urlResultadoUrl para o download do resultado da execução do script. Pode ser vazio quando o script não gerou nenhum arquivo.String
resultadoObjeto chave-valor contendo os valores extraidos do resultado. Em caso de erro na extração, a chave erro com o motivo será informadaMapa/Objeto

Falhas:

ChaveDescrição
SCRIPT_ERRORQuando ocorreu um erro não transiente na execução do script

Relatórios

O relatório pode ser executando usando uma Service Task do tipo External.

Nome do tópico: workerRelatorio

Parâmetros:

Nome do ParâmetroDescriçãoTipo de DadoValor Padrão
_identificadorRelatorio_Identificador único do relatório. Este campo é obrigatório.StringNenhum
_natureza_Define a natureza do relatório.StringNenhum
_naturezaQualificadora_Define a natureza qualificadora do relatório..StringNenhum
_omitirNotificacao_Se true, o worker não enviará nenhuma notificação ao sistema ou por e-mail após gerar o relatório.Booleanotrue
_visibilidadeExecucaoPublica_Controla se o registro da geração deste relatório será visível publicamente no sistema.Booleanotrue
_formatoExportacao_Define o formato do arquivo de saída do relatório. Os valores podem ser PDF, DOCX, ODT, ODS, XLS, CSV, HTML, TXT, XML.String (Enum)"PDF"
_parametros_Objeto chave-valor contendo os parâmetros específicos para o relatório.Mapa/ObjetoNenhum
_sistemaId_Sistema onde o relatório está implantado.Número (Long)Sistema do processo
_entidadeId_Entidade onde o relatório está implantado.Número (Long)Entidade do processo
_databaseId_Database onde o relatório está implantado.Número (Long)Database do processo

Resultado:

Nome do ParâmetroDescriçãoTipo de Dado
protocoloProtocolo de execução do relatório.String
identificadorPublicoIdentificador publico do relatório.String
tituloRelatorioTitulo do relatório.String
tipoResultadoTipo do resultado do relatório. Pode ser SUCESSO ou ERRO.String
formatoExportacaoFormato da exportação.String
marcadoresMarcadores do relatório.Mapa/String
tamanhoResultadoTamanho do arquivo gerado.Mapa/String
urlResultadoUrl para o download do resultado da execução do relatório.String

Falhas:

ChaveDescrição
RELATORIO_ERRORQuando ocorreu um erro não transiente na execução do relatório

Assinaturas

No processo digital é possível criar um processo de assinaturas por meio de uma Service Task do tipo External.

Nome do tópico: workerAssinador

Processo padrão de Assinaturas

Neste processo, a Service Task irá instanciar um processo de assinaturas, aguardar todas as assinaturas serem completas e finalizar a tarefa.

Parâmetros:

Nome do ParâmetroDescriçãoTipo de DadoValor Padrão
_sistemaId_ID do sistema onde o processo de assinatura será executado.Número (Long)Sistema do processo
_entidadeId_ID da entidade onde o processo de assinatura será executado.Número (Long)Entidade do processo
_databaseId_ID do database onde o processo de assinatura será executado.Número (Long)Database do processo
_urlPreAssinada_URL para download do arquivo a ser assinado.StringNenhum
_nome_Nome do documento a ser assinado.StringNenhum
_secoesAssinaturas_Lista de usuários que devem assinar o documento, separados por vírgula. Ex: user1,user2.Lista de StringsNenhum
_tipo_Tipo do arquivo a ser assinado. Tipos suportados: PDF, XML, TXT, P7S.String (Enum)Nenhum
_certificado_Certificado do usuário para realizar assinatura automaticamente. Este parâmetro é utilizado apenas se houver uma única seção de assinatura.StringNenhum
_expiraEm_Data para expiração do documento.Data/HoraNenhum
_notificarViaEmail_Indica se os usuários devem ser notificados por e-mail sobre o processo de assinatura.Booleanofalse
_publico_Indica se o documento será público no ambiente de verificação.Booleanofalse
_bloqueiaCertificadoCorporativo_Bloqueia assinaturas realizadas com certificado corporativo.Booleanofalse
_permiteCertificadoAvancadoParaUsuarioVerificado_Permite somente assinaturas com certificados avançados de usuários verificados.Booleanofalse
_permiteAdicionarNovosAssinantes_Permite incluir novos assinantes durante o processo (Conclusão manual).Booleanofalse
_assinarComCampoInvisivel_Indica se as plotagens serão realizadas no arquivo de forma invisível.Booleanofalse

Resultado:

Na conclusão do processo de assinaturas, o protocolo e a URL para download do arquivo assinado serão incluídos nas variáveis de saída. A tarefa será concluída com êxito apenas se o status final for ASSINADO.

Nome do ParâmetroDescriçãoTipo de Dado
protocoloProtocolo do processo de assinaturas.String
situacaoSituação da assinatura: ASSINADO, PROBLEMA_ASSINATURA, ASSINATURA_RECUSADA, EXPIRADO, CANCELADOString
urlDownloadArquivoAssinadoURL para download do arquivo assinado.String

Falhas:

ChaveDescrição
ASSINADOR_ERRORQuando ocorreu um erro não transiente na execução do processo de assinatura.

Processo controlado por Processos Digitais

Neste processo, a Service Task irá instanciar um processo de assinaturas e confirmar sua criação. O documento criado não possuirá seções de assinaturas predefinidas, apenas uma quantidade de seções que aguardarão por assinaturas de qualquer usuário. O processo não será tramitado nem concluído automaticamente, exigindo conclusão manual ou via Service Task específica.

Para a realização das assinaturas, deverão ser criadas User Tasks atribuídas aos usuários responsáveis, referenciando o protocolo de assinaturas gerado na Service Task de criação. A conclusão final do processo é feita por outra Service Task.

1. Modelo para Criação do Processo de Assinatura

Utiliza uma Service Task do tipo External para iniciar o processo de assinatura.

Nome do tópico: workerAssinador

Parâmetros:

Nome do ParâmetroDescriçãoTipo de DadoValor Padrão
_sistemaId_ID do sistema onde o processo de assinatura será executado.Número (Long)Sistema do processo
_entidadeId_ID da entidade onde o processo de assinatura será executado.Número (Long)Entidade do processo
_databaseId_ID do database onde o processo de assinatura será executado.Número (Long)Database do processo
_urlPreAssinada_URL para download do arquivo a ser assinado.StringNenhum
_nome_Nome do documento a ser assinado.StringNenhum
_tipo_Tipo do arquivo a ser assinado. Tipos suportados: PDF, XML, TXT, P7S.String (Enum)Nenhum
_processoDigital_Indica que o documento será controlado por processos digitais.Booleanofalse
_quantidadeSecoes_Quantidade de seções para serem assinadas.Número (Integer)Nenhum

Resultado:

A confirmação da criação do documento finalizará a tarefa.

Nome do ParâmetroDescriçãoTipo de Dado
protocoloProtocolo do processo de assinaturas recém-criado.String

Falhas:

ChaveDescrição
ASSINADOR_ERRORQuando ocorreu um erro não transiente na criação do processo de assinatura.

2. Modelo para Realização de Assinaturas (User Task)

Para que uma User Task seja utilizada para realização de assinaturas, ela deve conter uma Propriedade de extensão específica.

Extension Properties da User Task:

Nome da PropriedadeDescriçãoTipo de Dado
_protocoloAssinatura_Protocolo de assinaturas para exibição do documento e registro da assinatura.String

Observação: Para capturar o protocolo de uma tarefa anterior, ele deve ser adicionado como uma variável de saída (Outputs) na tarefa de criação, tornando-o globalmente disponível.


3. Modelo para Conclusão do Processo de Assinaturas

Utiliza uma Service Task do tipo External com um tópico diferente para finalizar o processo de assinatura.

Nome do tópico: workerAssinadorConclusao

Parâmetros:

Nome do ParâmetroDescriçãoTipo de DadoValor Padrão
_sistemaId_ID do sistema onde o processo de conclusão será executado.Número (Long)Sistema do processo
_entidadeId_ID da entidade onde o processo de conclusão será executado.Número (Long)Entidade do processo
_databaseId_ID do database onde o processo de conclusão será executado.Número (Long)Database do processo
_protocolo_Protocolo de assinaturas a ser concluído.StringNenhum

Observação: Para capturar o protocolo de uma tarefa anterior, ele deve ser adicionado como uma variável de saída (Outputs) na tarefa de criação, tornando-o globalmente disponível.

Resultado:

Na conclusão do processo de assinaturas, o protocolo e a URL para download do arquivo assinado serão incluídos nas variáveis de saída, independentemente do status final de conclusão.

Nome do ParâmetroDescriçãoTipo de Dado
protocoloProtocolo do processo de assinaturas.String
situacaoSituação da assinatura: ASSINADO, PROBLEMA_ASSINATURA, ASSINATURA_RECUSADA, EXPIRADO, CANCELADOString
urlDownloadArquivoAssinadoURL para download do arquivo assinado.String

Falhas:

ChaveDescrição
ASSINADOR_ERRORQuando ocorreu um erro não transiente na conclusão do processo de assinatura.

Captura de Falhas

O processo de assinaturas pode gerar falhas que devem ser tratadas no modelo BPMN. Algumas falhas são lançadas após um número de tentativas (ex: falha de comunicação), enquanto outras ocorrem devido a erros de configuração ou durante a conclusão do documento com status diferentes de ASSINADO.

Para tratar uma falha, pode-se usar o Error boundary Event preenchendo o campo Code variable.

Falhas Relacionadas à Conclusão do Processo de Assinaturas:

ChaveDescrição
PROBLEMA_ASSINATURAProblema genérico durante as assinaturas.
ASSINATURA_RECUSADAUm dos assinantes recusou a assinatura.
EXPIRADOO prazo de conclusão do documento foi expirado.
CANCELADOO remetente cancelou o processo de assinatura.

Customizadas

TODO: Documentar o processo para a implementação de uma tarefa externa.