Integracao ProtheusxGFE
Integracao ProtheusxGFE
Integracao ProtheusxGFE
Julho/2015
1
Sumrio
2
1. Contexto de Negcio (Introduo)
A integrao de dados entre rotinas do ERP Microsiga Protheus e o mdulo SIGAGFE utilizando comunicao direta entre as
rotinas, sem aplicativos intermedirios e sem trfego de dados no formato XML. O ponto de integrao para Simulao de Fretes
no Pedido de Venda j utiliza comunicao direta, por isso no necessitar interveno. Sero mantidas as regras de negcio
atuais da integrao, alterando-se apenas o modelo de troca de dados.
A integrao visa manter os dados cadastrais do ERP, quando necessrio, sincronizados ao GFE; manter os dados relacionados
a documentos, custos e despesas com transporte, integrados aos demais mdulos do software ERP; e possibilitar a simulao do
preo do frete durante os processos do ERP (pedidos de venda, pedidos de compra, faturamento etc.) nos quais essa informao
possa ser necessria.
2. Sistemas Envolvidos
3. Integrao
Modelo alterado
3
Lista dos pontos de integrao de dados do ERP para o SIGAGFE.
Em cada um dos programas haver uma funo para integrao, a ser executada por cada evento listado, com a finalidade de
montar a lista de informaes a serem enviadas (vide de-para de campos na sequncia desta especificao) para o objeto de
negcio (model) indicado. Sero utilizadas as operaes padres de manuteno de registros da tcnica MVC com o respectivo
tratamento do retorno de mensagens de erro. A execuo da funo ser condicionada aos parmetros MV_INTGFE e
MV_INTGFE2.
Em cada um dos programas ser implementada a execuo (MSEXECAUTO) do objeto de negcio correspondente do ERP,
enviando a lista de informaes (vide de-para de campos na sequncia desta especificao) necessrias incluso ou eliminao
4
de registros com o respectivo tratamento do retorno de mensagens de erro. As mensagens de erro ficaro registradas em campo
descritivo dos prprios registros do SIGAGFE e para cada integrao h um campo de controle indicando o estado: No-
integrado, Pendente, Rejeitado, Atualizado e Pendente de Cancelamento. Com a alterao do modelo de integrao os estados
Pendente e Pendente Cancelamento tornam-se obsoletos pois o resultado da integrao ser conhecido logo aps o evento de
Envio para ERP.
Rotina/Entidade
01 (SX5) Sries de Notas Fiscais
EICA100 Pases
12 (SX5) Unidades de Federao
QIEA030 Unidades de Medida
(SAH)
Regras Gerais
a. Todas as integraes esto condicionadas ao parmetro MV_INTGFE; o contedo .T. indica que a integrao est
ativa;
b. A integrao direta, sem o uso de EAI e TOTVSESB est condicionada ao parmetro MV_INTGFE2; os contedos
1 ou S indicam que a integrao entre os mdulos do ERP base e o SIGAGFE direta;
a. No SIGAGFE h dois parmetros que indicam a origem dos cadastros (ERP ou SIGAGFE): MV_CADERP
(Municpios, Emitentes, Contas Contbeis e Centros de Custo) e MV_CADOMS (Tipos de Veculo, Veculos e
Motoristas); o controle separado porque algumas empresas no utilizam o SIGAOMS;
b. Os cadastros integrados entre ERP e SIGAGFE permitem incluso apenas pelo ERP;
c. O SIGAGFE no permite eliminar os registros de cadastros recebidos do ERP; esse comportamento condicionado
ao parmetro MV_CADERP = 1=ERP (ou MV_CADOMS = 1=OMS);
d. O SIGAGFE restringe a alterao dos registros de cadastros recebidos do ERP apenas aos campos prprios do
SIGAGFE (que complementam os dados recebidos do ERP e so utilizados apenas pelo SIGAGFE); esse
comportamento condicionado ao parmetro MV_CADERP = 1=ERP (ou MV_CADOMS = 1=OMS);
e. A eliminao de registros de cadastros no ERP altera a situao do registro no SIGAGFE para Inativo, sem
elimin-lo. Dessa forma no h impedimento para eliminao no ERP mesmo que o registro possua
relacionamentos ativos com outras entidades do SIGAGFE. Ao incluir novamente um registro anteriormente
eliminado (com a mesma identificao nica), a integrao retorna o registro no SIGAGFE para a situao Ativo. A
situao Inativo impede que o registro seja relacionado a novos processos no SIGAGFE (um motorista Inativo
no pode ser informado em uma nova montagem de Romaneio, por exemplo);
f. Apenas o evento de eliminao altera a situao (Ativo/Inativo) dos registros dos cadastros integrados; esse
comportamento condicionado ao parmetro MV_CADERP = 1=ERP (ou MV_CADOMS = 1=OMS);
g. As operaes de incluso e alterao, dos cadastros integrados, no so completadas se houver erro de validao
na integrao com GFE; o usurio recebe uma mensagem informando quais so as inconsistncias e assim avaliar
como proceder corretamente com a operao.
5
3.3. Registros de Processos enviados pelo ERP
a. O parmetro MV_FATGFE permite configurar se a concluso da emisso de Notas Fiscais depende do xito da
integrao com o SIGAGFE; a rotina de integrao das Notas Fiscais com Erro de Integrao permite realizar a
integrao posteriormente, amparando a existncia desta opo;
b. A eliminao da Nota Fiscal s concluda com sucesso se no houver erro de validao na integrao com o
SIGAGFE; podem ser requeridos ao usurio procedimentos no SIGAGFE para que no hajam restries no
SIGAGFE (a fim de impedir que sejam canceladas Notas Fiscais que j foram expedida, por exemplo) e a
eliminao ocorra com xito.
a. Os dados gerados pelo GFE no ERP no pemitem eliminao pelo ERP, somente alterao. A eliminao deve ser
solicitada pelo SIGAGFE (que executa a integrao para eliminar o registro no ERP e retorna o registro da entidade
de origem no SIGAGFE para a situao No-integrado);
b. O SIGAGFE no envia alterao de dados, apenas incluso e eliminao; no caso de necessidade de quaisquer
alteraes deve-se acionar a ao Desatualizar ERP no SIGAGFE sobre o respectivo registro que dessa forma
pode ser alterado e posteriormente enviado novamente para o ERP.
Os campos que compem a identificao nica do registro esto destacados com asterisco. Os campos no indicados na tabela
de correspondncia devem assumir (na operao de incluso) o valor inicial indicado no dicionrio de dados (ao executada
automaticamente pelo model). Nas alteraes de registros os dados que no so atribudos pela integrao devem ser
preservados. A correspondncia entre os campo se baseia no mapeamento j existente da integrao via XML, conforme a tabela
abaixo:
6
GFEtoProtheus_Financeiro-Contrato.xsl
GFEA100 (Contrato) para FINA050 (Ttulo a Pagar)
ProtheusToGfe_Ret_Fatura.xsl
GFEA100 (Contrato) para MATA116 (Nota Conhecimento) GFEtoProtheus_NFRateio-Contrato.xsl
Nas integraes realizadas no sentido GFE para o ERP h duas operaes Atualizar e Desatualizar, correspondendo
Incluso e Eliminao. Para cada integrao h um campo de controle na tabela de origem com a seguinte lista de opes:
1=Nao Enviado;2=Pendente;3=Rejeitado;4=Atualizado;5=Pendente Desatualizacao;6=Nao se Aplica. Nas rotinas em que h a
alterao da situao de 1=No Enviado para 2=Pendente, o sistema deve executar a integrao via MSExecAuto, com a
operao Incluso, quando o parmetro MV_INTGFE2 = 1=Sim; nas rotinas em que h a alterao da situao de
4=Atualizado para 5=Pendente Desatualizacao, o sistema deve executar a integrao via MSExecAuto, com a operao
Eliminao, quando o parmetro MV_INTGFE2 = 1=Sim. Abaixo a lista de programas com os quais possvel acionar as
integraes:
3.7. Tabela para obteno do Cdigo IBGE das Unidades de Federao (funo TMS120CdUf)
UF AC AL AM AP BA CE DF ES GO MA MG MT MS PA
IBGE 12 27 13 16 29 23 53 32 52 21 31 50 51 15
UF PB PE PI PR RJ RN RO RR RS SC SE SP TO EX
IBGE 25 26 22 41 33 24 11 14 43 42 28 35 17 99
Todas as cidades sero criadas pela integrao com o pas 105 (Brasil), as cidades de outros pases devem ser alteradas
manualmente pelo usurio, procedimento que necessrio apenas se houver Tabelas de Frete com rotas com tipo de origem e/ou
tipo de destino Pas/UF, do contrrio, pode-se manter o pas Brasil em todas as cidades cadastras no SIGAGFE sem causar
impacto no funcionamento do sistema.
Quando a integrao com o GFE estiver ativa o sistema deve impedir que o CNPJ/CPF e o Tipo (Jurdico, Fsico,Estrangeiro) do
Cliente seja alterado (exceto se estiver em branco), evitando que haja inconsistncia na identificao nica do Transportador no
GFE; tambm deve impedir que se altere o tipo do cliente quando X=Estrangeiro.
No haver tratamento para o campo A1_MSBLQL, seu uso ficar restrito ao ERP.
10
GU3_CLIE 1=SIM
N
GU3_END A2_END
ER
GU3_COM A2_COMP
PL LEM
GU3_BAIR A2_BAIRR
RO O
GU3_CEP A2_CEP
GU3_NRCI Cdigo Utilizar a tabela de cdigos IBGE x UF (executar a funo TMS120CdUf)
D IBGE do
A2_EST +
A2_CDIBG
E
GU3_NMC A2_MUN
ID
GU3_UF A2_EST
GU3_IDFE A2_CGC No atribuir quando A2_TIPO = X
D
GU3_IE A2_INSCR
GU3_IM A2_INSCR
M
GU3_CXP A2_CXPO
OS STA
GU3_EMAI A2_EMAIL
L
GU3_FON A2_TEL
E1
GU3_FAX A2_FAX
GU3_WSI A2_HPAG
TE E
Quando a integrao com o GFE estiver ativa o sistema deve impedir que o CNPJ/CPF e o Tipo (Jurdico, Fsico,Estrangeiro) do
Fornecedor seja alterado, evitando que haja inconsistncia na identificao nica do Transportador no GFE.
No haver tratamento para o campo A2_MSBLQL, seu uso ficar restrito ao ERP.
12
3.15. Notas Fiscais de Sada (MATA460 tabelas SF2, SD2)
13
GW8_ITEM D2_COD
GW8_DSITE D2_DESCRI
M
GW8_QTDE D2_QUANT
GW8_VALO D2_VALBRU
R T
GW8_VOLU B5_ALTURA Localizar a SB5 com B%_COD = D2_COD e se no encontrar B5 atribuir 0
ME * B5_LARG * (zero)
B5_COMPR *
D2_QUANT
GW8_PESO D2_PBRUTO
R
GW8_QTDA D2_PESO
LT
Trecho do Despacho (Transportador Principal)
Criar sempre
*GWU_CDTP GW1_CDTP
DC DC
*GWU_EMIS GW1_EMISD
DC C
*GWU_SER GW1_SERD
DC C
*GWU_NRD GW1_NRDC
C
*GWU_SEQ 01
GWU_CDTR F2_CGCTRP
P
GWU_NRCI A2_CDIBGE Quando F2_CGCRDP preenchido atribuir A4_CDIBGE
DD
GWU_PAGA 1=SIM Quando F2_TPFRETE <> Catribuir 2=NO
R
Trecho do 1 Redespacho (Transportador Redespachante)
Criar quando F2_CGCRDP preenchido
*GWU_CDTP GW1_CDTP
DC DC
*GWU_EMIS GW1_EMISD
DC C
*GWU_SER GW1_SERD
DC C
*GWU_NRD GW1_NRDC
C
*GWU_SEQ 02
GWU_CDTR F2_CGCRDP FIELDREL_2
P
GWU_NRCI A2_CDIBGE Quando F2_CGCRDP preenchido atribuir A4_CDIBGE
DD
GWU_PAGA 1=SIM Quando F2_TFRDP1 <> C=CIFatribuir 2=NO
R
Os campos relativos ao local de entrega diferenciado no sero preenchidos pois o Protheus no permite informar um local de
entrega distinto do endereo do destinatrio. Na verso da integrao com XML os campos eram sempre preenchidos com o
endereo do cadastro do destinatrio (cliente ou fornecedor).
Devem ser considerados os campos customizados FIELDREL_3 a FIELDREL_5 (verificar antes se existem no SX3) para formar
os demais trechos de redespacho.
14
Importante:
A integrao ocorre independentemente da situao da Nota Fiscal em relao transmisso e autorizao da Sefaz.
Ao confirmar o cancelamento da Nota Fiscal no Protheus, a rotina deve acionar a eliminao do Documento de Carga
correspondente no GFE. Essa operao no deve estar condicionada opo escohida no parmetro MV_FATGFE, por isso se a
eliminao do Documento de Carga no GFE no for concluda com sucesso, a mensagem de validao deve ser apresentada
para o usurio e o processo de cancelamento no ERP interrompido.
Na ao de eliminao da Carga deve-se realizar a tentativa de eliminao do Romaneio no GFE, tratando o registro para que a
validao que impede a eliminao de Romaneios com origem no ERP seja contornada; quaisquer outros impedimentos devem
ser apresentados para o usurio impedindo o prosseguimento da operao no ERP.
A ao de Alterao no gera integrao com o GFE, pois os dados que podem ser alterados na Carga no tm correspondentes
no Romaneio.
15
GW1_DTLIB dData
GW1_HRLIB TIME()
GW1_NRROM F1_CARGA + Concatenar os dois campos
F1_SEQCAR
GW1_ICMSDC 1=SIM Quando F1_VALICM = 0 atribuir 2=NO
GW1_QTVOL F1_VOLUME1
GW1_TPFRET 3=FOB Quando F1_TPFRETE = C=CIF atribuir 1=CIF
Itens do Documento de Carga
*GW8_CDTPDC GW1_CDTPDC
*GW8_EMISDC GW1_EMISDC
*GW8_SERDC GW1_SERDC
*GW8_NRDC GW1_NRDC
*GW8_SEQ D1_ITEM
GW8_ITEM D1_COD
GW8_DSITEM D1_DESCRI
GW8_QTDE D1_QUANT
GW8_VALOR D1_TOTAL
GW8_VOLUME B5_ALTURA * B5_LARG * Localizar a SB5 com B%_COD = D1_COD e se no
B5_COMPR * D2_QUANT encontrar B5 atribuir 0 (zero)
GW8_PESOR D1_PBRUTO
GW8_QTDALT D1_PESO
GW8_ATUATF D1_ATUATF
Trecho do Despacho (Transportador Principal)
Criar sempre
*GWU_CDTPDC GW1_CDTPDC
*GWU_EMISDC GW1_EMISDC
*GWU_SERDC GW1_SERDC
*GWU_NRDC GW1_NRDC
*GWU_SEQ 01
GWU_CDTRP F1_CGCTRP
GWU_NRCIDD A1_CDIBGE
GWU_PAGAR 1=SIM Quando F1_TPFRETE <> F=FOBatribuir 2=NO
3.19. Carga de Dados (OMSM011 tabelas CT1, CTT, DA3, DA4, DUT, SA1, SA2, SA4, SF2, SF1)
Em substituio rotina OMSM010 que faz a gerao do XML para carga inicial de dados das tabelas do ERP Protheus para
outros sistemas, ser disponibilizada a rotina OMSM011 exclusivamente para a integrao com o SIGAGFE; a rotina cria apenas
os registros cujo correspondente no GFE ainda no exista, por isso recomenda-se us-la quando inicia-se a utilizao do
SIGAGFE em uma base de dados j existente do ERP. As tabelas CC2 (Municpios), SA1 (Clientes), SA2 (Fornecedores), SA4
(Transportadores), DA3 (Veculos), DA4 (Motoristas), DUT (Tipos de Veculos), CTT (Centros de Custo), CT1 (Plano de Contas),
SF1 (Documentos de Entrada) e SF2 (Notas Fiscais de Sada) sero disponibilizadas na rotina OMSM011; caso os parmetros
MV_INTGFE e MV_INTGFE2 no estiverem parametrizados para integrao direta entre o ERP e o SIGAGFE ser emitida
mensagem de erro informando o usurio das condies necessrias e impedindo a execuo da rotina.
3.20. Integrao de Pr-faturas como Ttulo a Pagar (GFEA055 tabelas GWJ, GWK)
16
E2_PARCELA 1
E2_TIPO PR
E2_NATUREZ MV_NTFGFE
E2_EMISSAO GWJ_DTIMPL
E2_VENCTO GWJ_DTVCTO
E2_VENCREA GWJ_DTVCTO
E2_VALOR GWJ_VLPF
E2_VLCRUZ GWJ_VLPF
E2_CGCFOR GWJ_CDTRP
E2_ORIGEM TOTVSGFE
Rateio Contbil Criar 1 para cada registro da GWK com GWK_LANCTO =
1=DB
CTJ_DEBITO GWK_CTACTB
CTJ_VALOR GWK_VLMOV
CTJ_CCD GWK_CCUSTO
3.21. Integrao de Faturas como Ttulo a Pagar (GFEA070 tabelas GW6, GW7, GWJ)
3.22. Integrao de Contratos como Ttulo a Pagar (GFEA100 tabelas GW2, GW9)
18
Campo Recebe Observaes
GW2_SITFIN Na operao de incluso (Atualizar ERP), quando o
retorno indicar que a incluso foi realizada com sucesso
atribuir 4=ATUALIZADO, em caso contrrio atribuir
3=REJEITADO
Na operao de eliminao (Desatualizar ERP), quando o
retorno indicar que houve sucesso na operao atribuir
1=NO ENVIADO, em caso contrrio atribuir
4=ATUALIZADO
GW2_MOTFIN Mensagens de erro quando o retorno indicar que a
incluso ou a eliminao no foi realizada com sucesso.
3.23. Integrao de Documentos de Frete como Documento de Entrada (GFEA065 tabela GW3)
20
3.24. Integrao de Documentos de Frete como Nota de Conhecimento (GFEA065 tabelas GW3, GW4)
21
Depois do retorno da funo usada para integrao, gravar os seguintes campos:
Ao acessar o programa MATA116 (Nt Conhec Frete), usado para digitao dos Conhecimentos de Frete, o usurio recebe a
seguinte mensagem de informao quando o GFE est implantado.
Ao acessar o programa MATA116 (Nt Conhec Frete), usado para digitao dos Conhecimentos de Frete, o usurio recebe a
seguinte mensagem de informao quando o GFE est implantado.
Alterar o programa para que na ao de confirmao no sejam cadastrados os Adapters EAI quando a integrao for direta
(MV_INTGFE2 = 1 ou S).
No programa Parmetros do Frete Embarcador (GFEX000) na aba Integraes Protheus no SIGACOM foi criado o parmetro
TES Doc. Frete (MV_TESGFE) com as opes: Atribudo pelo Sistema (Padro) e Informado pelo Usurio: Na opo Atribudo
pelo Sistema aps a digitao do documento, o campo ser automaticamente preenchido com a informao da TES inteligente
conforme j feito hoje no GFE.
E na opo Informado pelo Usurio, o campo TES dever ser preenchido manualmente, porm, ser sugerida o TES vinculada ao
23
produto (campo TE Padro). Caso a integrao automtica esteja ativa ser utilizado o TES do produto.
Importante:
Na mudana da integrao usando EAI/ESB para a integrao direta a eliminao do cadastramento dos Adapters EAI deve ser
efetuada manualmente pelo mdulo SIGACFG.
Quando o parmetro Impede Faturamento indicar que a gerao das Notas Fiscais de Sada no depende do sucesso da
integrao com o GFE os seguintes procedimento complementaro a integrao:
a. As Notas Fiscais de Sada no integradas ficaro registradas para que posteriormente os usurios acionem novamente a
integrao para o GFE pelo programa OMSM012 (pode ser acessado pelo menu ou por um boto na barra inferior do
OMSM011). Esse programa lista todas as Notas Fiscais de Sada que no integraram com o GFE por algum erro de
validao ocorrido (a mensagem fica registrada e pode ser consultada nesse mesmo programa);
b. Assim que nova ao de integrao ocorrer com os registros de controle so descartados;
c. Se a Nota Fiscal de Sada com pendncia de integrao for cancelada no ERP o registro de controle descartado;
d. A carga de dados pelo OMSM011 tambm gera esses registros para as Notas Fiscais de Sada no integradas com
sucesso;
e. Se o motivo da no integrao for uma restrio intencionalmente cadastrada (Filtro de Documentos de Carga) o sistema
no grava o registro de controle;
f. Essa rotina no se aplica integrao de Notas Fiscais de Entrada (Documentos de Entrada).
24