Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Neste momento, utilizando o Fluig Studio, estaremos realizando o cadastro e configuração do processo "Aprovação de Contrato de Matéria Prima", que será acionado pelo TOTVS Agro Bioenergia.

Estas configurações são primordiais para que o processo interaja com o Bioenergia, principalmente ao final do processo, onde serão acionadas rotinas específicas, fechando o ciclo de integração entre os produtos.


Dica

Antes de prosseguirmos, é de suma importância que o Fluig Studio esteja configurado. Sendo assim, sugerimos as seguintes documentações de apoio, para a configuração da IDE:


Com o Fluig Studio devidamente configurado, criaremos nosso primeiro processo. Os passos iniciais necessários para a criação do processo estão disponíveis neste link.


Nota
titleIMPORTANTE

Atente-se ao código atribuído para o processo e também sua descrição. Estas informações serão importantes para o momento de cadastrar este processo no Bioenergia.


Aviso
titleAtenção

Os processos criados com a finalidade de serem acionados por meio das APIs Fluig, via TOTVS Agro Bioenergia, deverão ser exclusivos para essa finalidade, não sendo recomendado realizar solicitações de tal processo diretamente pela plataforma Fluig.


Complementando a criação do processo apresentado no link anterior, demonstraremos algumas configurações extras que necessitam ser realizadas em todos os processos relacionados a aprovação de contratos de matéria-prima, para o contexto da integração entre os produtos TOTVS Agro Bioenergia e TOTVS Fluig.

Dentre as configurações complementares, demonstraremos:


  • Indicação de scripts para serem executados em eventos do processo;
  • Cadastro e configuração de formulários;
  • Mecanismo de atribuição de usuários;
  • Exportação do processo, formulário e scripts para a plataforma Fluig.


Nota
titleIMPORTANTE

No que diz respeito a montagem do diagrama, a sua composição, caminhos, pessoas envolvidas e outras configurações necessárias a respeito do fluxo de aprovação contratos de matéria-prima, cada cliente pode gerar o seu próprio processo.

Entretanto, os pontos que serão apresentados a seguir são OBRIGATÓRIOS para todos os processos de aprovação de contratos de matéria-prima, pois são etapas fundamentais na integração entre os produtos TOTVS Agro Bioenergia e TOTVS Fluig.


1) Indicação de scripts para serem executados em eventos do processo



Começaremos cadastrando os scripts que serão executados em eventos específicos do processo. Estes scripts permitem que sejam realizadas ações complementares, em situações específicas do fluxo de movimentação do processo. 


No Fluig Studio, clicaremos sobre a pasta "scripts", com o botão direito do mouse, e selecionaremos a opção "New", e em seguida "Script Fluig", conforme exemplo abaixo:



A tela a seguir será apresentada, onde deverá ser escolhido a opção "Script Evento Workflow". Em seguida, clicar em "Next":



Nesta próxima tela indicaremos o nome do evento e relacionaremos ele ao diagrama criado anteriormente. Neste momento, escolheremos o evento "afterProcessFinish". Este evento será acionado assim que o processo for finalizado. Escolhendo os atributos indicados, clicaremos em "Finish".



Feito isso, será criado uma função do tipo do evento escolhido. Nesta função, devemos passar os comandos conforme o exemplo apresentado abaixo:



Bloco de código
languagejs
titleCódigo da Function afterProcessFinish
linenumberstrue
collapsetrue
function afterProcessFinish(processId){
	
	var data = {
			companyId : getValue("WKCompany") + '',
			serviceCode : 'fluig_POC_PagFor', // nome do servidor
			endpoint : '/TOTVS_FLUIG/FLUIG_WS.asmx/apiFluig_HTTP_PUT_FinalizaAprov', // endpoint da API de finalização de aprovação
			method : 'post',
			params : { 
				oFinalizaAprovFluig: {
					noProcess: processId,
					cdProcess: 'aprova_contrato_mp', // código do processo criado
					status: 'FINALIZED'
					}
			},
			headers : {}
		}
		
		fluigAPI
			.getAuthorizeClientService()
			.invoke(JSON.stringify(data));
	
}


