#06 – WorkFlow de Aprovação de Solicitação de Compras

#06 – WorkFlow de Aprovação de Solicitação de Compras

No post de hoje, estamos encerrando a nossa de série de posts relacionadas a WorkFlow de Aprovação de Solicitação de Compras.

Iremos ensinar, como realizar a rastreabilidade do WorkFlow de Aprovação de Solicitação de Compras (SC).

Para tanto, iremos realizar as seguintes etapas:

  • Criar um campo na Tabela de Solicitações de Compras (SC1) o qual irá armazenar o ID do Processo de WorkFlow;
  • Criar uma Consulta Padrão (SXB) da Tabela SC1, retornando o ID do Processo;
  • Associar essa Consulta Padrão no Cadastro de Processo do WorkFlow;
  • Realizar uma alteração no nosso fonte de envio de WorkFlow (SSCOM002) para armazenar o ID de Processo na Tabela SC1;

A primeira coisa que temos que fazer, é acessar o Módulo Configurador (SIGACFG), e criar o campo C1_WFID com as seguintes configurações:

CampoTipoTam.Dec.FormatoContextoPrioridadeTituloDescrição
C1_WFID1 - Caracter10001 - Real2 - VisualizarID WF SCID WorkFlow SC

Agora vamos criar a Consulta Padrão (SXB), com os dados da Tabela SC1, porém que retorne o Campo do ID do WorkFlow (C1_WFID), que acabamos de criar.

Para criar tal consulta, acesse o Módulo Configurador, navegue até a opção de Consulta Padrão, e crie a consulta, com o nome WFSC1, com as seguintes configurações:

Nome Consulta Padrão - WFSC1 - Smart SigaImagem 01 – Nome Consulta Padrão – WFSC1 – Smart Siga
Tabela Consulta Padrão - WFSC1 - Smart SigaImagem 02 – Tabela Consulta Padrão – WFSC1 – Smart Siga
Indices e Campos Consulta Padrão - WFSC1 - Smart SigaImagem 03 – Índices e Campos Consulta Padrão – WFSC1 – Smart Siga
Retorno Campo Consulta Padrão - WFSC1 - Smart SigaImagem 04 – Retorno Campo Consulta Padrão – WFSC1 – Smart Siga

Agora vamos associar nossa Consulta Padrão WFSC1, no Processo de WorkFlow. Para realizar tal cadastro, ainda no Módulo Configurador, navegue até o seguinte caminho:

Ambiente -> WorkFlow -> Processos de WorkFlow

Altere o processo SCCOM, e no Campo “Pesq Padrao” (box vermelho), selecione a Consulta WFSC1, conforme imagem abaixo:

Pesquisa Padrão WFSC1 - Processos de WorkFlow - Smart SigaImagem 05 – Pesquisa Padrão WFSC1 – Processos de WorkFlow – Smart Siga

Agora acesse o fonte SSCOM002, localize a Static Function SSCOM002WK, e dentro do laço (While) onde é preenchido as informações dos produtos no HTML, inclua as seguintes instruções:

RecLock("SC1", .F.)

SC1->C1_WFID := oProcess:fProcessID

SC1->(MsUnLock())
Fonte 01 – Gravação ID Processo de WorkFlow – Smart Siga

Após incluir tais comandos, a instrução completa de preenchimento das informações dos Produtos (While), ficará da seguinte forma:

// Preencha o Arquivo HTML com as Informacoes da SC
While !SC1->( EOF() ) .And. (SC1->C1_FILIAL == FwFilial("SC1") .And. SC1->C1_NUM == cNumSC)		

  AADD( ( oHtml:ValByName( "TB.Item"   ))   , SC1->C1_ITEM    )
  AADD( ( oHtml:ValByName( "TB.Codigo" ))   , SC1->C1_PRODUTO )
  AADD( ( oHtml:ValByName( "TB.Descricao" )), SC1->C1_DESCRI + " " + SC1->C1_OBS )
  AADD( ( oHtml:ValByName( "TB.Qtd" ))	    , Transform( SC1->C1_QUANT,'@E 999,999.99' ) )
  AADD( ( oHtml:ValByName( "TB.Unid" ))     , SC1->C1_UM  )

  //Criar a Cor das Linhas em Zebrado atraves da verificacao se a Linha é Par ou Impar
  If (Val(SC1->C1_ITEM)%2) = 0
    AADD(oHTML:ValByName('TB.Fundo'),"#FFFFFF")
  Else
    AADD(oHTML:ValByName('TB.Fundo'),"#f3f3f3")

  EndIf
    
  RecLock("SC1", .F.)
    
  SC1->C1_WFID := oProcess:fProcessID
    
  SC1->(MsUnLock())

  SC1->(DbSkip())

