No BPA os componentes de processo representam os elementos do BPMN, todos os componentes possuem uma finalidade e funcionalidade específica para atender todos os cenários do seu fluxo. Esses componentes são separados em sete tipos:
Os componentes disponíveis no tipo "Atividades" possuem a finalidade de atender todos os cenários do seu fluxo que é necessário a realização de uma atividade de pessoa ou sistema.

Utilize o componente "Tarefa do Usuário" em cenários que o fluxo necessita da interação de usuários. Essas interações são realizadas através dos formulários exibidos nas atividades do Inbox Web ou Inbox APP.
Saiba tudo sobre as atividades do Inbox Web ou Inbox APP clicando aqui.
O componente "Tarefa do Usuário" é representado pela seguinte figura:

Para abrir seu modal de configuração, clique no ícone
como no exemplo a seguir:


Na aba "Principal" são disponibilizados os campos de configuração do componente, esses campos são:
É possível configurar um limite de tempo para a atividade ser respondida, caso esse limite seja expirado, o fluxo irá seguir e no Inbox o status da atividade será alterado para expirado, dessa forma não permitindo mais o usuário ou grupo respondê-la.
Além disso, no objeto Result deste componente, é disponível uma propriedade do tipo booleana chamada "Expired", com o objetivo de permitir o tratamento dessa expiração nos eventos deste componente e também nos próximos passos do fluxo.

Saiba como utilizar corretamente a Configuração de limite de tempo, clicando aqui.
Este campo é obrigatório e define o formulário que será exibido na atividade do Inbox.
Na atividade o formulário escolhido pode exibir informações do BO (Business Object) que percorreu por todos os passos anteriores do fluxo. Além disso, caso a atividade seja respondida as propriedades do formulário, com os valores inseridos pelo usuário na resposta, se tornaram propriedades do objeto Result, dessa forma permitindo a utilização desses valores de resposta nos eventos deste componente e também nos próximos passos do fluxo.

Saiba tudo sobre os Formulários clicando aqui.
Esses campos definem o usuário e/ou grupo de usuário que receberá a atividade no Inbox. Ambos os campos podem ser definidos através de um valor ou uma expressão.
Caso utilize valor o campo será uma lista de opções(combobox), onde será listado todos os usuários e grupos de usuários ativos no Beew4y.


Caso utilize expressão o campo será um campo de texto comum e neste campo deve ser inserido uma expressão escrita em c#. A expressão inserida deve resultar sempre o código único do usuário e/ou grupo que receberá a atividade.


Tome cuidado, caso a expressão inserida não resulte em um código único valido, ocorrerá um erro na execução da instância e o fluxo não seguirá para o próximo passo até a correção ser realizada.
Saiba mais sobre as opções valor e expressão, clicando aqui.
Além disso, no objeto Result deste componente, é disponível uma propriedade chamada "OwnerUser", essa propriedade contém informações do usuário e/ou grupo que respondeu o formulário. Essas informações podem ser utilizadas nos eventos deste componente e também nos próximos passos do fluxo.
Saiba tudo sobre os Usuários, clicando aqui.
Saiba tudo sobre os Grupos de Usuários, clicando aqui.
Esses campos definem o título e subtítulo da atividade no Inbox, no caso o título é obrigatório e o subtítulo é opcional.
Em ambos os campos é possível inserir um valor ou uma expressão.

Saiba mais sobre as opções valor e expressão, clicando aqui.
Este componente possui todos os tipos de evento, acesse a aba "Eventos" caso queira escrever um script de programação para algum evento.

Saiba tudo sobre os Eventos clicando aqui.
Após concluir a configuração do componente, clique no botão "Salvar".

Saiba mais sobre o objeto Result clicando aqui.
Saiba mais sobre o BO (Business Object) clicando aqui.
Utilize o componente "Script" em cenários que o fluxo precisa executar um script de programação para atender regras de negócio específicas, como por exemplo, realizar requisições em uma API externa.
O script deve ser escrito na sintaxe da linguagem C#, sendo possível utilizar de acordo com sua necessidade, todos os pacotes disponíveis no gerenciador de bibliotecas "NuGet".
O .NET Framework é uma iniciativa da empresa Microsoft, que visa uma plataforma única para desenvolvimento e execução de sistemas e aplicações. Uma das linguagens suportadas pelo .Net é a C#, uma linguagem de programação poderosa, multiparadigma, de tipagem forte. Saiba mais.
NuGet é o gerenciador de bibliotecas “oficial” da plataforma .NET. Saiba mais.
O componente "Script" é representado pela seguinte figura:

Para abrir seu modal de configuração, clique no ícone
como no exemplo a seguir:


Na parte superior do modal ficam localizadas as referências dos pacotes NuGet adicionados. Caso não tenha nenhum pacote adicionado, para adicionar clique no botão "Adicionar".

Ao clicar, será aberto o gerenciador em tela e do lado esquerdo serão listados todos pacotes disponíveis. Caso clique sobre um pacote, os detalhes deste pacote serão exibidos ao lado esquerdo e além dos detalhes é disponibilizado também as versões do pacote e o botão para adicioná-lo no script.

Após adicionar algum pacote, no modal do componente será exibido a referência adicionada e ao lado é disponibilizado um ícone de lixeira caso queira removê-la.

Abaixo das referências ficam localizados os campos "Using" e "Script", são nesses campos que deve ser escrito o script que será executado.

O script pode ser simples ou complexo de acordo com sua necessidade e além disso nele é possível utilizar e manipular os objetos BO (Business Object) e Result.
Saiba mais sobre o BO (Business Object) clicando aqui.
Saiba mais sobre o objeto Result clicando aqui.
Após concluir a implementação do script, clique no botão "Salvar".

Ao utilizar este componente é obrigatório escrever um script.
O Beew4y possui uma tabela de dados compartilhada para trocas de informações entre os módulos BPA e RPA, essa tabela chamamos de Dicionário.
Utilize o componente "Tarefa de Dicionário" em cenários que o fluxo possui a necessidade de armazenar dados no dicionário ou obter dados armazenados no dicionário. Este componente é representado pela seguinte figura:

Para abrir o modal de configuração deste componente, clique no ícone
como no exemplo a seguir:


Os dados do dicionário possuem dois campos de identificação:
1 - Chave
A chave é o campo de identificação primário do dado e todos dados do dicionário conterá uma chave relacionada.
2 - Grupo
O grupo é o campo de identificação secundário do dado e possui a finalidade de diferenciar dados diferentes que possuem a mesma chave, ou seja, não são todos os dados que possuem um grupo relacionado.
Para adicionar ou obter dados, esses dois campos serão habilitados na configuração do componente e em ambos os campos é possível inserir um valor ou uma expressão.

Saiba mais sobre as opções valor e expressão, clicando aqui.
Para adicionar dados no dicionário, no modal de configuração selecione a opção "Adicionar".
Ao fazer isso, além dos campos "Grupo" e "Chave", será habilitado o campo "Valor", neste campo deve ser inserido através de um valor ou expressão o dado que será armazenado no dicionário.

No exemplo a seguir, o componente está configurado para armazenar no dicionário o resultado da expressão "result.exemplo" e esse dado adicionado contém a relação com o grupo "treinamento" e a chave "exemploDicionario".

Após o componente ser executado em uma instância, o dado será armazenado no dicionário e poderá ser obtido através da chave e grupo para utilização em outros processos ou em uma tarefa do RPA.
Caso seja adicionado no dicionário um valor com chave e grupo já existente, não será criado outro registro no dicionário e sim atualizado o registro existente.
Para obter um dado do dicionário, no modal de configuração selecione a opção "Obter valor".
Ao fazer isso, além dos campos "Grupo" e "Chave", será habilitado o campo "bo Campo", neste campo deve ser informado a propriedade do objeto BO (Business Object) que será inserido o valor obtido do dicionário.

No exemplo a seguir, o componente está configurado para inserir na propriedade "exemplo" do objeto BO (Business Object), o valor do dado que contém a relação com o grupo "treinamento" e a chave "exemploDicionario".

Após o componente ser executado em uma instância, o dado será inserido na propriedade do BO e poderá ser utilizado no fluxo de acordo com sua necessidade. Vale lembrar que o dado obtido, pode ter sido adicionado por um fluxo paralelo ou uma por uma tarefa do RPA.
Saiba mais sobre o BO (Business Object) clicando aqui.
Utilize o componente "Tarefa RPA" em cenários que o fluxo precisa executar uma tarefa automatizada do módulo RPA.
Saiba tudo sobre o módulo de RPA da plataforma Beew4y clicando aqui.
O componente "Tarefa RPA" é representado pela seguinte figura:

Para abrir o modal de configuração deste componente, clique no ícone
como no exemplo a seguir:


Na aba "Principal" são disponibilizados os campos de configuração do componente, esses campos são:
É possível configurar um limite de tempo para a execução da tarefa ser concluída.

Saiba como utilizar corretamente a Configuração de limite de tempo, clicando aqui.
Caso esse limite seja expirado, pode ocorrer dois possíveis cenários:
1 - Expirar o limite de tempo com a tarefa executando ou em pausa.
A ação realizada nesse cenário é definida por uma configuração adicional do limite de tempo que é habilitada somente no componente "Tarefa RPA". Na configuração são disponíveis duas opções:
Marcando essa opção, mesmo com o tempo limite expirado, a execução da tarefa será concluída.
Marcando essa opção, a tarefa será parada e o fluxo irá seguir.
colocar aqui uma img da configuração
2 - Expirar o limite de tempo com a tarefa na fila de execuções.
Neste cenário o fluxo irá seguir e tarefa será removida da fila de execuções.
Em ambos os cenários, no objeto Result deste componente, é disponível uma propriedade do tipo booleana chamada "Expired", com o objetivo de permitir o tratamento dessa expiração nos eventos deste componente e também nos próximos passos do fluxo.
Saiba mais sobre o objeto Result clicando aqui.
Este campo é obrigatório e define a tarefa automatizada que será executada no RPA.

Saiba tudo sobre as tarefas automatizadas do módulo RPA clicando aqui.
Este campo é opcional e define uma estação específica para executar a tarefa configurada.

Caso não seja selecionado nenhuma estação, a tarefa será executada na primeira estação que estiver disponível no momento da execução. Além disso, pode acontecer situações em que o campo estação não é habilitado no modal, caso isso aconteça, é provável que a tarefa já tenha uma estação específica configurada em seu cadastro.
Saiba tudo sobre as estações do módulo RPA clicando aqui.
Este componente possui todos os tipos de evento, acesse a aba "Eventos" caso queira escrever um script de programação para algum evento.

Saiba tudo sobre os Eventos clicando aqui.
Após concluir a configuração do componente, clique no botão "Salvar".

Dica: No objeto Result deste componente, também é disponível uma propriedade do tipo booleana chamada "Success", utilize essa propriedade para tratar nos eventos do componente ou nos próximos passos do fluxo, se a tarefa executada foi concluída com sucesso.
Utilize os plugins disponíveis na plataforma, em cenários que o fluxo precisa realizar atividades específicas. No fluxo é possível utilizar os plugins oficiais do Beew4y e também caso necessário, você pode criar e adicionar novos plugins.
Para organização, os plugins são separados em quatros tipos e cada tipo é representado por um componente:

Saiba tudo sobre os Plugins clicando aqui.
Nos quatros tipos, a configuração do componente é realizada da mesma forma. Para abrir o modal de configuração, você deve clicar no ícone
como no exemplo a seguir:


Na aba "Principal" selecione e configure o plugin que será executado no fluxo. Clique no campo disponível para listar todos os plugins ativos do tipo que você está configurando e em seguida localize e selecione o plugin que será executado no fluxo.

Ao selecionar será habilitado no modal as propriedades do plugin.

É exibido a descrição do plugin selecionado.

São habilitados todos campos de entrada do plugin.

Em todos os campos é possível inserir um valor ou uma expressão.

Saiba mais sobre as opções valor e expressão clicando aqui.
É exibido todas as propriedades de saída do plugin. Ao terminar a execução do plugin, essas propriedades de saída se tornaram as propriedades do objeto "Result", dessa forma permitindo a utilização desses valores de saída no evento OnResult e também nos próximos passos do fluxo.

Saiba mais sobre o objeto Result clicando aqui.
Os componentes possuem o evento OnResult, acesse aba "Evento OnResult" caso queira escrever um script de programação que será executado após o processamento do passo.

Saiba tudo sobre o Evento OnResult clicando aqui.
Após concluir a configuração do componente, clique no botão "Salvar".

Os componentes disponíveis no tipo "Eventos de Início" possuem a finalidade de atender todos os possíveis cenários de início do seu fluxo.

É necessário que todos os fluxos de processo tenha no máximo um evento de início.
Utilize o componente "Início Manual" em cenários que o fluxo deve ser iniciado apenas manualmente através da plataforma. Este componente é representado pela seguinte figura:

Para iniciar uma instância manualmente, clique sobre o botão "Iniciar" disponível na tela de edição do processo.

