Árvore de páginas

Versões comparadas

Chave

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

 

Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

  

Informações Gerais

 

Especificação Experiência #2 Fluig – Workflows de aprovação.

Produto

Protheus

Módulo

SIGATMS

Segmento Executor

Distribuição & Logistica

Projeto

PDRDL

IRM

PCREQ-5585

Requisito

PCREQ-7306

Subtarefa

 

Release de Entrega Planejada

 

Réplica

Não

País

( X ) Brasil  (  ) Argentina  (  ) Mexico  (  ) Chile  (  ) Paraguai  (  ) Equador

(  ) USA  (  ) Colombia   (  ) Outro _____________.

Outros

Demais informações sobre o Fluig acessar http://fluig.com/

  

Objetivo

O objetivo deste requisito, é o desenvolvimento do Workflow para realizar a integração entre o modulo SIGATMS Protheus e o Fluig, possibilitando assim, a interação, através do Fluig, em  aprovações e liberações  que antes eram realizadas somente no módulo.

Definição da Regra de Negócio

Rotina Padrão de Bloqueio

 

Funções Importantes

StartProcess

Definição : Esta função inicializa uma solicitação no ECM.

Exemplo : StartProcess(cProcess,cUser,aUserList,nTaks,lMessage,lComplete,aAttach)

Parâmetros :

    • cProcess - Código do processo
    • cUser - usuário solicitante
    •  aUserList - Lista de usuários responsáveis  Default({'admin'})
    •  nTaks - Código da atividade inicial
    •  lMessage - Exibe mensagens de Aviso
    •  lComplete - Completa a Tarefa ao mudar a atividade
    •  aAttach - Array com anexos

Retorno:

    •  aRet[1] - Código da Solicitação
    • aRet[2] - Identificador do formulário daquela solicitação


UpdateCard

Definição : Esta função atualiza uma solicitação no ECM

Exemplo : UpdateCard(cProcess,nCardId,lMessage)

Parâmetros :

    • cProcess - Código do processo
    • nCardId - Numero da solicitação
    • lMessage - Exibe mensagens de Aviso

Retorno: Se houve sucesso na Execução  - Lógico

 

MoveProcess

Definição : Esta função inicializa uma solicitação no ECM.

Exemplo : MoveProcess(cProcess,nInstanceId,cUser,aUserList,nNextTask,cComments,lMessage)

Parâmetros :

    • cProcess - Código do processo
    • nInstanceId  - Número da solicitação no ECM
    •  cUser - Usuário solicitante
    •  aUserList - Lista de usuários responsáveis  Default({'admin'})
    •  nNextTask - Código da Próxima atividade se 0 vai para a atividade seguinte
    •  cComments - Comentários da tarefa
    •  lMessage - Exibe mensagens de Aviso

Retorno: Código da Solicitação - Numérico


CancelProcess

Definição : Rotina para cancelamento de Solicitações no Fluig.

Exemplo : CancelProcess(nInstanceId,cUserId,cComments,lMessage)

Parâmetros :

    • nInstanceId  - Número da solicitação no ECM
    •  cUserId- Usuário solicitante
    •  cComments - Comentários da tarefa
    •  lMessage - Exibe mensagens de Aviso

Retorno: Se houve sucesso na Execução  - Lógico


Rotinas X Bloqueio

      O cadastro de Rotinas X Bloqueio(TMSA025) deverá ser alterado para receber o novo campo "Envia Fluig"(DDV_ENVFLG), para informar que o código de bloqueio será enviado para a liberação via workflow Fluig. 


Manutenção de Bloqueios

Para realizar a integração, utilizaremos a nova tela de Manutenção de Bloqueios(TMSA029), pois a mesma já possui as informações apresentadas de uma forma sucinta. 

Para que a integração ocorra, deverá ser inserido dentro da rotina que gera os bloqueios no TMS (TMSA029Blqa chamada da Rotina "StartProcess"a mesma terá o objetivo de  iniciar uma nova solicitação no Fluig, referente a cada processo do TMS que solicitou o Bloqueio / Aprovação, esta ação deverá ser executada, após o preenchimento do modelo de dados e somente para os códigos de bloqueio que possuam o campo "Envia Fluig"(DDV_ENVFLG) com o valor "SIM".

O retorno da rotina  "StartProcess" será um array, onde a primeira posição será o Código da Solicitação no Fluig e a segunda posição será o código do Formulário do Fluig, as mesmas deverão ser gravadas no campo "Código Fluig"(DDU_INTFLG), juntamente com o usuário responsável pela solicitação, esta gravação deverá utilizar o conceito de metadados. Estas informações serão utilizadas para as Funções de Modificação da solicitação que serão explicadas a seguir.

Caso ocorra a necessidade de atualizar alguma atividade já inserida no Fluig, deverá utilizar a função "UpdateCard", para que a mesma tenha sua informações alteradas, conforme o modelo ativo no Protheus.

Caso ocorra a necessidade de Cancelar uma atividade no Fluig deverá ser utilizada a função "CancelProcess", esta função deverá ser utilizada quando os processos forem Liberados/Aprovados pelo Protheus e tiverem solicitação no  Fluig.

Caso ocorra a necessidade de mover uma etapa da solicitação deverá ser utilizada a função "MoveProcess", a mesma tem a capacidade de mover as etapas da atividade para frente  ou para trás. 

Como a rotina de Manutenção de Bloqueios(TMSA029), trabalhe de forma genérica, alguns dos processos terão particularidades e serão mencionados a seguir.


Fluxo Genérico :

Criação de Processos no Fluig

Também será criado o processo de Workflow no Fluig(Protótipo 01). O mesmo será exportado através da Rotina Gerador de Processos (CFGA115) existente no modulo Configurador  em  Ambente/ Totvs Ecm . 

Ele deverá conter uma etapa para cada um dos processos abordados na  rotina genérica de Liberação, conforme fluxo abaixo :


 Para Configurar a integração do Protheus com o Fluig para a funcionalidade da Experiência #2 acesse o Link  Fluig Identity – Linha Microsiga Protheus - Experiência #2: ECM e Workflow

 Para utilizar a rotina Gerador de Processos(CFGA115), acesso o Link Criando um novo Workflow no Protheus.

Inicializando solicitações no TMS Protheus

Será necessário  iniciar as atividades referentes ao Processo criado Fluig para cada bloqueio que ocorrer no Protheus, para isso deverá ser utilizando Após iniciar as atividades no Protheus, utilizando  a função "StartProcess", a etapa deve após a iniciar a solicitação a mesma deverá ser movida para etapa relativa ao processo que originou o bloqueio utilizando a função "MoveProcess", para que o mesmo possa seguir o fluxo correto.

Desta forma cada etapa poderá receber modificações em sua interface.

Caso a Aprovação / Liberação ocorra no Protheus, a solicitação criada no Fluig deverá ser cancelada. 

Rotinas TMS Protheus

As rotinas que estarão envolvidas nestes processos serão as seguintes:

 

Rotina

Tipo de Operação

Opção de Menu

Regras de Negócio

TMSA040

Envolvida

Atualizações/S.A.C./Cotação de Frete

Envolvida
 
 

TMSAB30

 

Envolvida

Atualizações/Controle de Diárias

para motoristas próprios

/Controle de Diárias

 

Tmsa140

Envolvida

Atualizações/

Envolvida

 

 

Viagens

 

TMSA141

Envolvida

 

Atualizações / Viagens / Rodoviário Entrega / Viagem

 
Cálculo de Frete

Tmsa144

Envolvida

 

Atualizações/Viagens/Rodoviário Entrega / Viagem(Mod2)

 
Contrato de Carreteiro

TMSA200

Envolvida

 

Atualizações/Recebimento/Calculo Frete

 
Incompatibilidade de Produto

TMSA250

Envolvida

 
Atualizações/Terceiros/Contrato Carret. 
Regras de Restrição de Embarque

TMSA026

Envolvida

 

Atualizações/Aprovadores TMS

 
Cadastro de Aprovadores

TMSA029

 

Alteração

Atualizações/CONTR.REGRAS/LIB./Manut.Bloqueios

 

 
Manutenção de Bloqueios

TMSA025

Alteração

 

Atualizações/Rotinas X Bloqueios

 

 

 

 

Tabelas Utilizadas

    • DDU – Nome da Tabela

Opcional

Protótipo de Tela

 

<Caso necessário inclua protótipos de telas com o objetivo de facilitar o entendimento do requisito, apresentar conceitos e funcionalidades do software>.

 

Protótipo 01

 

 

 Image Removed

 

 

 

 

 

 

Fluxo do Processo

 Image Removed

Opcional

Dicionário de Dados

 

Arquivo ou Código do Script: AAA – Negociação Financeira / *Versao=CP.2014.12_03*/

  

Índice

Chave

01

<FI9_FILIAL+FI9_IDDARF+FI9_STATUS>

02

<FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_EMISS+FI9_IDDARF>

03

<FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_PREFIX+FI9_NUM+FI9_PARCEL+FI9_TIPO>

Campo

<AAA_PERESP>

Tipo

<N>

Tamanho

<6>

Valor Inicial

<Varia de acordo com o tipo informado. Por exemplo, quando o campo “tipo” for date, neste campo pode ser informado uma data>. 

Mandatório

Sim (  ) Não (  )

Descrição

<Referência Mínima para Cálculo>

Título

<Ref.Calc.>

Picture

<@E999.99>

Help de Campo

<Informar o % que o aluno pagará em dinheiro. Esse % poderá ser alterado durante a negociação>

 

(Opcional)

Grupo de Perguntas

 

<Informações utilizadas na linha Protheus>.

 

Nome: FINSRF2

X1_ORDEM

01

X1_PERGUNT

Emissão De

X1_TIPO

D

X1_TAMANHO

8

X1_GSC

G

X1_VAR01

MV_PAR01

X1_DEF01

Comum

X1_CNT01

'01/01/08'

X1_HELP

Data inicial do intervalo de emissões das guias de DARF a serem consideradas na seleção dos dados para o relatório 

 

(Opcional)

Consulta Padrão

<Informações utilizadas na linha Protheus>

 

Consulta: AMB

Descrição

Configurações de Planejamento

Tipo

Consulta Padrão

Tabela

“AMB”

Índice

“Código”

Campo

“Código”; ”Descrição”

Retorno

AMB->AMB_CODIGO

 

Contrato de Carreteiro

A rotina de Liberação de Contrato de Carreteiro deverá ser adicionada no Processo Genérico de Liberação


Cotação de Frete

Para a rotina de Cotação de Frete, deverá ser desenvolvido um painel dentro da Tela Genérica de Liberação, para que o usuário do Fluig possa informar o Cliente Remetente, Cliente Destinatário e Cliente Devedor, com já é feito na rotina de Liberação especifica da Cotação de Frete. Estas informações deverão ser repassadas para a rotina de efetivação da Aprovação da Cotação.

No Fluig este painel deverá permanecer oculto para todas as etapas, exceto a etapa de Aprovação da Cotação.


Controle de diárias para motoristas próprios

 Para a rotina de Controle de diárias devera ser desenvolvido um painel, contendo um campo com as ações que poderão ser tomadas na rotina, são elas :

    • Aprovar
    • Reprovar
    • Cancelar

 No Fluig este painel deverá permanecer oculto para todas as etapas, exceto a etapa de Aprovação de Diárias.


As demais rotinas seguirão o atual processo genérico de Aprovação.

Envio de Usuários ao Fluig

 Ao enviar uma solicitação ao Fluig, deverá ser informado na função "StartProcess" os usuários que farão parte do grupo do aprovação.

Os usuários que serão utilizados estão na tabela DDY - Aprovadores TMS, de acordo com os tipos que o mesmo é responsável para a liberação.  

Para que isso ocorre, é necessário realizar o processo de exportação de usuário do Protheus para o Fluig, lembrando que os usuários precisam ter o e-mail cadastrado no Protheus, pois isso será a chave deles no Fluig.

Caso o processo de Aprovação/Liberação possua mais de um nível, será necessário executar uma solicitação para cada nível,onde a solicitação referente ao novo nível só poderá ser criada, após a finalização da solicitação do nível anterior.

Tabelas Utilizadas
    • DDU – Registro de Bloqueios TMS
    • DDV–  Rotinas X Bloqueios
    • DDY–  Aprovadores TMS 

Protótipo de Tela

 Protótipo 01

Image Added

 

Fluxo do Processo

Aprovação Realizada no Fluig

  Image Added

Dicionário de Dados

 

Criação de Campos no arquivo SX3 – Campos:

  • Tabela DDU – Registro de Bloqueios TMS

    Campo

    DDU_INTFLG

    Tipo

    Memo

    Tamanho

    80

    Decimal

    0

    Formato

     

    Título

    Código Fluig

    Descrição

    Código Integração Fluig

    Usado

    Sim

    Obrigatório

    Não

    Browse

    Não

    Contexto

    Real

    Propriedade

    Visualizar

    Ordem

    22

    HelpRecebe os Códigos de Integração Fluig

 

  • Tabela DDV – Rotinas X Bloqueios

    Campo

    DDV_ENVFLG

    Tipo

    Caractere

    Tamanho

    1

    Decimal

    0

    Formato

    @!

    Título

    Envia Fluig

    Descrição

    Envia Workflow Fluig

    Usado

    Sim

    Obrigatório

    Não

    Browse

    Não

    Contexto

    Real

    Propriedade

    Altera

    Conteúdo

    1=Sim, 2=Não

    Ordem6
    HelpEnvia workflow de Liberação para o Fluig

(Opcional)

Estrutura de Menu

 

<Informações utilizadas na linha Datasul>.

 

Procedimentos

 

Procedimento

 

 

 

Descrição

(Max 40 posições)

(Max 40 posições)

(Max 40 posições)

Módulo

 

 

 

Programa base

 

 

 

Nome Menu

(Max 32 posições)

(Max 32 posições)

(Max 32 posições)

Interface

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

Registro padrão

Sim

Sim

Sim

Visualiza Menu

Sim/Não

Sim/Não

Sim/Não

Release de Liberação

 

 

 

 

 

 

Programas

 

Programa

 

 

 

Descrição

(Max 40 posições)

(Max 40 posições)

(Max 40 posições)

Nome Externo

 

 

 

Nome Menu/Programa

(Max 32 posições)

(Max 32 posições)

(Max 32 posições)

Nome Verbalizado[1]

(Max 254 posições)

(Max 254 posições)

(Max 254 posições)

Procedimento

 

 

 

Template

(Verificar lista de opções no man01211)

(Verificar lista de opções no man01211)

(Verificar lista de opções no man01211)

Tipo[2]

Consulta/Manutenção/ Relatório/Tarefas

Consulta/Manutenção/ Relatório/Tarefas

Consulta/Manutenção/ Relatório/Tarefas

Interface

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

Categoria[3]

 

 

 

Executa via RPC

Sim/Não

Sim/Não

Sim/Não

Registro padrão

Sim

Sim

Sim

Outro Produto

Não

Não

Não

Visualiza Menu

Sim/Não

Sim/Não

Sim/Não

Query on-line

Sim/Não

Sim/Não

Sim/Não

Log Exec.

Sim/Não

Sim/Não

Sim/Não

Rotina (EMS)

 

 

 

Sub-Rotina (EMS)

 

 

 

Localização dentro da Sub Rotina (EMS)

 

 

 

Compact[4]

Sim/Não

Sim/Não

Sim/Não

Home[5]

Sim/Não

Sim/Não

Sim/Não

Posição do Portlet[6]

0 – Top Left

1 – Top Right

2 – Bottom Left

3 – Bottom Right

0 – Top Left

1 – Top Right

2 – Bottom Left

3 – Bottom Right

0 – Top Left

1 – Top Right

2 – Bottom Left

3 – Bottom Right

Informar os papeis com os quais o programa deve ser vinculado

 

 

 

 

Cadastro de Papéis

<O cadastro de papéis é obrigatório para os projetos de desenvolvimento FLEX a partir do Datasul 10>.

<Lembrete: o nome dos papeis em inglês descrito neste ponto do documento, devem ser homologados pela equipe de tradução>.

 

Código Papel

(máx 3 posições)

Descrição em Português*

 

Descrição em Inglês*

 

[1] Nome Verbalizado é obrigatório para desenvolvimentos no Datasul 10 em diante.

[2] Tipo é obrigatório para desenvolvimento no Datasul 10 em diante

[3] Categorias são obrigatórias para os programas FLEX.

[4] Obrigatório quando o projeto for FLEX

[5] Obrigatório quando o projeto for FLEX

[6] Obrigatório quando o projeto for FLEX

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.