Páginas filhas
  • DI_Integração_TMS_e_Cockpit_Logístico

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Migration of unmigrated content due to installation of a new plugin

INTEGRAÇÃO TMS X Cockpit Logístico

Contexto de negócio (Introdução) 

A integração entre o módulo TMS e o Cockpit Logístico tem como objetivo sincronizar os dados cadastrais do Protheus e as demandas de transporte, cuja execução é registrada e controlada pelas rotina do módulo TMS por empresas-usuárias prestadoras de serviço de transporte. Esses dados são utilizados pelo Cockpit Logístico para efetuar a programação de transporte montando viagens que atinjam parâmetros pré-estabelecidos, atendendo às restrições existentes e proporcionando a melhor composição de cargas visando a diminuição dos custos e o cumprimento dos níveis de serviço com os clientes. 

A integração dos dados cadastrais também atende à integração do ERP Protheus quando utilizado por empresas-usuárias embarcadoras; nesse caso vide o documento de integração OMS X Cockpit Logístico .

Sistemas Envolvidos

Cockpit Logístico

Sistema vertical desenvolvido pela Neolog, empresa do ecossistema TOTVS, que dispõe de módulos para Planejamento da Malha de Distribuição, Programação de Transportes e Monitoramento de Cargas. A Programação de Transportes gera a roteirização e o arranjo das cargas, com base na demanda de transportes enviada pelo ERP, considerando as configurações das restrições logísticas e as funções-objetivos da otimização. São exemplos de funções-objetivo: máximo aproveitamento e máxima ocupação dos veículos, diminuição da quantidade de viagens e diminuição da despesa de frete total. 

TMS - Transportation Management System

É um módulo integrante da linha Microsiga Protheus que está integrado ao BackOffice do ERP Microsiga Protheus. Tem como objetivo controlar os processos operacionais relacionados à prestação de serviços de transporte de cargas. É utilizado por empresas Transportadoras de Cargas e Operadores Logísticos.

Integração

A integração é realizada por intermédio de arquivo XML, utilizando os Web Services disponibilizados pelo Cockpit Logístico, sem transformação de mensagens e sem utilização de sistemas intermediários (TOTVS EAI, TOTVS ESB, etc.).

Escopo

Possibilitar a integração dos dados cadastrais do backoffice Microsiga Protheus e de demandas de transporte do TMS Protheus para o Cockpit Logístico da Neolog.

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

Cockpit Logístico na versão\release 5.6.1.

Parâmetros de aquisição ativos (acesso pelo menu em Administração - Integração).

Web Services ativos.

Datasul

Não se aplica.

Logix

Não se aplica.

Protheus

Protheus versão 11.5 ou superior.

Parâmetro de integração com Cockpit Logístico ativo (MV_CPLINT == .T.)

Web Service de integração válido informado (MV_CPLURL)

Todos os parâmetros citados encontram-se no programa Parâmetros de Integração Cockpit Logístico (OMSXCPL1) que pode ser acessado pelo menu Atualizações - Cockpit Logístico.

Documento de Transporte: 

