INTEGRAÇÃO LOGIX X GFE

Contexto de negócio (Introdução)

Gestão de Frete Embarcador (SIGAGFE) é um aplicativo desenvolvido sobre a plataforma TOTVS.

Utiliza o framework de funcionalidades do Microsiga Protheus e tem como objetivos funcionais: 

  • Auxiliar no controle dos processos operacionais de recepção e despacho de cargas; 
  • Registrar, provisionar e conferir as despesas decorrentes da contratação de serviços de transporte realizados por terceiros;
  • Suportar a troca de informações entre o contratante e os prestadores de Serviço de Transporte; 
  • Manter os dados relacionados a documentos, custos e despesas com transporte, sincronizados e integrados aos demais módulos do software ERP.

Os Cadastros e Processos que são sincronizados e integrados entre os sistemas, na direção do Logix para o SIGAGFE são:


LogixSIGAGFE
CadastrosFornecedores/Transportadores/ClientesEmitentes









Processos




Os Processos realizados dentro do SIGAGFE e que tem informações enviadas aos módulos do Logix são:


SIGAGFELogix
ProcessosDocumentos FiscaisDocumentos de Frete de Vendas






Sistemas Envolvidos

  •  Protheus / Gestão de Frete Embarcador 
  • Logix:
    • Cadastros Gerais; 
    • Faturamento; 
    • Recebimento de Materiais; 
    • Financeiro; 

Integração

Desenvolvida integração que tem por objetivo permitir aos clientes Logix (BackOffice) o uso do sistema especialista para Gestão de Frete Embarcador.

A arquitetura utlizada para a integração é a mensageria única/EAI2 na maioria das integrações e REST especificamente na integração do cálculo da simulação do frete pelo GFE no Faturamento Logix.


Escopo


Envio de dados do Logix para o GFE

Para a sincronização de cadastros e movimentos originados no ERP são associados os Adapters da Mensagem Única nas interfaces do cadastro no ERP.

As principais ações (inclusão, alteração, eliminação) permitindo assim replicação para a base de dados do TOTVS SIGAGFE e ficando os cadastros iguais em ambos os lados.

Também é possível uma carga inicial de dados através de rotina que permite o envio de toda a massa de dados, ou através de filtros (FIN00000).


Recebimento de dados do GFE no Logix

Para a integração dos documentos registrados no TOTVS GFE para o ERP é utilizada uma rotina de execução contínua do próprio EAI2, essa rotina monitora a entrada de XMLs das mensagens únicas mapeadas para recebimento no ERP Logix.

O controle dos dados que estão aptos para integração é efetuado pelo Monitor de integração (EAI10000). 

Cada Adapter utiliza as rotinas de negócio do Logix para processar os dados; ao final de cada processamento interage novamente com o TOTVS SIGAGFE para atribuir o retorno: Sucesso ou Erro.


Pré-requisitos instalação/implantação/utilização


Logix

  • Liberação oficial: release 12.1.19 e posteriores.
  • EAI2/Mensageria única instalado e configurado.


Protheus

Insira aqui as informações pertinentes ao Protheus.


Instalação/Atualização


Logix


Configuração das transações do EAI Logix:


 Executar o programa EAI10000 (Monitor EAI)


  •  Acesse o menu Configuração > Aplicativo Hospedeiro. Clicar no botão ‘Buscar novos adapters’ para recarregar os adapter existentes no RPO de acordo com as novas configurações.


  • Acesse o menu Configuração > Aplicativos Externos. Clicar em ‘Incluir’ e depois no botão ‘Configurar’. Selecionar a ‘Classe canal’ correspondente ao produto com o qual queira se comunicar. 
  • No quadro ‘Propriedades’ preencher as informações solicitadas e clicar em ‘Confirmar’. Após isso serão exibidas na tela principal as transações que o aplicativo externo possui e com o qual pode-se trocar informações.


  • Acesse novamente o menu Configuração > Aplicativo Hospedeiro. Clicar no botão ‘Modificar’, em seguida dê dois cliques na coluna ‘Rotas’ de cada mensagem envolvida nesta integração para indicar para qual aplicativo externo/contexto a mesma será enviada.


  • As mensagens abaixo deveram estar habilitadas para o funcionamento da integração:

Mensagem\Transação