Após clicar, será aberto um modal em tela com dois campos:
1 - Nome da Execução
Este campo é opcional e define o nome da execução(instância) que será iniciada. Caso não informe nada no campo, como nome da execução será exibido o nome do processo.
2 - Json
Este campo define as propriedades que o objeto BO (Business Object) terá ao iniciar a instância. O JSON deve ser válido, podendo vazio ou preenchido.
Saiba mais sobre o BO (Business Object) clicando aqui.
Após preencher ou não os campos, clique sobre o botão "Executar" e a instância será iniciada.

Para o iniciar uma instância o processo deve estar ativo e publicado pelo menos uma vez.
Utilize o componente "Início por Mensagem" em cenários que o fluxo deve ser iniciado apenas externamente através da API do Beew4y. Este componente é representado pela seguinte figura:

Para iniciar uma instância através da nossa API, utilize a operação chamada "Start".
Está operação utiliza o protocolo de comunicação HTTPS com serialização dos objetos em formato JSON e seu EndPoint é "{{urlServer}}/api/process/start".
Em {{urlServer}} deve ser informado o domínio de sua plataforma Beew4y.
Utilizamos o padrão JWT para autenticação das operações, portando no header da requisição deve ser informado o parâmetro "Authorization" com o valor "Bearer <token>", sendo que o token deve ser de um usuário que possui permissão para processos. Por exemplo:
Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJjNTMzMjFjOS00MDJiLTQ3NDItOTg3MC0xNmRiZmUasdySWQiOiIxNzAiLCJUeXBlIjoiMCIsIk1vZGUiOiIwIiwiVXNlcm5hbWUiOiJasdamVubyIsImh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vd3MvMjAwOC8wNi9pZGVudGl0eS9jbGFpbXMvcm9sZSI6IkFkbWluaXN0cmF0b3IifQ.tRewWO6XI_BNhEt3x501R8K8ZwBI3vaU8BCQ2vDMtdEi
Utilizamos para esse parâmetro o padrão Bearer Authentication. Saiba mais.
Saiba mais sobre as permissões de usuário clicando aqui.
No body da requisição deve ser enviado os seguintes parâmetro:
{
"uniqueCode": "ExemploTreinamento",
"executionName": "Nome da execução",
"json": "{\"exemplo\": \"objeto bo\"}"
}
Está propriedade é obrigatória e nela deve ser informado o código único do processo que será iniciado.
Está propriedade é opcional e ela define o nome da execução(instância) que será iniciada. Caso não informe, como nome da execução será exibido o nome do processo.
Está propriedade é opcional e define o JSON que será convertido nas propriedades do objeto BO (Business Object).
Saiba mais sobre o BO (Business Object) clicando aqui.
Os possíveis retornos são:
Requisição realizada com sucesso e processo iniciado.
Requisição inválida, nesse caso o processo não será iniciado e será retornada uma string com o motivo do erro.
Requisição não autorizada, nesse caso o processo não será iniciado e é provável que o token utilizado no parâmetro "Authorization" não seja válido.
Para o iniciar uma instância o processo deve estar ativo e publicado pelo menos uma vez.
Utilize o componente "Início Condicional" em cenários que o fluxo deve ser iniciado manualmente ou através da nossa API. Este componente é representado pela seguinte figura:

Para aprender a iniciar um processo manualmente, veja a explicação do componente "Início Manual".
Para aprender a iniciar um processo através da nossa API, veja a explicação do componente "Início por Mensagem".
Utilize o componente Início por atividade" em cenários que o fluxo deve ser iniciado através de uma atividade do Inbox. Este componente é representado pela seguinte figura:

Para abrir seu modal de configuração, clique no ícone
como no exemplo a seguir:


Este campo é obrigatório e define o formulário que será exibido na atividade do Inbox. Ao responder a atividade, o processo será iniciado e o objeto BO (Business Object) será conterá as propriedades e valores do formulário respondido.

Saiba tudo sobre os Formulários clicando aqui.
Saiba mais sobre o BO (Business Object) clicando aqui.
Esses campos definem o usuário e/ou grupo de usuário que poderá responder a atividade no Inbox.


Saiba tudo sobre os Usuários, clicando aqui.
Saiba tudo sobre os Grupos de Usuários, clicando aqui.
Esse campo é opcional, define o título da atividade no Inbox e também o nome da execução(instância) que será iniciada ao responder a atividade.

