Versão disponível: a partir da 4.6
Esse é um recurso que permite iniciar um processo a partir de outro processo. O processo será pausado pelo subprocesso reutilizável e retomado quando ele for finalizado. Essa funcionalidade também permite a troca de informações entre os processos.
O modelador irá utilizar o subprocesso reutilizável quando estiver modelando um processo que necessite reutilizar um outro processo já disponível no SankhyaFlow, para que esse novo processo possa ser executado em sua completude.
Essa reutilização elimina a necessidade do modelador ter que construir novamente todo o processo, e torna a representação dele mais concisa.
Nesse artigo, você terá acesso aos seguintes tópicos:
Caso de Uso
A empresa Alpha Ltda é uma corretora de seguros que possui um processo interno chamado Manutenção Corretiva de Equipamentos, em que um colaborador solicita a manutenção, a equipe de manutenção analisa o equipamento, e dessa análise poderá surgir a necessidade de compra de uma peça nova para o reparo do equipamento. Após a compra da peça, o fluxo deve seguir para o técnico responsável realizar o conserto e, na sequência, segue para o solicitante avaliar o atendimento, conforme podemos observar na imagem abaixo:
Processo de Manutenção Corretiva de Equipamentos |
Como a empresa Alpha Ltda já possuía um processo de "Compra de materiais" modelado e em produção, o modelador definiu esse processo como sendo um subprocesso do processo de Manutenção, reutilizando todo o processo de compra de materiais.
Dessa forma, o processo de Manutenção será paralisado quando o fluxo chegar no subprocesso "Solicitação de compra" e será retomado quando esse subprocesso for finalizado com a confirmação do pedido de compra.
No processo de Manutenção, quando o técnico decidir solicitar peças para consertar o equipamento, esses dados preenchidos na tarefa "Analisar equipamento" serão preenchidos automaticamente em formulário, para representar a "Solicitação de Materiais" no subprocesso de Solicitação de compra, que está representado na imagem abaixo.
Subprocesso "Solicitação de Compra" |
Observação: quando o subprocesso for concluído, o fluxo seguirá para o técnico consertar o equipamento. Nessa tarefa, iremos disponibilizar o número do pedido de compra para que ele possa consultar e localizar o produto junto à área responsável.
Configurando um Subprocesso
O primeiro passo para configurar o subprocesso reutilizável é inserir uma tarefa no processo e alterar para o tipo subprocesso reutilizável, conforme demonstramos abaixo:
Configuração do Subprocesso |
Na aba "Dados de Entrada" da configuração de subprocesso, o modelador pode definir scripts para obter dados de formulários do processo e registrá-los em formulários do subprocesso.
Dando continuidade na configuração do nosso caso de uso, iremos acessar a aba Dados de Entrada e definir o script que obtenha os dados preenchidos nos campos "Peça", "Quantidade" e "Observação" da tarefa "Analisar equipamento" e, automaticamente, registre-os no formulário de Solicitação de compras do subprocesso, representando assim, os dados da inicialização. Observe abaixo a imagem com a configuração:
Script Dados de Entrada |
Script completo da aba "Dados de Entrada"
//Obtém linhas do formulário do processo mestre |
[voltar ao subtítulo] [voltar ao topo]
Agora iremos configurar a aba "Dados de Retorno". Esse recurso possibilita ao modelador definir scripts para obter dados de formulários do subprocesso e registrá-los em formulários do processo.
Em nosso exemplo, iremos obter os dados do pedido que estão armazenados no campo embarcado "DETALHENOTIFICACAO" do subprocesso "Solicitação de compras".
Para isso, basta configurar o script na aba Dados de Retorno, conforme mostramos na imagem abaixo:
Script Dados de Retorno |
Script completo da aba "Dados de Retorno"
//O método getCampoSubProcesso obtém o valor do campo 'DETALHENOTIFICACAO' que está no |
[voltar ao subtítulo] [voltar ao topo]
Resultados
Realizadas as configurações, agora iremos exibir na Lista de Tarefas o comportamento do subprocesso no cenário em que o técnico necessite que a empresa compre peças para realizar a manutenção. Na inicialização, o solicitante informa o problema com o equipamento, no caso um computador, conforme imagem abaixo:
Solicitação de manutenção |
Em seguida, na solicitação 758139, o técnico realiza a análise do equipamento e solicita a peça para o conserto da máquina:
Análise da solicitação de manutenção |
Na sequência, o fluxo entra no subprocesso "Solicitação de compras", com instância 758148 (solicitação), diretamente na tarefa Analisar solicitação de compra, em que será analisado se a Solicitação de compra será aprovada ou não:
Solicitação de peça para correção |
Nota: observe que na aba "Solicitação de Compras", os campos preenchidos no processo (Peça, Quantidade e Observação) foram levados automaticamente para essa tarefa, através do script contido na aba Dados de Entrada na modelagem do processo de manutenção.
Análise da Solicitação de Compra |
Dando continuidade, o fluxo segue para a tarefa de cotação:
Solicitação de peça para correção |
Após a cotação, o fluxo do subprocesso executa a tarefa de serviço de "Geração de pedidos" e a tarefa de notificação sobre os pedidos ao responsável pela solicitação. Assim, o processo retorna para a tarefa de Manutenção de equipamentos para o técnico realizar a manutenção do mesmo:
Tarefa "Realizar manutenção" |
Observe que, no campo "Nro. Pedido(s) Gerado(s)" contém os dados que obtivemos do campo "DETALHENOTIFICACAO" do subprocesso, através do script configurado na aba Dados de Retorno. O técnico poderá utilizá-los para obter informações no sistema ou com a área responsável sobre a compra realizada.
Outras Configurações
Métodos disponíveis para trocar dados entre formulários do processo e subprocesso
Nas configurações de Dados de Entrada e Dados de Retorno, também podemos utilizar os métodos abaixo para trocar informações entre formulários do processo e subprocesso.
Dados de Entrada:
- setCampoSubProcesso: Permite inserir dados no Formulário Embarcado do subprocesso.
- novaLinhaFormatadoSubProcesso: Possibilita a inserção de uma nova linha no Formulário Formatado do subprocesso.
- novaLinhaNativoSubProcesso: Permite inserir um novo registro do Formulário Nativo do suprocesso.
Dados de Retorno:
- getCampoSubProcesso: Obtém dados do formulário embarcado do subprocesso.
- getLinhasFormatadoSubProcesso: Obtém dados do formulário formatado do subprocesso e o retorno é um array com as linhas preenchidas.
- getLinhasNativoSubProcesso: Obtém dados do formulário nativo do subprocesso e o retorno é um array com as linhas preenchidas.
Comentários
0 comentário
Por favor, entre para comentar.