TítuloParâmetroListaValor Inicial Validação Aplicação
Integração Cockpit Logístico?MV_CPLINT1=Sim;2=Não 2=Não Indica se a integração está ativa
Endereço WebServiceMV_CPLURL em branco Deve ser obrigatoriamente preenchido quando MV_CPLINT == "1"URL dos Web Services do Cockpit Logístico utilizadas pelo TMS para envio de dados
RegionalMV_CPLREG em branco Deve ser obrigatoriamente preenchido quando MV_CPLINT == "1"Código da Regional da instalação do Cockpit Logístico que está integrada ao TMS
Embarcador MV_CPLEMB  em branco Deve ser obrigatoriamente preenchido quando MV_CPLINT == "1"Código de um Embarcador do Cockpit Logístico. Todos os Produtos integrados integrados do TMS para o Cokpit Logístico serão relacionados a um mesmo Embarcador no Cockpit Logístico, pois no TMS a relação variável de produto x cliente é utilizada (opcionalmente) apenas na importação de Notas Fiscais de Cliente pelo EDI
Integrar Localidades do ExteriorMV_CPLEX1=Sim;2=Não2=Não Informar se devem ser integradas para o Cockpit Logístico as localidades (filiais, clientes e solicitantes) com endereço fora do Brasil
Invólucro Padrão MV_CPLINV  em branco  Código de um Invólucro (~ embalagem) do Cockpit Logístico. Todos os itens de Pedidos de Transporte recebidos do TMS no Cockpit Logístico serão associados a esse invólucro pois não há uma entidade no TMS que corresponda exata e obrigatoriamente a esse dado do Cockpit Logístico. Recomenda-se informar um invólucro cujas medidas sejam obtidas do item do pedido (essa característica é parametrizada no Cockpit Logístico).
Origem dos DadosMV_CPLIDS PROTHEUS Deve ser obrigatoriamente preenchido quando MV_CPLINT == "1"Código de origem de dados que é cadastrada no Cockpit Logístico. Esse código será relacionada a todos os pedidos de transporte gerados pelo TMS no Cockpit. É utilizado para segregar os pedidos no Cockpit e determinar qual a URL na qual as viagens dos pedidos devem ser transmitidas.
Categoria de Produto MV_CPLCAT 1=Grupo Produto;2=Padrão Cockpit 2=Padrão Cockpit  Para o Cockpit Logístico, categorias de Produto são agrupamentos relevantes de produtos com características logística semelhantes. Com esse parâmetro pode-se determinar se a categoria dos produtos integrados do TMS para o Cockpit Logístico: (1=Grupo Produto) será o código do grupo do produto do TMS ou (2=Padrão Cockpit) será informada por alteração manual em cada produto no Cockpit Logístico. Com a opção deve-se cadastrar as Categorias de Produtos no Cockpit Logístico com os mesmos códigos dos Grupos de Produtos do TMS pois não há Web Serivce de integração para essa tabela.
Tipo Pedido Coleta MV_CPLTP1  em branco Deve ser obrigatoriamente preenchido quando MV_CPLINT == "1" e MV_INTTMS == .T. Habilitar apenas quando MV_INTTMS == .T.Código de um Tipo de Pedido cadastrado no Cockpit Logístico. Esse parâmetro serve para diferenciar os pedidos de transporte enviados do TMS para o Cockpit conforme seu tipo de serviço no TMS: coleta, transporte e entrega. A diferenciação é opcional e pode ser usada para implementar diferentes condições na otimização do Cockpit Logístico de acordo com a necessidade de cada empresa-usuária.
Tipo Pedido Transporte MV_CPLTP2  em branco Deve ser obrigatoriamente preenchido quando MV_CPLINT == "1" e MV_INTTMS == .T.. Habilitar apenas quando MV_INTTMS == .T.Código de um Tipo de Pedido cadastrado no Cockpit Logístico. Esse parâmetro serve para diferenciar os pedidos de transporte enviados do TMS para o Cockpit conforme seu tipo de serviço no TMS: coleta, transporte e entrega. A diferenciação é opcional e pode ser usada para implementar diferentes condições na otimização do Cockpit Logístico de acordo com a necessidade de cada empresa-usuária.
Tipo Pedido Entrega MV_CPLTP3  em branco Deve ser obrigatoriamente preenchido quando MV_CPLINT == "1" e MV_INTTMS == .T. Habilitar apenas quando MV_INTTMS == .T.Código de um Tipo de Pedido cadastrado no Cockpit Logístico. Esse parâmetro serve para diferenciar os pedidos de transporte enviados do TMS para o Cockpit conforme seu tipo de serviço no TMS: coleta, transporte e entrega. A diferenciação é opcional e pode ser usada para implementar diferentes condições na otimização do Cockpit Logístico de acordo com a necessidade de cada empresa-usuária.
Considerar entregar em vez de transferirMV_CPLENT1=Sim;2=Não2=Não Parâmetro que define se o tipo de serviço "Transferência" do documento de transporte admite ser alterado para "Entrega" no retorno da viagem otimizada gerada pelo Cockpit Logístico. Com a opção "1=Sim" o destinatário dos pedidos de transporte gerados com base em documentos de transferência será o cliente (destinatário final) e não a filial de destino, ficando a cargo do Cockpit Logístico determinar qual a melhor opção de transporte a ser efetuada (transferir para outra filial e entregar ou entregar direto).
TítuloParâmetroListaValor InicialConsulta PadrãoValidação
Modo DebugMV_CPLDBG1=Sim;2=Não"2"  
Caminho da pasta de mensagensMV_CPLLOG   Preenchimento obrigatório quando MV_CPLDBG == "1" e MV_CPLINT == "1"
Tipo Pedido ColetaMV_CPLTP1    
Tipo Pedido TransporteMV_CPLTP2    
Tipo Pedido EntregaMV_CPLTP3    
Modo Geração ViagensMV_CPLAUT1=Automático;2=Manual"2"  
Rota Viagem ColetaMV_CPLROT1  DA8 
Rota Viagem TransporteMV_CPLROT2  DA8 
Rota Viagem EntregaMV_CPLROT3  DA8 