Após concluir a configuração do componente, clique no botão "Salvar".

Para o iniciar uma instância o processo deve estar ativo e publicado pelo menos uma vez.
Saiba como iniciar processos através do Inbox Web e Inbox APP, clicando aqui.
Utilize o componente Início por Agendamento" em cenários que o fluxo deve ser iniciado automaticamente em datas e horários predefinidos, como a chegada de uma data específica (ex. 15 de março) ou relativa (ex. primeira terça-feira do mês).
Este componente é representado pela seguinte figura:

Para abrir seu modal de configuração, clique no ícone
como no exemplo a seguir:


As configurações de agendamento são bem flexíveis para atender qualquer tipo de cenário e também é disponibilizado uma tela no BPA para auxiliar na gestão desses agendamentos. Conheça essa tela e todas as possíveis configurações de agendamento clicando aqui.
Após concluir a configuração do componente, clique no botão "Salvar".

Para o agendamento iniciar uma instância o processo deve estar ativo e publicado pelo menos uma vez.
Um usuário pode ter permissão para criar processos e não ter permissão para criar agendamentos. Nesse caso, o componente será disponibilizado em tela, porém o usuário não irá conseguir configurá-lo.

Saiba mais sobre as permissões de usuário clicando aqui.
Os componentes disponíveis no tipo "Eventos Intermediários" possuem a finalidade de atender todos os cenários do seu fluxo em que é necessário aguardar ou realizar ações que ocorrem durante o processo.

Utilize o componente "Condição Temporal" em cenários que o fluxo, por determinada quantidade de tempo, precisa parar e aguardar por uma ação externa para continuar.
No caso, essa ação externa é realizada através da operação "SaveStep" da API do Beew4y. Dependendo da necessidade do seu fluxo, através de um parâmetro de entrada desta operação, é possível enviar um JSON com propriedades e valores que serão adicionados no objeto Result, dessa forma permitindo a utilização desses valores no evento OnResult deste componente e também nos próximos passos do fluxo.
Saiba como utilizar corretamente a operação SaveStep clicando aqui.
O componente "Condição Temporal" é representado pela seguinte figura:

Para abrir seu modal de configuração, clique no ícone
como no exemplo a seguir:


Na aba "Principal" fica localizado a configuração de limite de tempo que o componente ficará aguardando a ação externa. Para este componente é obrigatório definir um tempo limite.
Caso esse tempo limite seja expirado, o fluxo irá continuar sua execução. Além disso, no objeto Result deste componente, é disponível uma propriedade do tipo booleana chamada "Expired", com o objetivo de permitir o tratamento dessa expiração nos eventos deste componente e também nos próximos passos do fluxo.

Saiba como utilizar corretamente a Configuração de limite de tempo, clicando aqui.
Este componente possui todos os tipos de evento, acesse a aba "Eventos" caso queira escrever um script de programação para algum evento.

Saiba tudo sobre os Eventos clicando aqui.
Após concluir a configuração do componente, clique no botão "Salvar".

Saiba mais sobre o objeto Result clicando aqui.
Utilize o componente "Condicional" em cenários que o fluxo, por tempo indeterminado, precisa parar e aguardar por uma ação externa para continuar.
No caso, essa ação externa é realizada através da operação "SaveStep" da API do Beew4y. Dependendo da necessidade do seu fluxo, através de um parâmetro de entrada desta operação, é possível enviar um JSON com propriedades e valores que serão adicionados no objeto Result, dessa forma permitindo a utilização desses valores no evento OnResult deste componente e também nos próximos passos do fluxo.
Saiba mais sobre o objeto Result clicando aqui.
Saiba como utilizar corretamente a operação SaveStep clicando aqui.
O componente "Condicional" é representado pela seguinte figura:

Através dele também é possível escrever um script de programação nos eventos OnOccur e OnResult, para isso abra o modal de configuração, clicando no ícone
como no exemplo a seguir:


Saiba tudo sobre os Eventos clicando aqui.
Após concluir a configuração do componente, clique no botão "Salvar".

Utilize o componente "Capturar Mensagem" em cenários que o fluxo precisa parar e aguardar, por um tempo determinado ou indeterminado, o recebimento de uma comunicação externa.
No caso, essa comunicação externa é realizada através da operação "SaveStep" da API do Beew4y. Dependendo da necessidade do seu fluxo, através de um parâmetro de entrada desta operação, é possível enviar um JSON com propriedades e valores que serão adicionados no objeto Result, dessa forma permitindo a utilização desses valores no evento OnResult deste componente e também nos próximos passos do fluxo.
Saiba como utilizar corretamente a operação SaveStep clicando aqui.
O componente "Capturar Mensagem" é representado pela seguinte figura:

Para abrir seu modal de configuração, clique no ícone
como no exemplo a seguir:


Na aba "Principal" fica localizado a configuração do limite de tempo que o passo ficará aguardando a comunicação externa.
Caso esse tempo limite seja expirado, o fluxo irá continuar sua execução. Além disso, no objeto Result deste componente, é disponível uma propriedade do tipo booleana chamada "Expired", com o objetivo de permitir o tratamento dessa expiração nos eventos deste componente e também nos próximos passos do fluxo.

Saiba como utilizar corretamente a Configuração de limite de tempo, clicando aqui.
Este componente possui todos os tipos de evento, acesse a aba "Eventos" caso queira escrever um script de programação para algum evento.

Saiba tudo sobre os Eventos clicando aqui.
Após concluir a configuração do componente, clique no botão "Salvar".

Saiba mais sobre o objeto Result clicando aqui.
Utilize o componente "Enviar Mensagem" em cenários que o fluxo precisa realizar uma comunicação externa. Este componente é representado pela seguinte figura:

No caso, a comunicação externa é realizada através de um script de programação que é executado no evento OnOccur do componente. Para isso abra o modal de configuração, clicando no ícone
como no exemplo a seguir:


Saiba tudo sobre o Evento OnOccur clicando aqui.
Neste componente é obrigatório escrever um script e após escrever, clique no botão "Salvar".

Os componentes disponíveis no tipo "Eventos de Fim" possuem a finalidade de atender todos os possíveis cenários de término do seu fluxo.

É necessário que todos os fluxos de processo tenha no mínimo um evento de fim.
O componente "Finalizar Processo" é o componente de finalização padrão. Este componente é representado pela seguinte figura:

Dependendo do seu fluxo, este componente pode ser utilizado mais de uma vez. Através dele também é possível escrever um script de programação no evento OnOccur, para isso, abra o modal de configuração, clicando no ícone
como no exemplo a seguir:


Saiba tudo sobre o Evento OnOccur clicando aqui.
Utilize o componente "Finalizar Processo com Erro" em cenários que é necessário realizar tratamentos de exceções do fluxo. Este componente é representado pela seguinte figura:

Para abrir seu modal de configuração, clique no ícone
como no exemplo a seguir:


A aba "Principal" possui o campo "Mensagem de erro", neste campo é necessário que seja inserido através de um valor ou uma expressão a mensagem de tratamento da possível exceção que ocorrerá no fluxo.

Saiba mais sobre as opções valor e expressão clicando aqui.
Este componente possui o evento OnOccur, acesse aba "Evento OnOccur" caso queira escrever um script de programação que será executado antes o processamento do passo.

Saiba tudo sobre o Evento OnOccur clicando aqui.
Após concluir a configuração do componente, clique no botão "Salvar".

Com isso caso o fluxo caia na exceção, a execução(instância) será terminada e no detalhes da execução será exibido a mensagem de erro definida na configuração do componente. Por exemplo:


Saiba como visualizar e analisar os detalhes de uma execução, clicando aqui.
O componente "Interromper Processo" funciona da mesma maneira que o componente "Finalizar Processo", sendo a única diferente entre eles o status que a execução(instância) ficará ao ser terminada.
No caso utilizando o componente "Finalizar Processo", o status da execução ficará como "Finalizado", já utilizando este componente "Interromper Processo", o status da execução ficará como "Terminado". Por exemplo:

Conheça e entenda todos os possíveis status de uma execução, clicando aqui.
O componente "Interromper Processo" é representado pela seguinte figura:

Através dele também é possível escrever um script de programação no evento OnOccur, para isso, abra o modal de configuração, clicando no ícone
como no exemplo a seguir:


Saiba tudo sobre o Evento OnOccur clicando aqui.
Os componentes disponíveis no tipo "Gateways Divergentes" tem como finalidade atender todos os cenários dos fluxos que possuem caminhos divergentes, ou seja, mais de um caminho possível.

Utilize o componente "Gateway Exclusivo Divergente" em cenários que, em determinado ponto do fluxo, é necessário uma decisão, para definir um único caminho que deve ser executado, entre dois caminhos divergentes.
Este componente é representado pela seguinte figura:

Para abrir seu modal de configuração, clique no ícone
como no exemplo a seguir:


Neste modal deve ser inserido uma expressão condicional e o resultado desta expressão irá decidir em qual dos dois caminhos divergentes o fluxo irá percorrer.

Saiba como utilizar uma expressão corretamente clicando aqui.
O resultado de uma expressão condicional sempre será verdadeiro ou falso. Então nos caminhos divergentes que estão ligados ao componente, será necessário definir qual é o caminho falso e qual é o caminho verdadeiro. Para isso clique no ícone
como no exemplo a seguir:

Ao clicar, será aberto um modal de configuração do conector, com as opções "Caminho verdadeiro" e "Caminho falso".

Selecione a opção "Caminho verdadeiro" no caminho que deve ser executado, caso o resultado da expressão condicional do "Gateway Exclusivo Divergente" seja verdadeira. Após salvar, o caminho ficará com a cor azul. Por exemplo:


Selecione a opção "Caminho falso" no caminho que deve ser executado, caso o resultado da expressão condicional do "Gateway Exclusivo Divergente" seja falso. Após salvar, o caminho ficará com a cor vermelha. Por exemplo:


Imagine um fluxo de aprovação de compras, que possui a seguinte regra de negócio: Caso o valor do pedido seja maior que R$10.000, a aprovação deve ser realizada pela diretoria, se não for deve ser realizada pela gerência.
Nesse caso deve ser configurado no "Gateway Exclusivo Divergente" a expressão condicional para tratar essa regra de negócio. Neste exemplo, como condição foi definido a expressão "bo.ValorPedido > 10000"


Caso o resultado desta expressão seja verdadeiro, significa que a aprovação deve ser feita pela diretoria, então no caminho que liga a esse fluxo deve ser configurado a opção "Caminho verdadeiro".


Caso o resultado desta expressão seja falso, significa que a aprovação deve ser feita pela gêrencia, então no caminho que liga a esse fluxo deve ser configurado a opção "Caminho falso".


Pronto. Apenas com isso o fluxo está preparado para atender a regra de négocio solicitada.
Utilize o componente "Gateway Paralelo Divergente" em cenários que, em determinado ponto do fluxo, é necessário executar ao mesmo tempo dois ou mais caminhos paralalelos.
Todas as etapas que saem deste componente sempre são executadas. Isso também aconteceria caso as etapas do fluxo estivessem em sequência, porém as etapas seriam executadas uma de cada vez. Com o "Gateway Paralelo Divergente" é possível diminuir o tempo de execução do processo, pois as etapas serão executadas juntas paralelamente.
Este componente é representado pela seguinte figura:

Em todos os caminhos que saem do "Gateway Paralelo Divergente", pode conter uma ou mais etapas, porém em algum momento é obrigatório que todos esses caminhos sejam conectados a um Gateway Paralelo Convergente.
Imagine um fluxo de pedido de compras de uma empresa, que possui a seguinte regra de negócio: No momento que a compra é realizada, ao mesmo tempo, deve ser um enviado um e-mail de confirmação para o cliente e também para os colaboradores da empresa.
Neste caso para tratar essa regra de negócio, deve ser utilizado o componente "Gateway Paralelo Divergente" após a confirmação da compra.

Dele deve sair dois caminhos divergentes. Em um caminho deve ser configurado o envio de e-mail para o cliente e no outro caminho deve ser configurado o e-mail para os colaboradores.

Após o envio de ambos os e-mails, esses caminhos divergentes, devem ser unidos por um Gateway Paralelo Convergente.

Pronto. Apenas com isso o fluxo está preparado para atender a regra de négocio solicitada.
Atenção: Não é recomendado durante a execução de caminhos paralelos, que estão ligados ao "Gateway Paralelo Divergente", alterar os valores das propriedades do objeto BO (Business Object), apenas adicionar novas propriedades ao objeto.
Utilize o componente "Gateway Inclusivo Divergente" em cenários que, em determinado ponto do fluxo, é necessário decisões, para definir um ou mais caminhos que devem ser executados ao mesmo tempo. Este componente é representado pela seguinte figura:

Em todos os conectores que saem do "Gateway Inclusivo Divergente", é obrigatório inserir uma expressão condicional. Para isso abra o modal de configuração do conector, clicando no ícone
como no exemplo a seguir:


