No módulo anterior, analisámos a criação de uma base de dados. Mas para o pleno funcionamento da aplicação, não é suficiente apenas armazenar dados. Precisa de ser de alguma forma processada, modificada, utilizada nos cálculos, transferida. A fase mais importante no desenvolvimento da maioria das aplicações é o processo de criação da lógica do seu trabalho.

Editor do processo empresarial

Fundamentos do processo empresarial

Na plataforma AppMaster, um editor de processos empresariais é concebido para construir a lógica de trabalho. Este módulo é dedicado ao seu conhecimento.

Cada processo de negócio (BP) é uma parte separada da lógica de aplicação, alguma função específica. Ao mesmo tempo, o próprio BP é constituído por um conjunto de blocos e ligações entre eles.

Um bloco é normalmente algum tipo de acção elementar. Por exemplo, multiplicar dois números, escrever uma variável numa tabela de base de dados, concatenar cadeias de caracteres, ou adicionar um elemento a uma matriz. Contudo, operações mais complexas podem ser realizadas num bloco separado, como a procura de elementos na base de dados, com filtragem e classificação.

Além disso, qualquer processo empresarial criado pode também ser representado como um bloco separado, como parte de outro processo empresarial. É razoável utilizá-lo em situações em que a função BP possa ser reutilizada noutros processos empresariais, e também se o BP se tornar demasiado grande e as suas partes individuais puderem ser representadas como blocos independentes.

São criadas linhas de comunicação entre os blocos, que determinam a ordem dos blocos, a sequência da sua execução. Muitas vezes esta não será uma sequência linear normal. Em certas situações, a ramificação pode ocorrer quando os dados obtidos numa fase do PB podem influenciar a escolha de opções de acção. Também é possível trabalhar em ciclos, quando a sequência de acções será executada uma e outra vez, até que a condição para terminar o ciclo seja satisfeita.

Ao mesmo tempo, há dois blocos que são obrigatórios para qualquer processo empresarial. Blocos do início (Início) e do fim (Fim) do trabalho da BP. Estes blocos são criados automaticamente e não podem ser eliminados. Por si só, não realizam quaisquer operações, mas são os pontos de entrada e saída do processo de negócio. Além disso, podem ser definidas variáveis nestes blocos, que são os dados de entrada e saída do PB.

Construção de processos de negócio

Chegou a altura de o pôr à prova. Passemos à secção sobre o trabalho com processos empresariais. Vamos criar o primeiro processo de negócio e estabelecer a lógica interna do seu trabalho.

Ao clicar em "+ Criar processo de negócio", abrir-se-á uma janela modal com parâmetros para a criação de um novo processo de negócio:

  1. Nome do processo. O único campo requerido.
  2. Pasta. Se houver muitos processos empresariais, então é mais conveniente dividi-los em grupos e colocá-los nas pastas apropriadas.
  3. Descrição Um nome pode não ser suficiente para transmitir plenamente o objectivo do BP e revelar os detalhes do seu trabalho. O campo de descrição é destinado a tal informação.
  4. Modo de transacção. Se a mudança for activada, a BP adquire a propriedade da atomicidade. Isto significa que o BP ou é totalmente executado, ou nenhum dos seus blocos individuais é executado. Se ocorrer um erro em qualquer bloco, então todas as alterações causadas por blocos anteriores serão retrocedidas.

Vamos criar um processo empresarial que receba os valores de dois números como entrada. Vamos realizar operações matemáticas com estes números. Vamos calcular os resultados de:

  1. Soma
  2. Subtracção
  3. Multiplicação
  4. Divisão.

O resultado da divisão também será arredondado para a primeira casa decimal.
Como resultado, teremos de obter 5 números, que combinaremos numa matriz. É esta matriz que se tornará o resultado do processo empresarial.

Tudo começa com o input. É necessário determinar os números com os quais iremos realizar operações matemáticas. É importante compreender que não estamos a pedir números como tal. Criamos variáveis que assumem os valores requeridos. Isto pode ser comparado à resolução de equações escolares. X + Y = Z. Assim, não iremos definir 2 números específicos, mas sim abstrair X e Y. No futuro, o seu valor exacto pode ser definido por qualquer pessoa.