Versão

CustomerVendor            

2.000

Invoice

3.011





Parâmetros Gerais(LOG00087)

  • Aplicar os conversores de parâmetros: sup01869.cnv, sup01876.cnv, sup01864.cnv, sup01879.cnv, sup01877.cnv e sup01878.cnv.

  • Executar o programa LOG00086 (Administração de Parâmetros) e liberar permissão no ENTRADAS/FRETES/INTEGRACOES e INTEGRACOES/ADMINISTRACAO LOGIX/GERAL.

  • Executar o programa LOG00087 e informar os seguintes parâmetros:
    • Parâmetro: Trabalha com integração com GFE-Gestão de Frete embarcador? (integra_logix_gfe)

                         Objetivo: Indica se a empresa trabalha com integração do Logix com o GFE (Gestão de frete embarcador).

                         OBS: Sim/Não (Alterar para S para habilitar a integração).

    • Parâmetro: CT-e sobre NF de vendas será tratado pelo GFE? (gfe_cte_venda)

                         Objetivo: Indica se CT-e sobre NF de vendas será tratado pelo GFE(Gestão de Frete Embarcador) e depois integrado ao Logix.

                         OBS: Sim/Não (Alterar para S para habilitar a integração).

    • Parâmetro: Grupo de despesa padrão para inclusão do conhecimento de frete VIA GFE(grupo_desp_frete_gfe)
      Objetivo: Parâmetro é opcional, se não informado considera:

      1- O grupo de despesa que veio na mensagem Invoice via integração;

      2- Ou se o primeiro não tiver sido informado considera o grupo de despesa padrão para frete de venda. LOG00087: 'Grupo de despesa a ser utilizado nos fretes de venda incluídos pelo SUP0580, SUP9220 e SUP0552.(grp_desp_frete_venda).

      OBS: Somente permite informar um grupo de despesa cadastrado no Logix.

    • Parâmetro: Condição de pagamento sem pagamento para recebimento de CTE (cond_pgto_cte_sem_pgto)
      Objetivo: Indica a condição de pagamento a ser sugerida para preenchimento automático da condição de pagamento, pois o conhecimento de frete não terá pagamento.
      OBS: Somente permite informar uma condição de pagamento cadastrada no Logix.

    • Parâmetro: Conhecimento venda integrado GFE pode sofrer modificações no Logix? (ies_conhec_gfe_altera)

                         Objetivo: Indica se quando trabalhar com integração do Logix com o GFE permitirá incluir, alterar ou excluir um frete de vendas no Logix.

                        1 - Alerta (No sup0580 ao tentar incluir um conhecimento de nota de venda irá alertar que trabalha com integração com GFE e inclusão deveria ser

                        realizada no GFE. Ainda no sup0580, ao tentar modificar ou excluir um conhecimento de notas ficais de venda, alerta o usuário que o frete foi

                        integrado via GFE e a alteração ou exclusão deveria ser realizada no GFE).

                       2- Trava (No sup0580 ao tentar incluir um conhecimento de nota de venda irá bloquear a inclusão, avisando que existe a integração com GFE e

                      inclusão deve ser realizada no GFE. Ainda no sup0580, ao tentar modificar ou excluir um conhecimento de notas ficais de venda, bloqueia a transação,

                      e avisa ao usuário que o frete foi integrado via GFE e a alteração ou exclusão deverá ser realizada no GFE).

                      3- Permite Incluir Modificar ou Excluir Conhecimento( No sup0580 mesmo que esteja com a integração GFE ligada irá permitir incluir, modificar ou

                      excluir qualquer conhecimento de frete, sem exibir aviso em tela).


    •  Parâmetro: Assume automaticamente erros do frete recebido via integração GFE? (assu_auto_erro_integ_fret_gfe)

                     Objetivo: Indica se assume automaticamente os erros na consistência do frete, recebido via integração GFE.

                     OBS: Sim/Não (Alterar para S para habilitar a integração).

    • Parâmetro: Diretório XML Frete/Venda quando empresa trabalha com integração GFE (diretorio_gfe_cte_v)
      Objetivo: Caso empresa trabalhar com integração do Logix com GFE (Gestão do Frete Embarcador) e os fretes de venda são tratados pelo GFE, então no JOB de Recebimento de XML de Nota/Frete no TOTVS Colaboração irão mover os XML's que forem de frete relacionado a nota fiscal de venda para este diretório. Posteriormente o Gfe irá buscar estes XMLs deste diretório e importar no módulo para cálculos e tratamentos do frete.


 Relacionamento De/Para de Empresa/Filial:


Para que uma mensagem de integração possa ser recebida, é necessário informar o código da empresa e/ou filial do sistema de origem.


Quando uma mensagem é recebida pelo Logix, a partir da “Empresa Externa” e “Filial Externa” existentes na TOTVSMessage o sistema identificará qual é a “Empresa Logix” para atualização dos dados. Estas informações são registradas no LOG00083 (Cadastro de Empresas).


Nota: Para que estes campos possam ser informados é necessário ativar o parametro “Permite informar empresa/filial externa no cadastro de empresas?”, no LOG00087.


Totvs Colaboração

Como a recepção do frete de venda é realizada diretamente no GFE o mesmo é desviado da recepção via Totvs Colaboração no Suprimentos/Logix. 

Para isso é feito um desvio, e são movidos os XMLs do frete de venda para o diretório parametrizado no LOG00087: "Diretório XML Frete/Venda quando empresa trabalha com integração GFE".
Posteriormente o Gfe irá buscar estes XMLs deste diretório e importar no Protheus SIGAGFE para cálculos e tratamentos do frete e após então o Conhecimento é enviado e integrado ao Logix.


Tratamentos no ERP

    • Conforme parametrização nos Parâmetros Gerais Logix "Conhecimento venda integrado GFE pode sofrer modificações no Logix?" permitirá incluir, alterar ou excluir um frete de vendas no Logix.
      Se parâmetro igual a "1" no sup0580 ao tentar incluir um conhecimento de nota de venda irá alertar que trabalha com integração com GFE e inclusão deveria ser realizada no GFE.
      Ainda no sup0580, ao tentar modificar ou excluir um conhecimento de notas ficais de venda, alerta o usuário que o frete foi integrador via GFE e a alteração ou exclusão deveria ser realizada no GFE).
      Se parâmetro igual a "2" no sup0580 ao tentar incluir um conhecimento de nota de venda irá bloquear a inclusão, avisando que existe a integração com GFE e inclusão deve ser realizada no GFE. Ainda no sup0580, ao tentar modificar ou excluir um conhecimento de notas ficais de venda, bloqueia a transação, e avisa ao usuário que o frete foi integrado via GFE e a alteração ou exclusão deverá ser realizada no GFE).
      E se parâmetro igual a "3" permitirá Incluir Modificar ou Excluir Conhecimento normalmente no sup0580 mesmo que esteja com a integração GFE ligada.


Protheus

Insira aqui as informações pertinentes ao Protheus.


Controle de Versão

O grupo TOTVS, representado por suas marcas, irá administrar as demandas de evolução dos layouts e demais ajustes, acordando junto aos solicitantes o prazo de liberação de release.

Todas as evoluções programadas deverão ser discutidas e aprovadas pelas marcas antes do início do desenvolvimento e somente serão desenvolvidas em caso de concordância das marcas e alinhamento com as diretivas definidas pelo Comitê de Integração TOTVS.

Suporte

O suporte aos recursos da Integração será de responsabilidade de todas as linhas, sendo assim as equipes de suporte dos produtos Logix e Protheus SIGAGFE estarão aptas a fazer a primeira análise e, quando necessário, repassar para a equipe mais adequada em cada caso.

Transações/Entidades/Mensagens únicas

 

Método

ID

Descrição

Origem

Destino

XSD (versões podem variar)

Cadastros

01

Cliente/Fornecedor/Transportador

Logix

Protheus

CustomerVendor_2_000.xsd

02





03





04





05





06





07





08





09





10





11





12





13





14











Processos

15

Documento de Frete de Venda

Protheus

LogixInvoice_3_011.xsd

16





17





18





19





20





21





22





23





24





25



Fluxo das Informações


Cadastros


A seguir temos as rotinas responsáveis pelos cadastros das informações da integração:

MétodoIDDescriçãoOrigemDestinoXSD
Cadastros01Cliente/Fornecedor/TransportadorLogixProtheusCustomerVendor_2_000.xsd

02




03




04




05





Ao executar o programa FIN00000, usuário poderá fazer a carga inicial dos cadastros:

  • Fornecedor/Transportador/Cliente


Ao executar inclusão, modificação, exclusão do cadastro de Cliente/Fornecedor no programa VDP10000, ira gerar mensagem única, enviada para o Protheus.


<CustomerVendor2/Fornecedor/Transportador>

Identificador da Mensagem: CustomerVendor

Versão: 2

Tipo de Envio: <Síncrona>


Mensagem Padrão

PROTHEUS

LOGIX

Tabela

Campo

Tabela

Campo

Code



fornecedorcod_fornecedor

ShortName



fornecedorraz_social_reduz

Name



fornecedorraz_social
Type = "Vendor"



EntityType= "Person"/"Company"



RegisterDate

fornecedordat_cadast
RegisterSituation= "Active"/"Inactive"

fornecedories_fornec_ativo
GovernmentalInformation/Id scope="Federal" name="CNPJ" issueOn="0001-01-01" expiresOn="9999-12-31"

fornecedornum_cgc_cpf
GovernmentalInformation/Id scope="State" name="Inscricao Estadual" issueOn="0001-01-01" expiresOn="9999-12-31" = "CPF"/"CNPJ"

fornecedorins_estadual
GovernmentalInformation/Id scope="Municipal" name="Inscricao Municipal" issueOn="0001-01-01" expiresOn="9999-12-31"

fornec_complins_municipal
GovernmentalInformation/Id scope="Federal" name="Inscricao Pis" issueOn="0001-01-01" expiresOn="9999-12-31"

sup_par_fornecedor onde empresa = 'SE' e parametro = "num_inscr_inss_2"parametro_texto
GovernmentalInformation/Id scope="Federal" name="NIF" issueOn="0001-01-01" expiresOn="9999-12-31"

sup_par_fornecedor onde empresa = 'SE' e parametro = "num_ident_fiscal"parametro_texto
Address/Address

fornecedorend_fornec
Address/Number

vdp_cli_fornec_cplnum_iden_lograd
Address/Complement

vdp_cli_fornec_cplcompl_endereco
Address/City/CityCode

obf_cidade_ibge (Origem=fornecedor)cidade_ibge/(Origem=cod_cidade)
Address/City/CityDescription

cidadesden_cidade















Address/District



Address/State/StateCode



Address/State/StateInternalId



Address/State/StateDescription



Address/Country/CountryCode



Address/Country/CountryInternalId



Address/Country/CountryDescription



Address/ZIPCode



ListOfCommunicationInformation/CommunicationInformation/PhoneNumber



VendorInformation/VendorType/VendorTypeCode



VendorInformation/VendorType/VendorTypeInternalId



VendorInformation/VendorType/VendorTypeDescription



FiscalInformation/TaxPayer TaxName="IPI" isPayer="1" Mode="simples"




Limitações/Restrições

  • Para esta integração, não indica-se trabalhar com Transportador cadastrado no VDP10000 como tipo "2"-Apenas transportadora. Alterar o tipo do mesmo para "5"-Fornecedor/Transportador.



Processos

 

A seguir temos os processos que transitam entre os produtos na integração:

MétodoIDDescriçãoOrigemDestinoXSD
Processos01Conhecimento de frete de VendaProtheusLogixInvoice_3_0110.xsd

02




03




04




05




<Invoice/Conhecimento de frete de venda>

Identificador da Mensagem: Invoice

Versão: 3

Tipo de Envio: <Assíncrona>


Ao receber a Invoice no Logix com tag indicando que trata-se de um conhecimento de venda (TypeofDocument = "COV") é acionado Adapter EaiAdapterInvoice3.

Este irá incluir ou excluir (de acordo com o tipo de processamento enviad) através de métodos padrões do ERP o conhecimento de frete de venda no Logix.

Para conferir se a integração ocorreu com sucesso pode-se utilizar a consulta do Status e Passo-a-passo no Monitor de integração do EAI: EAI100000. 

Para validar o documento no ERP utilizar o programa Sup0580.

  • Consistência
    Após a inclusão do conhecimento é automaticamente processada a consistencia do documento.
    Os valores da integração são carregados no declarado, para manter o histórico e acusar erro de diferença entre declarado e calculado caso algum parâmetro do Logix precise ser revisto.
    Pode ocorrer inconsistência no frete entre declarado e calculado, devido a cadastros que precisam ser arrumados no ERP. Se não forem revistos não há problema, visto que o valor declarado prevalece sobre o calculado. O único inconveniente é que a cada proxima nota que entrar continuará acusando diferença entre declarado e calculado.
    Se o parâmetro do Log00087 "Assume automaticamente erros dos conhecimentos recebidos via integração Gfe?" igual a "S" então após realizar a consistência, já assumir os erros do frete automaticamente. Irá cadastrar automaticamente o usuário que está integrando (usuário integrador) no Sup34698-Usuários responsáveis por assumir erros de frete.
    Conforme padrão do Recebimento, caso esteja parametrizado para contabilização online já irá gerar os lançamentos contábeis automaticamente na integração, assim como a integração com o fiscal. 
    Não integra com o Financeiro visto que a condição de pagamento é sem pagamento. E o Financeiro é tratado diretamente do GFE que envia os dados ao Módulo financeiro do Logix via integração.
    Também integra automaticamente com o GAO-Gestão de Aprovação de Orçamento, caso empresa trabalhe com este conceito.


Mensagem Padrão

PROTHEUS

LOGIX

Tabela

Campo

Tabela

Campo

CompanyId



frete_supcod_empresa
InvoiceNumber




frete_supnum_conhec

InvoiceSerie



frete_supser_conhec
InvoiceModel

sup_compl_fret_supreservado
TypeOfDocument = "COV"

frete_supies_tip_frete = "V"
VendorCode

frete_supcod_transpor
IssueDate

sac_embarquedat_entrega
InvoiceAmount

frete_supval_frete
InsuranceAmount

sup_par_frete onde parametro = "val_seguro_frt"parametro_texto
PaymentConditionCode

frete_supcnd_pgto_frt
PaymentConditionCode

frete_supcnd_pgto_tab
TaxOpCode

frete_supcod_fiscal_frete
TaxOperationCodeComplement

frete_supcod_fiscal_compl
GrossWeight

frete_suppes_vol_frete
ElectronicAccessKey

sup_par_frete onde parametro = "num_ft_eletronica"parametro_texto
ElectronicProtocol

sup_par_frete onde parametro = "chave_acesso_cte"parametro_texto
ElectronicKeyJustification

sup_par_frete onde parametro = "justif_chave_cteparametro_texto
ElectronicKeyJustification

obf_justif_cte_sefazjustificativa
TollValue

pedagio_freteval_pedagio
ListofRelatedInvoices/RelatedInvoices/InvoiceNumber

frete_sup_x_nffnum_nff
ListofRelatedInvoices/RelatedInvoices/InvoiceSerie

frete_sup_x_nffser_nf_saida
ListofRelatedInvoices/RelatedInvoices/InvoiceDateIssue

frete_sup_x_nffdat_hr_emis_nota_fiscal_fatura
ItemExpenseGroupCode

frete_supgru_ctr_desp_frete
ListofItens/Item/ListofTaxes/Taxe = "ICMS"



ListofItens/Item/ListofTaxes/CalculationBasis

frete_supval_base_c_frete_c
ListofItens/Item/ListofTaxes/Value

frete_supval_tot_icms_frt_c
ListofItens/Item/ListofTaxes/Taxe = "RETEN_INSS"



ListofItens/Item/ListofTaxes/CalculationBasis

sup_par_frete onde parametro = "bc_retencao_inss"parametro_val
ListofItens/Item/ListofTaxes/Percentage

sup_par_frete onde parametro = "perc_reten_inss"parametro_val
ListofItens/Item/ListofTaxes/HasTax

sup_par_frete onde parametro = "RETEN_INSS"par_ind_especial
ListofItens/Item/ListofTaxes/Taxe = "RECOLH_INSS"



ListofItens/Item/ListofTaxes/CalculationBasis

sup_par_frete onde parametro = "bc_recolhimento_inss"parametro_val
ListofItens/Item/ListofTaxes/HasTax

sup_par_frete onde parametro = "RECOLHIMENTO_INSS"par_ind_especial
ListofItens/Item/ListofTaxes/Taxe = "RETEN_ISS"



ListofItens/Item/ListofTaxes/HasTax

sup_par_frete onde parametro = "RETEN_ISS"par_ind_especial
ListofItens/Item/ListofTaxes/Taxe = "RETEN_SEST_SENAT"



ListofItens/Item/ListofTaxes/HasTax

sup_par_frete onde parametro = "RETEN_SEST_SENAT"par_ind_especial
ListofItens/Item/ListofApportionInvoiceItem/ApportionInvoiceItem/AccountantAcountInternalId

dest_frete_supnum_conta_deb_desp
ListofItens/Item/ListofApportionInvoiceItem/ApportionInvoiceItem/ProjectInternalId

dest_frete_supcod_area_negocio
ListofItens/Item/ListofApportionInvoiceItem/ApportionInvoiceItem/SubProjectInternalId

dest_frete_supcod_lin_negocio
ListofItens/Item/ListofApportionInvoiceItem/ApportionInvoiceItem/Percentual

dest_frete_suppct_particip_comp
ListofItens/Item/ListofApportionInvoiceItem/ApportionInvoiceItem/AccountantAcountInternalId

dest_frete_sup4num_conta_deb_desp
ListofItens/Item/ListofApportionInvoiceItem/ApportionInvoiceItem/ProjectInternalId

dest_frete_sup4cod_area_negocio
ListofItens/Item/ListofApportionInvoiceItem/ApportionInvoiceItem/SubProjectInternalId

dest_frete_sup4cod_lin_negocio
ListofItens/Item/ListofApportionInvoiceItem/ApportionInvoiceItem/MarketSegmentCode

dest_frete_sup4cod_seg_merc
ListofItens/Item/ListofApportionInvoiceItem/ApportionInvoiceItem/ClassValueCode

dest_frete_sup4cod_cla_uso
ShippingAddress/City/CityCode

frete_sup_complcod_cidade


  • Percentual de ICMS - Busca alíquota do Logix da tabela de ICMS por grupo de despesa.
  • Somente grava a dest_frete_sup4 quando trabalha com 4 níveis de AEN, caso contrário grava apenas a dest_frete_sup.
  • Cidade é opcional - se informada busca a aliquota de ICMS dessa cidade no calculo do ICMS no frete, ao invés do padrão que é buscar de acordo com a UF do transportador.
  • PaymentConditionCode é opcional - Se informado parâmetro no Log00087 - "Condição de pagamento sem pagamento para recebimento de CTE" irá assumir esta condição de pagamento para o frete.


Limitações / Restrições Gerais

  • InvoiceSubSerie -

Como fazer (opcional)

Os passos para viabilizar a integração são:

  • Setar nos Parâmetros Gerais Logix (Log00087) os parâmetros: Trabalha com integração com GFE-Gestão de Frete embarcador? = "S", "CT-e sobre NF de vendas será tratado pelo GFE?" = "S".
  • No Logix efetue o cadastro das seguintes informações: Clientes, fornecedores, transportadores. A integração será efetuada automaticamente pelas telas de cadastro (VDP10000-Cliente/Fornecedor/Transportador) ou podem ser enviados ao GFE via carga de dados.
  • No Vendas/Faturamento Logix efetue o faturamento da nota de saída.
  • No GFE confira as informações do faturamento
  • No GFE efetue a inclusão do conhecimento de frete
  • No Logix efetue a conferência do conhecimento de frete no Sup0580

Situações comuns (opcional)

  • Quando uma mensagem é enviada do Logix para o Protheus, podem ocorrer situações em que o WebService não estará totalmente funcional. Nestes casos uma mensagem de erro genérica irá aparecer na tela:

Exemplo:

Erro ao enviar a mensagem de Cidade via Integração

Se o arquivo de log for analisado, poderemos ver a falha na comunicação com o sistema destino:

-------------------------------------------------------------------------------

WSCERR044 / Não foi possível POST : URL http://172.16.31.57:8011/ws/FWWSEAI.apw

ADVPL WSDL Client 1.080707 / tst on 20120315 08:49:51

-------------------------------------------------------------------------------

Para resolver este problema, verifique as configurações do sistema de destino, analisando o funcionamento do servidor utilizado para esta comunicação e a habilitação do endereço do WebService. 


Checklist de suporte da aplicação


Anexos