RM

Não se aplica.

Instalação/Atualização

Vide tópico Pré-requisitos instalação/implantação/utilização.

Datasul

Não se aplica.

Logix

Não se aplica.

Protheus

Vide tópico Pré-requisitos instalação/implantação/utilização.

RM

Não se aplica.

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 RM Conector e Backoffice Protheus estarão aptas a fazer a primeira análise e, quando necessário, repassar para a equipe mais adequada em cada caso.

Observação: Este modelo de suporte está sendo revisado pela TOTVS.

Transações/Entidades/Mensagens únicas

Entidade(s) ProtheusTipoCódigoWeb ServiceMétodoEntidade Cockpit  Observações
ProdutoCadastroSB1 e SB5ProductAcquisitionService

updateProducts

Produto 
FilialCadastroSM0 LocalityAcquisitionService

updateLocalities

Localidade As filiais assumem o papel de localidade quando são locais de carga ou descarga. Quando MV_CPLEX == "2" não integrar filial cuja unidade de federação não faça parte da lista de unidades de federação do Brasil.
Cliente CadastroSA1 LocalityAcquisitionService 

updateLocalities

Localidade Quando MV_CPLEX == "2" não integrar cliente com país informado diferente de 105 (Brasil).
SolicitanteCadastroDUELocalityAcquisitionServiceupdateLocalitiesLocalidadeQuando MV_CPLEX == "2" não integrar solicitante cuja unidade de federação não faça parte da lista de unidades de federação do Brasil.
Endereço de SolicitanteCadastroDULLocalityAcquisitionServiceupdateLocalitiesLocalidadeQuando MV_CPLEX == "2" não integrar endereço de solicitante cuja unidade de federação não faça parte da lista de unidades de federação do Brasil.
Tipo de Veículo CadastroDUT VehicleAcquisitionServiceupdateVehiclesVeículo  
FornecedoresCadastroSA2CarrierAcquisitionServiceupdateCarriersTransportadorSerão integrados somente os fornecedores com RNTRC informado. A correspondência entre as entidades Fornecedor (SA2) e Transportador é válida apenas nas instalações do Protheus utilizadas por empresas Transportadoras (MV_INTTMS == .T.)
Documento de Transporte ProcessoDUD, DT6, DTC, DYD e DTE OrderAquisitionService createOrdersPedido de Transporte  
ViagensProcessoDJY e DJZReleasedTripPublishRequestServicereleaseTripViagem 

A integração da operação de eliminação de registros não está disponível para todos os cadastros, por isso somente haverá integração nas ações de alteração e inclusão.

 

 

Fluxo das Informações

 

 

Cadastros

Descreva características gerais do fluxo de informações e que serão comuns para este tipo de entidade. Características particulares para cada entidade deverão ser citadas em tópicos específicos de cada entidade.

Sempre que existir (a sugestão é sempre criar) e for agregador ao documento acrescentar aqui os diagramas/imagens ou até mesmo colocar tais diagramas diretamente na especificação dos processos

Em seguida faça uma descrição para cada um dos fluxos para cada entidade

 

<Transação/Entidade>

Identificador da Mensagem: <mensagem>

Versão: <versão>

Módulo <marca 1>: <BackOffice – Gestão xxxxxxx>

Módulo <marca 2>: <SIGAXXX>

Tipo de Envio: <Assíncrona/Síncrona>

 

Mensagem Padrão

PROTHEUS

RM

Tabela

Campo

Tabela

Campo

Code

CTO990

CTO_SIMB

GMOEDA

SIMBOLO *

Description

CTO990

CTO_DESC

GMOEDA

DESCRICAO

Symbol

CTO990

CTO_SIMB

GMOEDA

SIMBOLO

 

Notas:

Observações sobre comportamento desta mensagem ou dos processos envolvidos nela/para ela

A seguir descrever as variações, particularidades da mensagem e processos (integração) de acordo com cada marca

 

Limitações/Restrições

Descreva limitações e restrições para a integração que está sendo descrita.

Processos

Descreva características gerais do fluxo de informações e que serão comuns para este tipo de entidade. Características particulares para cada entidade deverão ser citadas em tópicos específicos de cada entidade.

Sempre que existir (a sugestão é sempre criar) e for agregador ao documento acrescentar aqui os diagramas/imagens ou até mesmo colocar tais diagramas diretamente na especificação dos processos

Em seguida faça uma descrição para cada um dos fluxos para cada entidade

 

