> For the complete documentation index, see [llms.txt](https://nosicode.gitbook.io/faq/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://nosicode.gitbook.io/faq/advanced/how-to-implement-a-process-bpmn-in-igrp-studio.md).

# How to implement a process BPMN in IGRP Studio

Tutorial, implementação de processo IGRPWeb

Este documento tem como objetivo mostrar como desenhar processo, associar páginas à etapas/tasks e invocar o seu método no IGRPWeb.

1\. Passo 1 – Abrir a IGRP Studio e clicar no link BPMN Dedigner, assim como ilustrada na figura 1.

![Figure 1 – Link de BPMN Designer](https://4269523424-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LBVX2OMafn-xpQ5esuM%2F-LBX6XMO1yvJWGUSqi5k%2F-LBX6usNpo73u7w2eK48%2Fimage.png?alt=media\&token=dded8dda-3a1e-4e4a-8205-47be9ca9eb1e)

2\. Passo 2 – No canto esquerdo, escolhar a aplicação para o qual o Processo será adicionado.

![Figure 2 - Escolher Aplicação](https://4269523424-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LBVX2OMafn-xpQ5esuM%2F-LBX6XMO1yvJWGUSqi5k%2F-LBX73E_0BzpCGqCDZGg%2Fimage.png?alt=media\&token=d179819d-8b8f-4e4a-9b1d-28f54d8bd1b3)

3\. Passo 3 – Desenhar seu Processo

![Figure 3 - BPMN Designer](https://4269523424-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LBVX2OMafn-xpQ5esuM%2F-LBX6XMO1yvJWGUSqi5k%2F-LBX7B3zu4mh1zH7unUb%2Fimage.png?alt=media\&token=b97777c1-e480-4527-b4c9-9387cbdcaa31)

4\. Passo 4 – Associar página a etapa/task. Para este efeito, clique sob a etapa/task, em seguida va para a área de configuração e escolher a aba “Forms”. Clique no ícone de pesquisa para que seja apresenta as páginas.

![Figure 4 - Associar Página a Etapa/Task](https://4269523424-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LBVX2OMafn-xpQ5esuM%2F-LB_TM-h7QTsx6poktzi%2F-LBamcPNIyX57fcIifNc%2Fimage.png?alt=media\&token=fba4405d-9ec4-4135-915d-76dc19a14666)

a. Passo 5.a – Na aba Associar Página serão listada todas as páginas da aplicação em questão.

OBS: As páginas podem ser filtradas, assim como ilustrada na figura 5.

Figure 5 - Associar Página

Clicar sob Task

Clicar neste ícone

Clicar para associar página

b. Depois de clicar no link a página será associada.

Figure 6 - Página Associada

c. Associar Tipo de Documentos a etapa/task. Para este efeito, repita o passo 4, ilustrada na figura 4 e em seguida selecionar a aba Associar Documentos.

Os tipos de documentos são listados de acordo com a paramentrização feita.

Figure 7 - Lista de tipo document

d. Selecionar os tipos de dpcumentos e clicar no botão save.

5\. Passo 5 – Invocando seu método.

Este passo é importante quando precisamos de gravar os dados na tabela de negócio e/ou invocar webservices.

a) Adicionar a tarefa do tipo “Service Task”, ilustrada na figura 8

Figure 8 - Adicionar Service Task

b) Clicar sob o Service Task e ir para área de configuração, selecionar Java Class na implementação.

Service Task

Figure 9 - Selecionar tipo de implementação

c) Inserir o nome da classe. A classe responsável para comunicar o BPMN e seu método de IGRP é: igrp.activiti.service.task.IGRPTaskService.

Figure 10 - Inserir nome da classe

Selecionar tipo de implementação

d) Ir para a aba “Field Injections” para adicionar os parâmetros necessário para invocar o seu método.

i. Igrp\_app – Nome da aplicação que contém o nome do seu controller.

ii. Igrp\_page – Nome da sua página que contém o nome do seu método.

iii. Igrp\_action – Nome do seu método.

Figure 11 - Adicionar campo igrp\_app

e) Repetir os passo anterior para adicionar os campos igrp\_page e igrp\_action.

Nota: Existe uma outra possibilidade de invocar o seu método, utilizando “Listener”, sem a necessidade de adicionar a etapa Service Task.

Nome do seu app

Tipo de campo (Sempre String neste caso)

Nome de campo (Sempre igrp\_app para este caso)

Adicionar campo

f) Invocar método utilizando “Listener”. Para este efeito, ir a para a área de configuração e clicar na aba “Listeners”. Em seguida adiciona um evento, assim como ilustrada na figura 12.

Figure 12 - invocar método usando Listener

Adicionar listener evento

Selecionar tipo de Evento

Selecionar tipo de Listener

Nome da classe

g) Na mesma àrea, mais abaixo é exibida a área de adicionar os campos necessários para invocar os seus métodos, seguindo os mesmos passos no passo 5.d a 5.e.