Para definir os valores de entrada, seleccionar o bloco Iniciar. Uma secção para definir variáveis aparecerá no painel direito. É necessário definir os seus nomes (já decidimos que serão X e Y) e seleccionar o tipo de variáveis. No segundo módulo, discutimos que há duas opções disponíveis para a escrita de números. Integer (para dados inteiros) e Float (para números de ponto flutuante). Neste caso, não nos vamos limitar a valores inteiros, pelo que será correcto escolher o tipo de variável flutuante.

O passo seguinte é adicionar blocos de operações matemáticas. Estes estão localizados no painel esquerdo e divididos em secções. Basta seleccionar os necessários e arrastá-los para o espaço de trabalho. Antes de mais, estamos interessados em operações matemáticas, respectivamente, precisamos da Soma, Subtrair, Multiplicar e Dividir blocos.

Pode certificar-se de que cada bloco é um processo de negócio em miniatura. Tem necessariamente um começo(In) e um fim(Out), bem como dados de entrada e saída (na maioria das vezes estão lá, mas isto não é obrigatório, há BPs sem eles).

As operações serão realizadas sequencialmente, uma após a outra. É necessário estabelecer a sua ligação (determinar a ordem da sua execução) e submeter os dados de entrada necessários).

O passo seguinte é arredondar o resultado da divisão. Utilizamos o bloco de arredondamento (as opções de arredondamento para cima ou para baixo são possíveis para arredondamento para cima e para baixo, respectivamente), alimentamos o resultado do bloco de divisão como entrada e definimos a precisão. Estamos interessados em 1 casa decimal, por isso definimos o parâmetro Precisão para 1.

O resultado intermédio deve ser algo parecido com isto:

Vale a pena notar que a disposição dos blocos em si pode ser qualquer. Pode alinhá-los em fila, pode colocar um bloco debaixo de outro. Isto afecta apenas a conveniência da percepção, mas não o resultado do processo comercial. O principal é que as próprias linhas de comunicação são colocadas na ordem correcta, e os dados necessários são recebidos aquando da entrada dos blocos.

O passo seguinte é criar uma matriz com os dados recebidos. O bloco de matriz anexa é ideal para isso. A sua tarefa é precisamente adicionar um novo elemento à matriz. A entrada é um array e o elemento necessário, a saída é um array com mais 1 elemento.

Note-se que não há necessidade de definir manualmente o tipo de dados. O bloco irá ajustar-se automaticamente ao tipo requerido, dependendo dos dados que recebe como entrada. Se aplicar Float à entrada, então a saída será automaticamente um array de Float, não será possível ligá-lo acidentalmente a um tipo de dados incompatível.

Estamos a adicionar 5 valores à matriz, pelo que o bloco Append Array deve ser utilizado 5 vezes. No primeiro caso, é suficiente fornecer apenas o elemento a ser adicionado como entrada. O array será criado automaticamente. Em casos subsequentes, tanto o elemento como o próprio array, ao qual adicionamos o elemento, devem chegar à entrada.

A propósito, no painel esquerdo, ao lado de Append Array, é possível ver funções com nomes semelhantes. O Prepend Array torna o novo elemento o primeiro, e isto é diferente de Append Array, que adiciona um elemento ao fim do array. O bloco Concat Array é utilizado para concatenar dois arrays.

O AppMaster utiliza muitos blocos diferentes. Não tenha medo de experimentar e utilizar todos eles, mesmo que não houvesse informação sobre um bloco específico dentro do curso.

Para transferir o resultado final, resta apenas adicionar a variável correspondente ao bloco Final. No nosso caso, este é um Float Array.

A criação do primeiro processo empresarial está concluída! No módulo seguinte, iremos compreender como utilizá-lo na prática, fornecer dados de entrada e receber um resultado.


Trabalho de casa

Criar um processo de negócio que trate de 3 números. Um deles é constante, os outros dois são variáveis.

Calcular:

  1. A soma destes números
  2. Multiplicação
  3. O resultado da divisão de 2) por 1) arredondado para um valor inteiro
  4. O resultado da divisão de 1) por 2) arredondado para a segunda casa decimal.

O resultado do processo comercial deve ser duas arrays. Em uma, os dados são dispostos pela ordem em que foram calculados. Na segunda, os mesmos dados, mas em ordem inversa.