<Transação/Processo>

Tipo de Fluxo: Protheus -> RM

Mensagem: Request_1_000

Versão: 1.000

Descrição de todo o comportamento e funcionamento do processo. Breve contexto, origem, regras, integração (geração da mensagem, envio, recebimento no destino), o quê supostamente irá ocorrer no destino, retorno, impacto, consequências, o que foi afetado, como conferir, validar, etc o retorno.

 

Acrescentar um diagrama do processo.

A seguir descrever as variações, particularidades da mensagem e processos (desta integração) de acordo com cada marca

 

Notas:

Observações sobre comportamento desta mensagem ou dos processos envolvidos nela/para ela

 

Limitações/Restrições

Descreva limitações e restrições para a integração que está sendo descrita. 

Limitações / Restrições Gerais

Descreva limitações e restrições para cada fluxo descrito no tópico anterior. Exemplo:

  • ERP1 envia ITEM cadastrado para o ERP2

ERP1 somente enviará o ITEM se este estiver em uma das famílias cadastradas no parâmetro FAMILIA_INTEGRACAO.

 

Se o tipo de valorização do estoque for FIFO.

  • ERP2 envia PEDIDO cadastrado para o ERP1

O pedido recebido no ERP1 vindo do ERP2 estará bloqueado para alteração.

 

Como fazer (opcional)

Descreva os passos que viabilizem a integração.

Exemplo:

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

  • No Logix ou no Protheus efetue o cadastro das seguintes informações: Clientes, fornecedores, transportadores, cidades, cotação de moeda e unidades de medida.
  • No Logix cadastrar um novo depositante e efetuar toda a parametrização necessária para a operação de WMS.
  • No Logix cadastrar um novo produto que seja controlado pelo WMS, para o depositante cadastrado anteriormente.
  • No Logix efetuar um processo de recebimento para o produto cadastrado anteriormente, utilizando uma nota fiscal provisória (tipo “A”).
  • No Protheus consultar a nota fiscal de recebimento que foi registrada no Logix, validando as informações recebidas.
  • No Logix efetuar um processamento de regularização fiscal, efetuando a cobertura dos produtos recebidos anteriormente.
  • No Protheus verificar se foi efetuado corretamente o relacionamento entre os dois documentos.
  • No Logix efetuar um processo de expedição para o novo produto cadastrado, até o momento do envio da mensagem de integração de pedido de venda.
  • No Protheus efetuar o faturamento do pedido de venda recebido.
  • No Protheus verificar se a nota fiscal gerada contém todas as informações necessárias para o segmento de operador logístico (armazém geral).
  • No Protheus efetuar a escrituração fiscal das notas fiscais, verificando se as regras da legislação deste segmento foram respeitadas.
  • No Logix é possível consultar o número do pedido de venda gerado para as notas fiscais de retorno simbólico e conta/ordem no programa WMS6333 (Consulta de Documentos). Para os processos de faturamento de serviço o número do pedido está disponível no programa WMS6411 (Movimentos a Faturar).

 

Situações comuns (opcional)

Descreva situações problemáticas comuns que podem ocorrer durante o funcionamento da integração e como solucioná-los. Neste ponto também é importante dar instruções de como reconhecer e investigar problemas que podem vir a ocorrer durante a integração. Se houver, apresente tabelas de códigos e descrições de erros que a integração poderá apresentar.

Este tópico possivelmente será alimentado com as experiências durante o desenvolvimento da integração e poderá ser realimentado durante o uso da integração no cliente.

Exemplo 1:

Tratamento de erros de integração (Produto A)

 

Erro

Mensagem

Solução

Código do erro

Mensagem exibida

Ação a ser tomada para resolução do erro.

 

Tratamento de erros de integração (Produto B)

Erro

Mensagem

Solução

Código do erro

Mensagem exibida

Ação a ser tomada para resolução do erro.

 

 

Exemplo 2:

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

Crie um check-list de verificação de alguns pontos importantes para o funcionamento e atendimento da integração.

Instalação/Configuração

Relacione itens de verificação para garantir que a integração está corretamente instalada e configurada. Isto não pode ser uma cópia do procedimento de instalação/configuração, mas verificações pontuais que podem remeter aos itens da instalação.

 

Checklist de Verificações:

Relacione itens de verificações para que o atendente possa:

  • Identificar o funcionamento da integração;
  • Identificar a ocorrências de problemas;
  • Coletar evidências do mau funcionamento relatado pelo cliente;
  • Realizar possíveis ajustes na integração quanto à configuração ou negócio.

Anexos