EndDo
Fonte 02 – Instrução de Preenchimento das Informações de Produtos e Gravação do ID de Processo do WorkFlow – Smart Siga

Após realizar as alterações acima, basta compilar o fonte.

Para que seja possível rastrear o WorkFlow de Aprovação de Solicitação de Compras, acesse o Módulo de Compras, e navegue até o seguinte caminho:

Miscelanea -> WorkFlow -> Rastreabilidade

Ao acessar tal rotina, será aberta a seguinte tela:

WorkFlow de Aprovação de Solicitação de ComprasImagem 06 – Rastreabilidade WorkFlow de Aprovação de Solicitação de Compras – Smart Siga

Agora basta selecionar a Consulta Padrão WFSC1 no Combo “Pesq Padrao” (box vermelho) e no campo “Processo” (box verde), selecionar a SC deseja, que o Protheus irá trazer o passo a passo realizado no WorkFlow de Aprovação de Solicitação de Compras. Podemos verificar como é exibida tais informações na imagem abaixo:

Rastreabilidade Finalizada WorkFlow de Aprovação de Solicitação de Compras - Smart SigaImagem 07 – Rastreabilidade Finalizada WorkFlow de Aprovação de Solicitação de Compras – Smart Siga

No vídeo abaixo, demonstramos o funcionamento completo do processo WorkFlow de Aprovação de Solicitação de Compras no Protheus, após nossos 06 (seis) posts:

Vídeo 01 – WorkFlow de Aprovação de Solicitação de Compras – Smart Siga

Para baixar o fonte de envio e recebimento do WorkFlow atualizado, diretamente do nosso GitHub, clique aqui.

Com isso finalizamos nossa série de posts relacionados ao WorkFlow de Aprovação de Solicitação de Compras.

Nós do Canal Smart Siga esperamos que nossos amigos analistas tenham conseguido usufruir dessa customização que automatiza as tarefas de aprovação nas empresas, e que agrega muito valor ao trabalho dos Analista.

Caso queiram verificar todos os posts relacionados a WorkFlow no Protheus, basta clicar aqui.

Caso ainda não tenham se inscrito no Canal Smart Siga, ou em nossas mídias sociais, ou em nosso GitHub, aproveitem para se cadastrar agora, pois assim, vocês recebem em primeira mão, todas as novidades do nosso site.

Aproveitem também, para ingressar em nosso Canal do Smart Siga no Telegram. Para tanto acessem: https://t.me/smartsiga.

Smart Siga - TI Inteligente

 

 

Icons made by Prosymbols from www.flaticon.com is licensed by CC 3.0 BY

Compartilhe:
  •  
  •  
  •  

6 thoughts on “#06 – WorkFlow de Aprovação de Solicitação de Compras

    1. Boa noite Vitor,

      Muito obrigado pelo seu comentário.

      Quem bom que nossos posts estão sendo úteis.

      Abs,

      Cristian Regazzo
      Smart Siga
      TI Inteligente

  1. Cristian,
    Ficaram ótimo os posts… Parabéns!!!
    Ajudou muito!
    Só estou apanhando de um problema neste ultimo fonte.
    variable is not an object on SSCOM002WK(SSCOM002.PRW) 16/08/2018 11:27:55 line : 55
    Qual seria a solução?

    Desde já obrigado!

    1. Boa Tarde Marciel,

      Obrigado por nos acompanhar e obrigado pelo seu comentário.

      Normalmente esse erro acontece pois os arquivos HTML’s disponibilizados no post, não estão na pasta “workflow”, localizada dentro da “Protheus_Data”.

      Abs,

      Smart Siga
      TI Inteligente.

  2. Fiz todo o processo, está muito bem explicado, só fiquei com uma duvida, como configurar o INI para fazer essa comunicação, para aprovar a partir do link que eu envio para o e-mail.
    Att

    1. Boa Tarde Witallo, tudo bem?

      Obrigado por nos acompanhar e obrigado pelo seu comentário.

      Em relação a execução do HTML no navegador, basta configurar a chave HTTP no AppServer.ini, conforme explicado nos posts, e configurar o parâmetro MV_WFWEBEX para False (.F.).

      Segue a configuração básica da chave HTTP, no AppServer.ini:

      [HTTP]
      RPCEnv=P12
      enable=1
      path=C:\Totvs\TOTVS12\Microsiga\Protheus\Protheus_Data
      port=1236

      Abs,

      Smart Siga
      TI Inteligente

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Seja um Analista VIP!!!

Recebe em primeira mão as novidades do Canal Smart Siga, além de conteúdos exclusivos.