No modal defina a expressão condiconal do conector.

O resultado desta expressão sempre será verdadeiro ou falso. Caso o resultado seja verdadeiro o caminho será executado, caso seja falso o caminho será ignorado.
Saiba como utilizar uma expressão corretamente clicando aqui.
Imagine um fluxo de aprovação de compras, que possui a seguinte regra de negócio:
Caso o valor do pedido seja maior que R$1.000 e menor que R$10.000, a aprovação deve ser realizada apenas pela supervisão.
Caso o valor do pedido seja maior que R$10.000 e menor que R$30.000, a aprovação deve ser realizada pela supervisão e também pela gerência.
Caso o valor do pedido seja maior que R$30.000, a aprovação deve ser realizada pela supervisão, gerência e também pela diretoria.
Neste caso para tratar essa regra de negócio, pode ser utilizado um "Gateway Inclusivo Divergente" após a solicitação da aprovação.

Do gateway deve sair três caminhos divergentes. No primeiro caminho deve ser configurado o envio da aprovação para a supervisão e no conector deste caminho deve ser configurado a expressão condicional para o caminho ser executado.

Neste exemplo foi utilizado a expressão "bo.ValorPedido > 1000", ou seja, caso o valor do pedido seja maior que R$1.000, o resultado da expressão será verdadeira e o caminho será executado.

No segundo caminho deve ser configurado o envio da aprovação para a gêrencia e no conector deste caminho deve ser configurado a expressão condicional para o caminho ser executado.

Neste exemplo foi utilizado a expressão "bo.ValorPedido > 10000", ou seja, caso o valor do pedido seja maior que R$10.000, o resultado da expressão será verdadeira e o caminho será executado.

No terceiro caminho deve ser configurado o envio da aprovação para a diretoria e no conector deste caminho deve ser configurado a expressão condicional para o caminho ser executado.

Neste exemplo foi utilizado a expressão "bo.ValorPedido > 30000", ou seja, caso o valor do pedido seja maior que R$30.000, o resultado da expressão será verdadeira e o caminho será executado.

Para finalizar esses caminhos divergentes, devem ser unidos por um Gateway Inclusivo Convergente.

Pronto. Apenas com isso o fluxo está preparado para atender a regra de négocio solicitada. Em cenário que o valor pedido é R$25.000 por exemplo, a condição do primeiro e segundo caminho serão verdadeiras e o do terceiro caminho falsa, ou seja, serão executados o primeiro e o segundo caminho e o terceiro será ignorado.

Atenção: Não é recomendado durante a execução de caminhos paralelos, que estão ligados ao "Gateway Inclusivo Divergente", alterar os valores das propriedades do objeto BO (Business Object), apenas adicionar novas propriedades ao objeto.
Os componentes disponibilizados dentro do tipo "Gateways Convergentes" tem como finalidade atender todos os cenários que é necessário converger caminhos divergentes no fluxo.

O componente Gateway Inclusivo Convergente é representado pela seguinte figura:

Ao utilizar o componente Gateway Inclusivo Divergente, é obrigatório utilizar este componente para unir os caminhos divergentes serão executados. Por exemplo:

O uso deste componente irá garantir que o fluxo avance apenas após concluir a execução de todos os caminhos que saíram do Gateway Inclusivo Divergente.
O componente Gateway Paralelo Convergente é representado pela seguinte figura:

Ao utilizar o componente Gateway Paralelo Divergente, é obrigatório utilizar este componente para unir os caminhos divergentes serão executados. Por exemplo:

O uso deste componente irá garantir que o fluxo avance apenas após concluir a execução de todos os caminhos que saíram do Gateway Paralelo Divergente.
Os componentes disponíveis no tipo "Containers" possuem a finalidade de organizar os elementos de um fluxo de processo, estes elementos podem ser organizados tanto horizontalmente, como também verticalmente.

O "Container Horizontal" é representado pela seguinte figura:

Utilize caso necessário, para organizar os componentes do fluxo na horizontal. Por exemplo:

O "Container Vertical" é representado pela seguinte figura:

Utilize caso necessário, para organizar os componentes do fluxo na vertical. Por exemplo:

Os conectores possuem como finalidade conectar diferentes componentes do fluxo e também indicar a ordem de execução dos passos.

Para conectar os componentes do fluxo, passe o mouse sobre o componente de origem e arraste o conector até o componente destino. Por exemplo:
