Regras de negócio (Automação)

As regras de negócio são regras condicionais que podem executar diversas ações. Essas regras de negócio devem ser sempre associadas a um formulário, e sua criação deve ser feita nas configurações do formulário desejado.

Criando as regras

Antes de mais nada, é necessário definir um nome para a regra. Esse é o nome que será apresentado depois, na construção da linha do tempo. As regras de automação, podem ter 3 partes.

Condicional (se)

É onde podemos testar uma ou várias condições. Essas condições referem-se a comparações de um valor com um campo. É possível adicionar as seguintes condições:

  • Se: é uma comparação simples;
  • Caso Contrário: é o que vai ocorrer, caso a condição "Se" não se satisfaça;
  • Se/Caso Contrário: é uma possibilidade de se colocar uma segunda condição;

No exemplo acima, queremos dar um tratamento quando o campo 'Tipo de Entrega' for igual a 'Correios', outro quando for 'Mensageiro' e outro para todos os demais valores do campo.

Criar Formulário

A criação do formulário é o preenchimento do campos do formulário de destino com os valores do formulario de origem (onde a regra está sendo criada) ou com valores pré-definidos.

Esses valores pré-definidos, em casos de campos de textos, podem ser fixados quando se define a regra de criação do formulário. Já os campo de seleção, como lista de seleção, a  lista aberta com escolha única (radio), a pesquisa com auto completar, e etc, podem ser atribuídos de outros campos que possuem as mesmas opções, ou selecionados de maneira fixa.

Query SQL (Fonte de Dados)

Usando essa opção, é possível fazer uma query sql em qualquer tabela do agilityflow e atribuir o resultado à uma variável, e usar o valor nas comparações e nos mapeamentos de formulários.

Ao criar a query, será preciso definir o nome da variável e da query. O nome da variável, será usado posteriormente para identificar o valor nas condições e mapeamentos.

A query, segue os padrões das queries utilizadas em outros pontos do agilityflow, e os detalhes podem ser vistos aqui. Uma diferença, é que o conteúdo da primeira linha e da primeira coluna (resultado da query) é atribuído à uma variável. Outra diferença, é que nessa query é obrigatório o uso do parâmetro "top 1".

No exemplo abaixo, existe um query que verifica a existência do usuário e, dependendo do resultado, toma uma ou outra ação:

É necessário colocar a execução da query antes do teste da variável na estrutura condicional (se).

Programação customizada

Uma forma de se customizar ainda mais o agilityflow é incluir programação em alguns pontos. A programação customizada permite que seja incluído qualquer código em C#, dando uma enorme flexibilidade de ações.

Momento de execução das regras

As regras precisam ser executadas em um determinado momento. Os momentos são esses:

  • No carregamento inicial do formulário (OnPageLoad)
  • Ao clicar no botão 'Salvar'
  • Ao clicar no botão 'Deletar'
  • Ao alterar o campo

Configuração da timeline

É quando as regras serão executadas. A timeline (linha do tempo) é uma ordem de acontecimentos onde as regras podem ser incluídas. Para o momento de alteração de campo, a timeline só tem um espaço. Para os demais momentos, são 3 espaços para a inclusão de regras:

  • Antes de validar se o preenchimento dos campos está correto
  • Depois de validar o preenchimento dos campos e Antes de salvar no banco de dados
  • Depois de salvar no banco de dados

Reordenar as regras

Uma vez posicionada, as regras podem ser reordenadas. Basta clicar no ícone  e arrastar para a posição desejada.

Inativar uma regra

Para inativar uma regra, clique no menu à direita, e selecione a opção 'inativar nessa timeline'.

inativar_regra.gif

Feito isso, a regra recebe uma tarja vermelha com a indicação 'inativo'.

 

 

 

 

 

 

Back to top