wiki:WF/codigoatividade

Version 3 (modified by drovetto, 16 years ago) (diff)

--

Código das Atividades

WikiInclude(WF/tableofcontents)?

Para cada processo de workflow, o módulo irá reservar um espaço em disco para gravar os arquivos que formarão o código do processo. O local onde estes dados estão armazenados está representado pelo esquema abaixo. O desenvolvedor poderá optar por editar os arquivos de código diretamente no sistema de arquivos (no disco do computador, seguindo o modelo abaixo) ou então utilizar a interface web de codificação.

 + /home/expressolivre/workflow
   |
   + Nome_do_processo
     + code
       + activities
       + jobs
       + templates
     + compiled
     + doc
     + graph
     + resources
     + smarty
       + cache
       + compiled

O primeiro passo para codificar uma atividade é definir o seu código básico, que por conveniência será sempre o mesmo. Os arquivos de atividade ficam no ramo 'activities', exemplificado acima, e para cada atividade do processo, irá existir um arquivo PHP para ela. Por exemplo, se tiver uma atividade no fluxo com o nome de 'Cadastrar Fornecedor', teremos um arquivo com o nome de Cadastrar_Fornecedor.php. Ao criar o arquivo da atividade o módulo irá executar uma normalização no nome, substituindo espaços pelo caracter underline e irá suprimir caracteres especiais.

Exemplo de código de uma atividade:

<?php
/**
 * Recebe dados para criação de um novo ato administrativo.
 * @author viani
 * @author carloseduardo
 * @author aleheil
 * @version 1.4
 */
	
/* instanciação da classe de camada de negócios */
$application = new ComporController(new ComporModel($env), $env);
$application->run($_REQUEST['action']);
?>

Na primeira linha do código acima estão sendo iniciadas as camadas Model e Controller da atividade. Na segunda linha, o método run() da camada de Controle é acionado e é passado como parâmetro a ação a ser executada.