Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|
Informações Gerais
Especificação | |||
Produto | Microsiga Protheus | Módulo | SIGAGFE |
Segmento Executor | Supply Chain - Logística | ||
Projeto1 | M_DL_GFE002 | IRM1 | PCREQ-9315 |
Requisito1 | PCREQ-9319 | Subtarefa1 | PDRDL-2428 |
Chamado2 | |||
País | ( X ) Brasil ( ) Argentina ( ) México ( ) Chile ( ) Paraguai ( ) Equador( ) USA ( ) Colômbia ( ) Outro _____________. | ||
Outros |
Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos).
Objetivo
Desenvolver a estrutura para a integração de Documentos de Fretes e Faturas com o módulo MLA do ERP Datasul.
Definição da Regra de Negócio
O Módulo de MLA (Módulo Logístico de Aprovação) permite controlar eletronicamente a aprovação de documentos, conforme parametrização. Por seu intermédio é permitido ao aprovador visualizar as principais informações do documento e aprová-lo pelo e-mail (Microsoft Outlook ou Lotus Notes) ou pelo Portal do MLA, sem necessariamente acessar o ERP.
Este módulo também permite a aprovação de diversos tipos de documentos do Datasul-EMS, inclusive os que estiverem sendo controlados por rotinas específicas, ou seja, documentos específicos.
Por meio deste requisito será possível utilizar o módulo para a aprovação de documentos de frete e faturas criadas no SIGAGFE e bloqueadas pelo processo de Auditoria. Para tanto, serão criados dois novos tipos de documento no MLA, denominados:
- Documento de fretes, código 030
- Fatura de fretes, código 031.
As chaves definidas para esses documentos serão:
INI | FIM | DESCRIÇÃO | |
---|---|---|---|
30 - Documento de Fretes | 1 | 5 | Cod. Estabel |
6 | 10 | Espécie Docto | |
11 | 20 | Transportador | |
21 | 24 | Serie | |
25 | 31 | nr. doc. frete | |
32 | 39 | Dt. Emissão |
INI | FIM | DESCRIÇÃO | |
---|---|---|---|
31 - Fatura de Fretes | 1 | 5 | Cod. Estabel |
6 | 14 | Transportador | |
15 | 19 | Série | |
20 | 30 | Nr. Fatura | |
31 | 39 | Dt. Emissão |
Referência:
- A referência poderá ser utilizada como diferencial de aprovação do documento e, para os documentos de frete e faturas será utilizado o Transportador, permitindo assim um direcionamento da aprovação particular entre as documentos de cada fornecedor de serviço de fretes.
- A integração da negociação será efetuada via WebService Protheus, seguindo o modelo atual de integração entre ERP TOTVS 12/Datasul e SIGAGFE para os processos de frete, passando pelas etapas de Solicitação dos registros pendentes - Recebimento e processamento > Execução Integração MLA (API) > Retorno das informações.
- Nos programas de solicitação de registros para integração, CD0433, CDF433 e CDF433RP, será efetuada a chamada para a API que gera a pendência do documento no MLA, e aguarda a aprovação.
- Utilizando o processo de aprovação do MLA, as aprovações podem ser realizadas de diversas formas:
- Pelo Progress (MLA0301).
- Aprovação por e-mail.
- Pelo portal do MLA (HTML).
- Utilização da tela HTML do MLA dentro do Fluig.
- Para o retorno destas aprovações ou rejeições ao módulo SIGAGFE é necessária a criação dos programas de aprovação/rejeição, os quais executam a atualização no módulo de origem, assim que ocorrer a aprovação ou rejeição do documento no MLA. Estes programas contém as chamadas para os métodos de alteração do registro no SIGAGFE, não aguardando a execução pelo CD0433. Esses programas são cadastrados no MLA0101 – Tipos de Documentos.
- Serão realizadas implementações no programa MLA0122 – Inclusão Facilitada Tipo Documento, para que os novos documentos e suas chaves possam ser gerados de forma automatizada pelo usuário.
- Também serão desenvolvidos novos programas para a consulta da pendência pelo programa MLA0301, para aprovação no Portal HTML e Aprovação por e-mail.
- Os documentos de frete e faturas aprovadas pelo sistema SIGAGFE e que não necessitam de aprovação no MLA serão integrados apenas para a visualização nos respectivos programas de consulta dos documentos 30 e 31.
Rotina | Tipo de Operação | Opção de Menu | Regras de Negócio |
cdp\cd0089.w - Parâmetros de integração EMS x GFE | Alteração | Logística > Gestão de Frete Embarcador > Tarefas | - |
cdp\cd0433.W – Monitor Integração GFE | Alteração | Logística > Gestão de Frete Embarcador > Tarefas | - |
cdp\cdf433.P - Agent Listener GFE | Alteração | NA | - |
cdp\cdf433RP.P - integração via RPW | Alteração | NA | - |
cdp\cdf433.i12 - Integração | Criação | NA | - |
laphtml\ mlahtml030e.p - Aprovação por e-mail | Criação | NA | - |
lapepc\mla030.p - Retorno da aprovação | Criação | NA | - |
MLA0122 - Inclusão Facilitada | Alteração | NA | - |
laphtml\mlahtml030p.p - Novo portal MLA | Criação | NA | - |
laphtml\mlahtml031e.p - Aprovação por e-mail | Criação | NA | - |
lapepc\mla031.p - Retorno da aprovação | Criação | NA | - |
laphtml\mlahtml031p.p - Novo portal MLA | Criação | NA | - |
cdp\cdf007.w | Criação | NA | - |
cdp\cdf008.w | Criação | NA | - |
lapcons\mlacons030.p | Criação | NA | - |
lapcons\mlacons031.p | Criação | NA | - |
CD0089:
- Criar novos parâmetros de integração para cada processo de aprovação do GFE no MLA, na pasta Integrações, seção Processos (GFE para Datasul). Salvar a opção na tabela tab-generica, utilização SETUP nas posições:
- Aprov. Docto Frete (MLA) - substring(tab-generica.char-2,705,1)
- Aprov. Fatura Frete (MLA) -substring(tab-generica.char-2,706,1)
CD0433.W, CDF433.P, CDF433RP.P:
- Neste programas, serão criadas as chamadas para a include CDF433.I12, que fará a interpretação da mensagem enviada pelo GFE e a chamada da include de integração com o MLA.
- Este programa segue o padrão de integração de outros processos do SIGAGFE com o ERP TOTVS 12 / Datasul (Ex.: cdf433.i3).
- A chamada será condicionada ao campo de integração das Aprovações logísticas via MLA, no cabeçalho do CD0433 ou nos parâmetros de entrada do CDF433 e CDF433RP.
- A chamada do registro altera a situação do campo GV9_SITMLA para 7-Enviado/aguardando aprovação, para evitar que seja chamado constantemente pelo Listener.
- Incluir na tela do programa CD0433 a opção para assinar a integração com o MLA, campo Aprovação Log. (MLA), conforme protótipo de tela apresentado na respectiva seção.
CDP\CDF433.i12
- Este programa será o responsável por receber a informação enviada do GFE e seu processamento para o envio correto das informações solicitadas pela API de integração MLAAPI001.Ele segue o padrão de estrutura de integrações do SIGAGFE com o ERP TOTVS 12 / Datasul (Ex.: cdf433.i3).
- As informações enviadas pelo WebService do SIGAGFE para o MLA terá a estrutura do documento de frete e será necessária a quebra dos registro para a chamada do programa de integração:
#GW3|GW3_FILIAL|GW3_CDESP|GW3_EMISDF|GW3_SERDF|GW3_NRDF|GW3_DTEMIS|GW3_TPDF|GW3_DTENT|GW3_CFOP|GW3_SIT|GW3_USUIMP|GW3_CDREM|GW3_CDDEST|GW3_VLDF|GW3_TAXAS|GW3_FRPESO|GW3_FRVAL|GW3_PEDAG|GW3_QTDCS|GW3_QTVOL|GW3_VOLUM|GW3_PESOR|GW3_PESOC|GW3_VLCARG|GW3_TPIMP|GW3_TRBIMP|GW3_BASIMP|GW3_PCIMP|GW3_VLIMP|GW3_CTE|GW3_MOTBLQ|GW3_DTBLQ|GW3_USUBLQ|GW3_ORIGEM|GW3_TPCTE|GW3_SITMLA|
- As informações da Fatura de frete enviados para o WebService serão:
#GW6|GW6_FILIAL|GW6_EMIFAT|GW6_SERFAT|GW6_NRFAT|GW6_DTEMIS|GW6_VLFATU|GW6_VLDESC|GW6_VLICMS|GW6_VLICRE|GW6_VLISS|GW6_VLISRE|GW6_VLJURO|GW6_DTCRIA|GW6_DTVENC|GW6_ORIGEM|GW6_SITAPR|GW6_DTBLOQ|GW6_HRBLOQ|GW6_USUBLO|GW6_MOTBLO|GW6_OBS|GW6_SITMLA|
- O programa chama em seguida a API de criação de pendência de negociações de frete no MLA - mlaapi001.p, passando os parâmetros abaixo informados na tabela de parâmetros do programa MLAAPI001.
- Como o processo de aprovação no MLA não prevê documentos de outros sistemas, fora das tabelas do TOTVS12 / Datasul, será necessário gravar um registro na tab-generica com os dados que serão utilizados para apresentação no e-mail de aprovação, programa de consulta e no detalhamento do documento no portal MLA.
- A criação do registro na tab-generica terá a utilização = "GFE_MLA_GW3", para documentos de fretes e utilização = "GFE_MLA_GW6" para as faturas de fretes, gravando a chave do registro no campo char-1 e os demais da estrutura no char-2.
- O retorno da temp-table tt-erro deve ser direcionado para o GFE para ser gravado nos respectivos campos de motivo de rejeição "GW3_MOTMLA" ou "GW6_MOTMLA", conforme o tipo de documento em aprovação.
- Para a criação da pendência de aprovação no MLA, deve-se confirmar se o documento em questão está bloqueado no GFE, verificando se o campo GW3_SIT ou GW6_SITAPR foi enviado com o valor 2 (bloqueado).
- Outro valor possível para os campos anteriormente citados será 3=Aprovado Sistema. Neste caso, apenas deve ser gerado o registro na Tab-generica para futura consulta dos documentos no MLA e retornado ao GFE, pela função setdataws, retornando o valor 4=Atualizado.
- A sintaxe para a chamada da API (baseada no documento MLAAPI001 - API - Geração de pendência de aprovação (MLA) ):
Tabela de Parâmetros - MLAAPI001
Parâmetro | Tipo | Formato | Descrição | Entrada/Saída |
i-cod-tip-doc | Inteiro | >>9 | Código do tipo do documento para o qual deve ser gerada, alterada ou eliminada a(s) pendência(s) Utilizar: 30 para Documentos de fretes e 31 para Faturas de fretes. | Entrada |
i-tipo-trans | Inteiro | 9 | Transação que está sendo realizada (criação, alteração ou eliminação) Utilizar: 1 – Inclusão 2 – Modificação 3 – Eliminação | Entrada |
c-motivo | Caractere | x(40) | “Aprovação de processos de fretes” | Entrada |
de-valor | Decimal | ->>,>>>,>>9.99 | Doc. frete: GW3_VLDF Fatura: GW6_VLFATU | Entrada |
i-moeda | Inteiro | >9 | 0 | Entrada |
c-usuar-trans | Caractere | x(12) | Doc. frete: GW3_USUBLQ Fatura: GW6_USUBLO | Entrada |
c-usuar-doc | Caractere | x(12) | Doc. frete: GW3_USUIMP Fatura: GW6_USUBLO | Entrada |
c-lotacao-doc | Caractere | x(20) | “ ” | Entrada |
c-item | Caractere | x(16) | “ ” | Entrada |
c-referencia | Caractere | x(20) | GW3_EMISDF GW6_EMIFAT | Entrada |
c-ep-codigo | Caractere | x(3) | Empresa corrente | Entrada |
c-cod-estabel | Caractere | x(5) | Estabelecimento para o qual a pendência será gerada. – GW3_FILIAL / GW6_FILIAL | Entrada |
tt-mla-chave | Temp-table | Informações da chave do documento. Enviar cada um dos registros de chave do documento como um registro diferenciado de "extent" na temp-table. (input table tt-mla-chave) | Entrada | |
tt-erro | Temp-table | Retorno de erros do MLA | Saída |
- Após a criação da pendência de aprovação no MLA, enviar mensagem ao GFE para alterar a situação do campo GW3_SITMLA ou GW6_SITMLA para 7-Enviado/aguardando aprovação, pela função setdataws.
- Esta alteração é necessária para que o registro não seja chamado novamente pelo WebService enquanto não for aprovado ou rejeitado no MLA.
laphtml\ mlahtml030e.p :
- Quando forem geradas as pendências de aprovação, o usuário receberá em seu e-mail o HTML com as informações do documento em questão e opções para aprovação (Para este processo é necessário configurar o usuário para o recebimento do e-mail).
- O programa MLAHTML030e terá a função de criação e envio do e-mail aos usuários cadastrados como aprovadores da pendência de negociação de fretes, sendo que este deve possuir os seguintes parâmetros:
- Código do tipo do documento (INTEGER - INPUT).
- Código do aprovador (CHARACTER - INPUT).
- Chaves do documento - tt-mla-chave (TEMP-TABLE - definição na include: lap/mlaapi001.i99 -INPUT).
- HTML do e-mail - tt-html (TEMP-TABLE - definição na include: laphtml/mlahtml.i - OUTPUT).
- Neste programa será estruturado o e-mail de aprovação, no formato'.html, com as informações do documento de fretes.
- Apresentar as informações disponíveis no registro da tab-genérica.utilização = "GFE_MLA_GW3", criada no programa cdf433.i12 com os dados enviados pelo SIGAGFE.
laphtml\ mlahtml031e.p :
- Este programa trata da criação e envio do e-mail aos usuários cadastrados como aprovadores da pendência de faturas de fretes, sendo que este possui os mesmos parâmetros definidos para o programa MLAHTML030E.
- Apresentar as informações disponíveis no registro da tab-genérica.utilização = "GFE_MLA_GW6", criada no programa cdf433.i12 com os dados enviados pelo SIGAGFE.
lapepc\mla030.p :
- Programa para tratamento e envio do retorno da aprovação ou rejeição de documento de frete efetuado pelo usuário no MLA.
- Este programa será executado quando o usuário aprovador realizar a intervenção na pendência de fretes no MLA e deve ser cadastrado no programa MLA0101 (DMLA0006 - Quais informações devem ser preenchidas no programa MLA0101?).
- A ação do usuário sobre a pendência deve ativar a chamada para a função do WebService Protheus setdataws, passando a atualização do registro no GFE.
- Segue a estrutura utilizadas nas integrações de processos do SIGAGFE no Datasul, como a integração de doc. frete com fiscal, por exemplo (cdp/cdf433.i2).
lcTabela := "GW3"
lcIntegracao := '6'
cRetornoToSetData := Cod. Estabel ; Espécie doc.; Transportador ; Serie ; Nr. doc. frete ; Dt. Emissão ; Situação da integração(3=Rejeitado ou 4=Aprovado) ; Motivo aprovação/rejeição ; Data Aprov. MLA ; User Aprov. MLA ; Observacao ;
cSetData := Cod. Estabel ; Espécie doc.; Transportador ; Serie ; Nr. doc. frete ; Dt. Emissão ;
- Exemplo.: RUN setdataws IN hcdf600(INPUT lcTabela, INPUT lcIntegracao, INPUT cRetornoToSetData, INPUT cSetData).
lapepc\mla031.p :
- Tem a mesma função do Programa mla030.p, porém voltado para o tratamento e envio do retorno da aprovação ou rejeição de faturas de frete no MLA.
- Será executado quando o usuário aprovador realizar a intervenção na pendência de fatura de fretes no MLA e deve ser cadastrado no MLA0101 (DMLA0006 - Quais informações devem ser preenchidas no programa MLA0101?).
- Chama a função do Web Service Protheus setdataws, passando a atualização do registro no GFE. Passa os parâmetros de retorno:
lcTabela := "GW6"
lcIntegracao := '6'
cRetornoToSetData := Cod. Estabel ; Transportador ; Série ; Nr. Fatura ; Dt. Emissão ; Situação da integração(3=Rejeitado ou 4=Aprovado) ; Motivo aprovação/rejeição ; Data Aprov. MLA ; Hr. Aprov. MLA ; User Aprov. MLA ;
cSetData := Cod. Estabel ; Transportador ; Série ; Nr. Fatura ; Dt. Emissão;
- Exemplo.: RUN setdataws IN hcdf600(INPUT lcTabela, INPUT lcIntegracao, INPUT cRetornoToSetData, INPUT cSetData).
- Observação: Tratar o erro do WebService para não permitir a aprovação da pendência quando retornar erro de comunicação.
MLA0122 - Inclusão Facilitada:
- Será alterado o programa MLA0122, programa de inclusão facilitada da pendência de aprovação, para que os documentos de frete e faturas e suas chaves possam ser gerados de forma automatizada pelo usuário.
- A exemplo dos demais tipos de documentos do MLA, criar o bloco de tratamento para os documentos de tipo 30 e 31.
laphtml/mlahtml030p.p
- Programa Progress que retornará os dados para a interface HTML (tanto para a listagem de documentos, quando para o detalhamento).
- Para a construção desse programa utilizar os programas laphtml/mlahtml000p.p e laphtml/mlahtml000p.i como exemplo (que estão expedidos com fonte aberto). Eles contêm orientações e exemplos para construção deste programa.
- Criar os HTMLs que funcionem de forma responsiva, para que possam ser executados em dispositivos móveis também.
- A estrutura do programa deve seguir o padrão orientado pela equipe de desenvolvimento do módulo MLA, documentado em: DMLA0026 - Como criar documentos para o novo portal do MLA ou customizar existentes a partir da versão 12.1.8.
- Estrutura de apresentação do documento de negociação de fretes no Portal:
- Dados principais (lista de pendências):
- Filial
- Solicitante (usuário de criação da pendência)
- Data da solicitação (solicitação da pendência)
- Transportador
- Nr. do Doc. Frete
- Espécie do doc.
- Valor do documento de frete
- Detalhamento:
- Apresenta os valores do comparativo de fretes x doc. frete.
- Dados principais (lista de pendências):
laphtml/mlahtml031p.p
- Programa com a mesma funcionalidade do mlahtml030, porém, voltado para a aprovação das faturas de frete pendentes.
- Utilizar o mesmo padrão de desenvolvimento do mlahtml030.
- A estrutura do programa deve seguir o padrão orientado pela equipe de desenvolvimento do módulo MLA, documentado em: DMLA0003_Como_criar_documentos_para_o_novo_portal_do_MLA_ou_customizar_existentes_(a_partir_12.1.8).
- Estrutura de apresentação do documento de negociação de fretes no Portal:
- Dados principais (lista de pendências):
- Filial
- Solicitante
- Data da solicitação
- Transportador
- Série
- Nr. Fatura
- Dt. Emissão
- Valor da fatura.
- Detalhamento:
- Apresenta o detalhamento dos valores da fatura x pré-fatura (quando houver) ou os dados da fatura somente.
- Dados principais (lista de pendências):
CDP/CDF007.W:
- Criar novo programa para a consulta da pendencia de aprovação de documento de fretes no MLA0301.
- O programa apresentará as informações do documento de frete enviado pelo SIGAGFE e gravadas na tab-generica (#GW3). Serão as mesmas visualizadas no recebimento do e-mail ou no portal.
- Este programa poderá ser acessado pelos programas CD0433 - Monitor Integração ou por acesso direto pela chamada (nome do programa).
- Verificar sugestão de tela apresentada na seção Protótipo de tela.
CDP/CDF008.W:
- Criar novo programa para a consulta da pendencia de aprovação de faturas de fretes no MLA0301.
- O programa apresentará as informações da fatura de frete enviada pelo SIGAGFE e gravadas na tab-generica (#GW6). Serão as mesmas visualizadas no recebimento do e-mail ou no portal.
- Este programa poderá ser acessado pelos programas CD0433 - Monitor Integração ou por acesso direto pela chamada (nome do programa).
- Verificar sugestão de tela apresentada na seção Protótipo de tela.
lapcons/mlacons030.p
- Programa de consulta de que deverá ser cadastrado no MLA0121.
- Este programa será chamado pelas rotinas do MLA: MLA0301 - Aprovação de Pendências e MLA0201 - Consulta de Pendências.
- Internamente chama a rotina cdp\cdf007.w, posicionando a tab-generica conforme o Rowid da pendência que é passado como parâmetro pelos programas mencionados acima.
lapcons/mlacons031.p
- Programa de consulta de que deverá ser cadastrado no MLA0121.
- Este programa será chamado pelas rotinas do MLA: MLA0301 - Aprovação de Pendências e MLA0201 - Consulta de Pendências.
- Internamente chama a rotina cdp\cdf008.w, posicionando a tab-generica conforme o Rowid da pendência que é passado como parâmetro pelos programas mencionados acima.
Observação.:
Atualizar a documentação no TDN:
DMLA0006 - Quais informações devem ser preenchidas no programa MLA0101?
DMLA0005 - Quais informações devem ser preenchidas no programa MLA0102?
DMLA0027 - Quais são as informações consideradas como referência para os documentos do MLA?
Tabelas Utilizadas
tab-genérica
Protótipo de Tela
CD0433 - Monitor Integração - EMS x GFE
CD0089 - Parâmetros Integração - EMS x GFE
CDF007 - Consulta de Documentos de Frete MLA
CDF008 - Consulta de Faturas de Fretes
Programas
Programa | cdf433.i12 | mlahtml030e.p | mla030.p | mlahtml030p.p | mlahtml031e.p | mla031.p | mlahtml031p.p | mlacons030p.p | mlacons031p.p |
Descrição | Integração Doc. e Fatura de frete com MLA. | E-mail de aprovação Doc. frete via MLA. | Aprovação de documentos de frete e faturas. | Aprov Doc. frete portal MLA. | E-mail de fatura de frete via MLA. | Aprovação de faturas de frete. | Aprov fatura de frete no portal MLA. | Programa de consulta do documento tipo 30 para cadastro no mla0121. | Programa de consulta do documento tipo 31 para cadastro no mla0121. |
Nome Externo | cdp\cdf433.i12 | laphtml\ mlahtml030e.p | lapepc\mla030.p | laphtml/mlahtml030p.p | laphtml\ mlahtml031e.p | lapepc\mla031.p | laphtml/mlahtml031p.p | lapcons/mlacons030.p | lapcons/mlacons031.p |
Nome Menu/Programa | - | - | - | - | - | - | - | - | - |
Nome Verbalizado[1] | - | - | - | - | - | - | - | - | - |
Procedimento | CDF433 | mla0301 | mla0301 | mla0301 | mla0301 | mla0301 | mla0301 | mlacons030 | mlacons031 |
Template | - | - | - | - | - | - | - | - | - |
Tipo[2] | Tarefas | Tarefas | Tarefas | Tarefas | Tarefas | Tarefas | Tarefas | Tarefas | Tarefas |
Interface | GUI | GUI | GUI | GUI | GUI | GUI | GUI | GUI | GUI |
Categoria[3] |
|
|
| ||||||
Executa via RPC | Não | Não | Não | Não | Não | Não | Não | Não | Não |
Registro padrão | Sim | Sim | Sim | Sim | Sim | Sim | Sim | Sim | Sim |
Outro Produto | Não | Não | Não | Não | Não | Não | Não | Não | Não |
Visualiza Menu | Não | Não | Não | Não | Não | Não | Não | Não | Não |
Query on-line | Não | Não | Não | Não | Não | Não | Não | Não | Não |
Log Exec. | Não | Não | Não | Não | Não | Não | Não | Não | Não |
Rotina (EMS) |
|
|
| ||||||
Sub-Rotina (EMS) |
|
|
| ||||||
Localização dentro da Sub Rotina (EMS) |
|
|
| ||||||
Compact[4] | Não | Não | Não | Não | Não | Não | Não | Não | Não |
Home[5] | Não | Não | Não | Não | Não | Não | Não | Não | Não |
Posição do Portlet[6] | |||||||||
Informar os papéis com os quais o programa deve ser vinculado |
|
|
|