Este script será acionado após o processo ser finalizado no Fluig, acionando a API gerada pelo Bioenergia, referente a finalização da aprovação do contrato de matéria prima e oficialização do mesmo. Com isso, podemos constatar que a oficialização do contrato de matéria prima somente será realizada após a finalização do processo na plataforma Fluig.


Repetiremos os mesmos passos realizados anteriormente, criando um novo script, entretanto, referente ao evento "afterCancelProcess", que será acionado após o processo ser cancelado na plataforma Fluig. Após o processo ser cancelado, o Fluig consumirá mais uma API do TOTVS Agro Bioenergia, registrando o cancelamento do processo e disponibilizando ao usuário o envio do contrato para aprovação novamente, gerando um novo código de processo vinculado ao contrato de matéria prima.


Bloco de código
languagejs
titleCódigo da Function afterCancelProcess
linenumberstrue
collapsetrue
function afterCancelProcess(colleagueId,processId){
	
	var data = {
			companyId : getValue("WKCompany") + '',
			serviceCode : 'fluig_POC_PagFor', // nome do servidor
			endpoint : '/TOTVS_FLUIG/FLUIG_WS.asmx/apiFluig_HTTP_PUT_CancelProcess', // endpoint da API de cancelamento de processos
			method : 'post',
			params : { 
				oFinalizaAprovFluig: {
					noProcess: processId,
					cdProcess: 'aprova_contrato_mp', // código do processo criado
					status: 'CANCELED'
					}
			},
			headers : {}
		}
		
		fluigAPI
			.getAuthorizeClientService()
			.invoke(JSON.stringify(data));
	
	
}
Nota
Lembre-se sempre de salvar todas as alterações.
Aviso
titleAtenção
As rotinas demonstradas acima devem ser cadastradas da mesma forma que estão sendo apresentada nos blocos de códigos, alterando somente os campos que possuem comentários a sua frente.


2) Cadastro e configuração de formulários



Dica
Para o cadastro de um novo formulário, recomendamos que seja realizada a leitura da documentação disponibilizada neste link.
Nota
Recomendamos que, antes de finalizar a exportação dos formulários para a plataforma Fluig, que os passos seguidos na página 1.1.3.1. Criação e Configuração de Pasta para Centralizar Formulários sejam realizados, para uma melhor organização dos documentos que serão gerados, a partir do uso dos processos.


Após a criação do formulário base de aprovação de contratos de matéria-prima, precisaremos configurar a estrutura deste formulário. Para isso, inseriremos no arquivo .html que foi gerado, o bloco de código a seguir.


Bloco de código
languagexml
titleContrato de Matéria Prima - TOTVS Bioenergia.html
linenumberstrue
collapsetrue
<html>
<head>
	<link type="text/css" rel="stylesheet" href="/style-guide/css/fluig-style-guide.min.css"/>
	<script type="text/javascript" src="/portal/resources/js/jquery/jquery.js"></script>
	<script type="text/javascript" src="/portal/resources/js/jquery/jquery-ui.min.js"></script>
	<script type="text/javascript" src="/portal/resources/js/mustache/mustache-min.js"></script>
	<script type="text/javascript" src="/style-guide/js/fluig-style-guide.min.js" charset="utf-8"></script>
</head>
<body>
<div class="fluig-style-guide">
<form role="form">
<div class="form-group">
<label for="noContrCana">Contrato</label>
<input type="text" class="form-control" id="noContrCana" name="noContrCana" readonly="">
</div>
<div class="form-group">
<label for="noAditivo">Nº Aditivo</label>
<input type="text" class="form-control" id="noAditivo" name="noAditivo" readonly="">
</div>
<div class="form-group">
<label for="noAditivo">Tipo do Contrato</label>
<input type="text" class="form-control" id="tipoContrato" name="tipoContrato" readonly="">
</div>
<div class="form-group">
<label for="cdEmpresa">Empresa</label>
<input type="text" class="form-control" id="cdEmpresa" name="cdEmpresa" readonly="">
</div>
<div class="form-group">
<label for="cdUpnivel1">Fazenda</label>
<input type="text" class="form-control" id="cdUpnivel1" name="cdUpnivel1" readonly="">
</div>
<div class="form-group">
<label for="cdFornec">Proprietário</label>
<input type="text" class="form-control" id="cdFornec" name="cdFornec" readonly="">
</div>
<div class="form-group">
<label for="vigencia">Vigência</label>
<input type="text" class="form-control" id="vigencia" name="vigencia" readonly="">
</div>
<div class="form-group">
<label for="areaTotal">Área Total</label>
<input type="text" class="form-control" id="areaTotal" name="areaTotal" readonly="">
</div>
<div class="form-group">
<label for="areaContratada">Área Contratada</label>
<input type="text" class="form-control" id="areaContratada" name="areaContratada" readonly="">
</div>
<div class="form-group">
<label for="vlTotalContr">Vl. Total Contr.</label>
<input type="text" class="form-control" id="vlTotalContr" name="vlTotalContr" readonly="">
</div>
</form>
</div>
</body>
</html>
Nota
Lembre-se sempre de salvar todas as alterações.
Aviso
titleAtenção
É de suma importância que a estrutura do formulário esteja configurada conforme o bloco de códigos acima, pois os IDs dos campos do formulário serão enviados juntamente com os valores aos quais eles representam, na requisição da API de start do processo, disponibilizada pelo Fluig. 


3) Mecanismo de atribuição de usuários



Esta configuração consiste na definição do usuário (ou grupo de usuários) que dará sequência ao processo iniciado pelo TOTVS Bioenergia.

Os processos iniciados pelo Bioenergia via API, necessariamente precisam possuir na composição e configuração da primeira tarefa após o evento de início do processo, um mecanismo de atribuição configurado.

Sem este mecanismo de atribuição definido, o processo não será startado e a API retornará com um erro.

Para as demais tarefas, o uso deste recurso é opcional.


Dica
Caso deseje entender mais sobre estes mecanismos de atribuição, recomendamos a leitura da documentação disponibilizada pelo Fluig, clicando aqui.


No Fluig Studio, com o processo aberto na tela principal, deve-se clicar na tarefa em que se deseja configurar um mecanismo de atribuição. Neste exemplo, configuraremos a tarefa "Aprova Contrato de Matéria Prima". Clicando sobre a caixa da tarefa, podemos visualizar algumas configurações desta tarefa na aba "Properties". Dentre as opções, temos o "Mec. Atribuição", responsável por indicar o mecanismo de atribuição escolhido. Nos é apresentado um combo box, com algumas opções de atribuições, e ao lado a opção "Configurar":



Neste exemplo, escolhemos o mecanismo de Atribuição "Por Usuário". Clicando em "Configurar", nos é apresentado todos os usuários cadastrados neste servidor Fluig. Clicando duas vezes sobre o nome escolhido, será indicado o usuário que estará atribuído como responsável por assumir esta tarefa, assim que o processo for iniciado pelo TOTVS Agro Bioenergia.



Nota
Lembre-se sempre de salvar todas as alterações.
Aviso
titleAtenção
Para todos os processos acionados via API Fluig, a PRIMEIRA TAREFA do processo (tarefa apresentada após o início do processo - circulo verde) OBRIGATORIAMENTE  precisa possuir um mecanismo de atribuição configurado. Sem este mecanismo de atribuição configurado para a primeira tarefa do processo, a API apresentará erro, pois ela aguarda a indicação de quem receberá a movimentação do processo.


4) Exportação do processo, formulário e scripts para a plataforma Fluig



Após realizada todas as configurações e ajustes necessários do processo de Aprovação de Contratos de Matéria-Prima, realizaremos a exportação deste processo e todos os seus demais itens envolvidos (formulário, scripts, etc) para o servidor Fluig onde a plataforma está disponibilizada.


Clicaremos com o botão direito do mouse sobre o processo escolhido para ser exportado, e selecionaremos a opção "Export":



Em seguida, selecionaremos a opção "Exportar para servidor Fluig":



Feito isso, confirmaremos o servidor escolhido para a exportação, além do processo selecionado. Caso esteja tudo correto, deve-se selecionar os checkboxes "Liberar Versão" (para realizar a liberação de uma nova versão do processo) e "Exportar formulário" (para que o formulário vinculado ao processo também seja exportado). Em seguida, clicaremos em "Next":



Por fim, confirmaremos as informações sobre a exportação do formulário. Com todas as informações indicadas corretamente, podemos clicar em "Finish":



Assim que a configuração da exportação do processo for finalizada, o processo estará registrado em uma nova versão e disponível para ser acionado pela API.