Histórico da Página
INTEGRAÇÃO OMS Protheus X Cockpit Logístico Neolog
Contexto de negócio (Introdução)
Integrar o módulo de Gestão de Distribuição (SIGAOMS) com a funcionalidade Programação de Transportes do Cockpit Logístico da Neolog por intermédio de arquivos no formato XML utilizando os Web Services já existentes do Cockpit Logístico, sem transformação de mensagens e sem utilização de sistemas intermediários (TOTVS EAI, TOTVS ESB, etc.).
Para esta integração foram consideradas as alterações necessárias para que o planejamento das montagens de cargas do módulo Gestão de Distribuição (SIGAOMS) da linha Microsiga Protheus utilize os recursos de Programação de Transportes do Cockpit Logístico. A Programação de Transportes fará a roteirização e o arranjo das cargas com base na demanda de transportes enviadas pelo SIGAOMS considerando as configurações das restrições logísticas e as funções-objetivos de otimização registradas no Cockpit Logístico. São exemplos de funções-objetivo: máxima ocupação dos veículos, diminuição dos prazos de entrega e redução da quantidade de viagens.
O escopo desta integração permitirá o envio dos pedidos de venda liberados (crédito / estoque) no SIGAOMS para a formação das viagens no Cockpit Logístico. E o recebimento dessas viagens geradas no Cockpit Logístico por meio de um XML no SIGAOMS para a geração das CARGAS.
São utilizados os cadastros básicos já disponibilizados na integração entre o SIGATMS x Cockpit Logístico sendo eles:
- Produto
- Filial
- Cliente
- Tipo de veículo
- Fornecedores
Foi disponibilizado apenas um novo cadastro para a integração "Transportadoras". O cadastro de fornecedor foi ajustado permitindo que quando a integração OMS x CPL estiver habilitado o mesmo seja enviado como uma "Localidade", para o Cockpit Logístico.
Além dos cadastros, foi realizado a integração dos pedidos de venda que utilizam as "Cargas", os pedidos de venda são ser enviados para o Cockpit Logístico gerando "Pedidos de Transportes", para estes, o Cockpit Logístico realiza a análise e geração da viagem.
Após a geração da viagem no Cockpit Logístico se integra com o SIGAOMS para a geração das Cargas.
Sistemas Envolvidos
Descrição dos sistemas envolvidos no contexto de negócio (e que serão envolvidos na integração).
- TOTVS Gestão de Distribuição (SIGAOMS)
A sigla OMS significa Order Management System, ou seja, gerenciamento de pedidos e serviços e compreende as fases de captação, validação, avaliação, formação de carga e geração de mapa de separação ou, como é também conhecido, lista de separação.
Para saber mais sobre o OMS TOTVS clique no link: https://www.totvs.com/mktfiles/tdiportais/helponlineprotheus/portuguese/sigaoms.htm - Cockpit Logístico Neolog
O Cockpit Logístico é um 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.
Para saber mais sobre o Cockpit Logístico Neolog clique no link: http://www.neolog.com.br/neolog-site/index.php/cockpit-logistico/
Integração
O objetivo é integrar o módulo de Gestão de Distribuição (SIGAOMS) com a funcionalidade Programação de Transportes do Cockpit Logístico da Neolog por intermédio de arquivos no formato XML utilizando os Web Services já existentes do Cockpit Logístico, sem transformação de mensagens e sem utilização de sistemas intermediários (TOTVS EAI, TOTVS ESB, etc.).
Escopo
As entidades e os pontos de integração que farão parte do escopo dessa integração são:
Entidade | Pontos de Integração |
---|---|
Transportadora |
|
Fornecedor |
|
Pedidos de Venda |
|
Montagem de Carga |
|
Pré-requisitos instalação/implantação/utilização
Atenção: Não é escopo desse documento descrever a instalação do ERP Protheus e do Cockpit Logístico Neolog nem suas configurações básicas.
É imprescindível a atualização do Protheus 11.8 por meio da execução do compatibilizador OMSP11R1.
Para que a integração possa funcionar corretamente, o ambiente deve conter o módulo SIGAOMS e o Cockpit Logístico devidamente configurados.
Parametrização SIGAOMS
Por meio do menu Atualizações > CockPit Logístico > Param Integração, deve ser parametrizado o Protheus para correto funcionamento da integração conforme abaixo:
Onde:
Titulo | Descrição | Parâmetro | Valor para Integração | Validação |
---|---|---|---|---|
Integração Cockpit Logístico? | Identifica se o Modulo do TMS esta integrado aos outros módulos | MV_INTTMS | Sim / T | |
Integração Suspensa? | Identifica se o Modulo do TMS não esta integrado temporariamente aos outros módulos | MV_INTTMS | Não / F | |
Integrar Localidades do Exterior? | Informar se devem ser integradas para o Cockpit Logístico as localidades (filiais, clientes e solicitantes) com endereço fora do Brasil | MV_CPLEX | Sim / T | |
Integrar Clientes On line? | Salvar os dados dos clientes criados no Protheus automaticamente no Cockpit Logístico | MV_CPLCLI | Sim / T | |
Integrar Fornecedores On line? | Salvar os dados dos fornecedores criados no Protheus automaticamente no Cockpit Logístico(Localidades) | MV_CPLFOR | Sim / T | |
Integrar Transportadora On line? | Salvar os dados das transportadoras criados no Protheus automaticamente no Cockpit Logístico | MV_CPLTRA | Sim / T | |
Integrar Produtos On Line? | Salvar os dados dos produtos criados no Protheus automaticamente no Cockpit Logístico | MV_CPLPRO | Sim / T | |
Integrar Tipos de Veículos On Line? | Salvar os dados dos tipos de veiculos criados no Protheus automaticamente no Cockpit Logístico | MV_CPLTPV | Sim / T | |
Endereço WebService | Endereço do webservice do Cockpit Logístico | MV_CPLURL | Conforme cliente | Deve ser obrigatoriamente preenchido quando MV_CPLINT == "1" |
Regional | Regional enviada para o Cockpit Logístico | MV_CPLREG | Conforme cliente | Deve ser obrigatoriamente preenchido quando MV_CPLINT == "1" |
Embarcador | Embarcador enviado para o Cockpit Logístico | MV_CPLEMB | Conforme cliente | Deve ser obrigatoriamente preenchido quando MV_CPLINT == "1" |
Categoria de Produto? | MV_CPLCAT | Conforme cliente | ||
Invólucro Padrão | Código do involucro dos itens | MV_CPLINV | Conforme cliente | |
Origem dos Dados | Define o nome do ERP que da origem aos dados enviados ao Cockpit Logístico | MV_CPLIDS | Protheus | Deve ser obrigatoriamente preenchido quando MV_CPLINT == "1" |
E-mail do Administrador | E-mail do administrador para notificações de falha de conexão | MV_CPLMAL | Conforme cliente | |
Modo Debug? | Salva as mensagens enviadas e recebidas na pasta do log. | MV_CPLDBG | ||
Caminho da Pasta de Mensagens | Caminho do log de mensagens. Recomendado utilizar o caminho relativo a \system\ | MV_CPLLOG | \system\ |
Parametrização appServer.ini
Para que seja possível receber as viagens do Cockpit Logístico, é necessário configurar um WebService no appserver.ini Protheus. É recomendado criar um webservice com as seguintes configurações(modificando o arquivo appserver.ini):
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
;Serviço webserver HTTP [HTTP] ENABLE=1 PATH=<Caminho_Cache_imagens>;C:\TOTVS 11\Prottheus\Protheus_data\web PORT=<porta>;8080 INSTANCES=<nInicio>,<nMaximo>;1,10 SESSIONTIMEOUT=60 INSTANCENAME=WS_HTTP ;URL de resposta [<ip ou nome>:<porta>/neolog] ENABLE=1 PATH=<Caminho_Cache_imagens>;C:\TOTVS 11\Prottheus\Protheus_data\web ENVIRONMENT=<ambiente> INSTANCENAME=WS_NEOLOG RESPONSEJOB=JOB_WS_NEOLOG DEFAULTPAGE=wsindex.apw ;JOB de resposta [JOB_WS_NEOLOG] TYPE=WEBEX ENVIRONMENT=<ambiente> INSTANCES=<nInicio>,<nMaximo>;1,10 INSTANCENAME=JOB_WS_NEOLOG ONSTART=TMSXStart ;ponto de inicio obrigatório ONCONNECT=TMSXConnect ;ponto de inicio obrigatório TMSPREPAREIN=<empresa>,<filial>;obrigatório |
Para testar o serviço, basta iniciar um navegador e digitar : http://<ip ou nome>:<porta>/neolog/PublishReleasedTrip.APW?WSDL
Um WSDL (Descrição do serviço em xml) deve exibir no navegador.
Parametrização Cockpit Logístico
Para configurar o envio de viagens do cockpit ao webservice protheus, entre no Cockpit Logístico e vá em Adminsitração -> Integração. Clique na aba 'Fontes de Dados' e clique em 'Inserir'
Digite o código, Descrição e Código da base. Sugestão: PROTHEUS
No campo 'URL' da seção 'Cancelamento de viagem liberada', digite: http://<ip ou nome>:<porta>/neolog/CancelService.APW
No campo 'Tempo Máximo de Espera por Resposta' coloque o timeout do serviço. Recomendado 30000.
No campo 'URL' da seção 'Execução da viagem', digite: na.
No campo 'Tempo Máximo de Espera por Resposta' coloque o timeout do serviço. Recomendado 1000.
No campo 'URL' da seção 'Solicitação de Liberação de Viagem', digite: http://<ip ou nome>:<porta>/neolog/PublishReleasedTrip.APW
No campo 'Tempo Máximo de Espera por Resposta' coloque o timeout do serviço. Recomendado 30000.
No campo 'URL' da seção 'Solicitação de reprogramação de Viagem', digite: http://<ip ou nome>:<porta>/neolog/ReprogramService.APW
No campo 'Tempo Máximo de Espera por Resposta' coloque o timeout do serviço. Recomendado 30000.
Clique em Salvar.
Relacione quais são os pré-requisitos (técnicos ou de negócio) para a integração. Este tópico não deve incluir informações da implantação normal do módulo, mas apenas informações específicas da integração. É como se este tópico já partisse do princípio que o módulo que será integrado já está normalmente instalado.
Entre os tópicos deste tópico podemos citar:
- Versões mínimas de produtos.
- Módulos ou programas que geram informações necessárias a integração. Muitas vezes a integração partirá de informações que somente são trabalhadas em um determinado programa ou processo, que deverá estar em uso no cliente.
- Ferramentas que são necessárias a integração, como: EAI, ESB, servidor de WebService etc.
- Aspectos legais nos quais as partes envolvidas na integração devem estar inseridas, caso as informações envolvidas sejam utilizadas para o cumprimento de alguma lei específica.
- Requisitos de hardware ou Software, como servidores, link de internet, capacidade de armazenamento e memória, sistema operacional.
Datasul
Insira aqui as informações pertinentes a Datasul.
Logix
Insira aqui as informações pertinentes ao Logix.
Protheus
Insira aqui as informações pertinentes ao Protheus.
RM
Insira aqui as informações pertinentes ao RM.
Instalação/Atualização
Este tópico tem por objetivo orientar a instalação da integração, visando o seu funcionamento completo. Instalação de produtos ou ferramentas necessárias podem referenciar outros documentos existentes, desde que estejam disponíveis no repositório de documentação da TOTVS ou sejam enviados junto com o documento da integração em si. As informações mínimas necessárias para teste tópico são:
- Procedimentos que devem ser observados quando um dos produtos for atualizado.
- Configuração necessária que deve ser realizada em arquivos de configuração ou programas de parâmetros etc.
- Arquivos diversos que devem ser mantidos em determinados locais para o funcionamento da integração, exemplo: xml, xsd.
- Atualizações necessárias em banco de dados ou instruções para que elas sejam feitas.
- Processos, módulos ou programas que precisam ser instalados ou atualizados. Deve ser definida a versão mínima necessária dos programas envolvidos.
- Ferramentas, servidores ou serviços que precisam ser disponibilizados e configurados, o que pode gerar necessidade de novo hardware ou aumento de capacidade. Exemplo: serviço de WebService.
- Instruções para habilitar a comunicação da ferramenta EAI entre as partes, quais rotas devem ser definidas ou como as transações devem ser habilitadas.
Observação: evite o uso de Prints de telas, facilitando, assim, o trabalho de tradução e versionamento deste documento.
Datasul
Insira aqui as informações pertinentes a Datasul.
Logix
Insira aqui as informações pertinentes ao Logix.
Protheus
Insira aqui as informações pertinentes ao Protheus.
RM
Insira aqui as informações pertinentes ao RM.
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
Apresente quais as transações/entidades que são trocadas e quem envia a informação para quem. Pode (e recomenda-se) ter um diagrama, uma tabela ou afins que apresente este fluxo.
Relacione quais são as mensagem únicas (TOTVSMessage) utilizadas e qual o seu relacionamento com as entidades já existentes do ERPs envolvidos.
Exemplos:
Método | ID | Descrição | Origem | Destino | XSD (versões podem variar) |
Cadastros | 01 | Transportadora | SIGAOMS | Cockpit Logístico | updateCarriers |
02 | Fornecedor | SIGAOMS | Cockpit Logístico | LocalityAcquisitionService | |
Processos | 03 | Enviar viagens | Cockpit Logístico | SIGAOMS | ReleaseTripPublishRequestService |
04 | Liberar Viagens | SIGAOMS | Cockpit Logístico | UnblockReleasedTripAcquisition | |
05 | Montagem de Carga | SIGAOMS | Cockpit Logístico | UnblockReleasedTripAcquisitionService | |
06 | Pedido de Vendas | SIGAOMS | Cockpit Logístico | OrderAcquisitionService |
Fluxo das Informações
Para cada fluxo de informação descreva, se necessário, alterações de comportamento que o respectivo produto irá sofrer. Por exemplo: quando o Logix recebe o PEDIDO de OUTRO ERP, este pedido não poderá ser alterado no Logix.
Liste quais as entidades integradas e como é o mapeamento entre as diferentes estruturas. Por exemplo: Classe no sistema A vira categoria no sistema B, o campo X é refletido no campo Y etc.
Liste quais transações/operações a integração fará com as entidades relacionadas. Exemplo: Insert de PEDIDO, Insert, update de ITEM, buscar saldo em estoque do ITEM no dia X ou buscar dados do FUNCIONÁRIO.
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ãoPROTHEUS
COCKPIT LOGÍSTICO
Tabela
Campo
Tabela
Campo
Code
CTO990
CTO_SIMB
GMOEDA
SIMBOLO *
Description
CTO990
CTO_DESC
GMOEDA
DESCRICAO
Symbol
CTO990
CTO_SIMB
GMOEDA
SIMBOLO
Mensagem de integração dos registros do cadastro de "Fornecedor"
Campo Protheus | Tag XML | Campo Cockpit Logístico | Observações |
---|---|---|---|
MV_CPLREG | regionSourceId | Regional | |
"FOR-" + RTRIM(SA2->A2_COD) + "-" + RTRIM(SA2->A2_LOJA) | identifier | Código | Será adicionado a sigla "FOR" para composição do código para identificação que se trata de um fornecedor para uso como uma localide devido aos pedidos de beneficiamento do OMS. |
A2_NREDUZ | name | Nome | |
A2_NOME | description | Descrição | |
A2_END | addressStreet | Endereço | |
addressNumber | N° | Obtido por meio do campo A2_END | |
A2_COMPLEM | addressComplement | Complemento | |
A2_BAIRRO | addressDistrict | Bairro | |
A2_CEP | addressZipCode | CEP | |
A2_MUN | addressCity | Cidade | |
A2_EST | addressStateAcronym | UF | |
A2_PAIS / "BR" ou YA_SIGLA | addressCountryAcronym | País | Quando A2_PAIS em branco ou igual a 105 atribuido "BR" |
"2" | logisticRoleId | Tipo | 2=Destino (por orientação da Neolog para gerar menos combinações de rota) |
Mensagem de integração dos registros do cadastro de "Fornecedor"
Mensagem de integração dos registros do cadastro de "Transportadora"
Campo Protheus | Tag XML | Campo Cockpit Logístico | Observações |
---|---|---|---|
MV_CPLREG | regionSourceId | Ident. Regional | |
A4_COD | identifier | ID da transportadora (Código) | |
A4_NREDUZ | name | Nome da Transportadora | |
A4_NOME | description | Descrição da Transportadora |
Mensagem de integração dos registros do cadastro de "Pedido de Venda"
Campo Protheus | Tag XML | Campo Cockpit Logístico | Observações |
---|---|---|---|
MV_CPLREG | regionSourceId | Regional | |
MV_CPLIDS | integrationDataSource | Integração | |
"1" | orderTypeSourceId | Tipo do Pedido | |
RTRIM(SC5->C5_FILIAL) + "-" + RTRIM(SC5->C5_NUM) | identifier | SC5->(RECNO()) | |
RTRIM(SC5->C5_FILIAL) + "-" + RTRIM(SC5->C5_NUM) | code | Código do Ped. Transp. | |
"0" | priority | Prioridade | |
Date() | erpCreationDt | Data Corrente | Data de criação do pedido |
Date() | pickupStart | Janela Embarque | |
Date() ou C5_FECENT | deliveryStart | Janela Entrega | Data corrente ou data informada no pedido de venda |
Date() ou C6_ENTREG ou C9_DATENT | deliveryEnd | Janela Entrega | |
C9_PEDIDO | orderId | ID do Pedido de Transporte | |
RTRIM(SC5->C5_FILIAL)+"-"+RTRIM(SC5->C5_NUM) + C9_ITEM | sourceId | ||
C9_PRODUTO | productId | Produto | |
C9_QTDLIB | quantity | Quantidade total de unid. | |
C9_PRCVEN | price | Valor Total de unid. De prod. | |
"FIL-" + RTRIM(SC5->C5_FILIAL) | originId | Origem Inicial | |
"CLI-" + RTRIM(SC5->C5_CLIENT) + "-" + RTRIM(SC5->C5_LOJAENT) | destinationId | ID da Localidade de destino do Pedido | |
C9_QTDLIB | quantityInShipmentUnits | ||
B5_ALTURLC | height | Quando houver relacionamento com o B1_PRODUTO, quando vazio será enviado por default o contéudo = 0.001 | |
B5_LARGLC | width | Quando vazio por default o contéudo enviado será = 0.001 | |
B5_COMPRLC | length | Quando vazio por default o contéudo enviado será = 0.001 | |
B1_PESO ou B1_PESBRU | weight | De acordo com a configuração do parâmetro MV_PESOCAR, verificar o conteúdo do parâmetro por meio da função OsPesoProd e enviar os dados. Quando vazio por default o contéudo enviado será = 0.001 | |
MV_CPLEMB | shipperId | ID do Embarcador | |
"1" | modal | ID do modal do pedido de transporte | Enviar valor fixo 1 - Rodoviário |
C5_TPFRETE | incoterm | Sendo o conteúdo C = 1 e F = 0 para o CPL, quando o campo for vazio iremos passar sempre 1. | |
MV_CPLINV | shipmentUnitWrapperCode | Invólucro de embarque |
Mensagem de integração das viagens geradas no CPL para posterior geração das Cargas no SIGAOMS, utilizando a operação publishReleasedTrip:
Campo Prothues | Tag XML | Campo Cockpit Logístico | Observações |
---|---|---|---|
DK0_IDCESTA | basketSourceId | ID Cesta | |
DK0_REGID | regionSourceId | Identificador Regional | |
DK0_VIAGID | identifier | ID da Viagem | |
DK0_TRANSP | carrierId | ID Transportadora da Viagem | |
DK0_TIPVEI | vehicleId | ID do Tipo de Veículo da Viagem | |
DK0_DESTIP | vehicleDescription | Descrição do tipo de veículo da viagem | |
DK0_PLACA | truckLicensePlate | Placa do caminhão da viagem | |
DK0_ESTPLA | truckStateLicensePlate | Estado da placa do caminhão da viagem | |
DK0_QTDEIX | truckAxlesQuantity | Número de eixos do caminhão |
Mensagem dos itens (Pedidos) do CPL - deliveryUnit
Campo Protheus | Tag XML | Campo Cockpit Logístico | Observações |
---|---|---|---|
DK1_UNIDID | identifier | ||
DK1_REGID | RegionalSourceId | Regional | |
DK1_VIAGID | Viagem | Viagem CPL | |
DK1_PEDROT | orderSourceId | Pedido CPL | |
DK1_PRODUTO | productSourceId | Produto | |
DK1_QTD | quantity | Quantidade | |
DK1_PRECO | price | Preço | |
DK1_DATENT | deliveryDate | Dt/Hr Entrg | |
DK1_ORIGEM | integrationSource | ID da origem de dados |
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
Fluxo do Processo
Clientes
Tipo de Fluxo: Protheus -> Cockpit Logístico
Mensagem: LocalityAcquisitionService
Versão: 1.000
Ao cadastrar um cliente no Protheus, quando a integração estiver ativa, os dados serão enviados ao Cockpit Logístico por meio do método updateLocalities, esses dados por sua vez serão salvos como localidade, e poderão ser visualizados no CPL em: CADASTRO -> Localidades
Filiais
Tipo de Fluxo: Protheus -> Cockpit Logístico
Mensagem: LocalityAcquisitionService
Versão: 1.000
Ao cadastrar uma filial no Protheus, quando a integração estiver ativa, os dados serão enviados ao Cockpit Logístico por meio do método updateLocalities, esses dados por sua vez serão salvos como localidade, e poderão ser visualizados no CPL em: CADASTRO -> Localidades
Fornecedores
Tipo de Fluxo: Protheus -> Cockpit Logístico
Mensagem: LocalityAcquisitionService
Versão: 1.000
Ao cadastrar um Fornecedor no Protheus, quando a integração estiver ativa, os dados serão enviados ao Cockpit Logístico por meio do método updateLocalities, esses dados por sua vez serão salvos como localidade, e poderão ser visualizados no CPL em: CADASTRO -> Localidades
Transportadores
Tipo de Fluxo: Protheus -> Cockpit Logístico
Mensagem: CarrierAcquisitionService
Versão: 1.000
Ao cadastrar um Transportador no Protheus, quando a integração estiver ativa, os dados serão enviados ao Cockpit Logístico por meio do método CarrierAcquisitionService, esses dados por sua vez serão salvos como Transportadoras e poderão ser visualizados no CPL em: CADASTRO -> Transportadoras.
Produtos
Tipo de Fluxo: Protheus -> Cockpit Logístico
Mensagem: ProductAcquisitionService
Versão: 1.000
Ao cadastrar um Produto no Protheus, quando a integração estiver ativa, os dados serão enviados ao Cockpit Logístico por meio do método ProductAcquisitionService, esses dados por sua vez serão salvos como Produtos Simples e poderão ser visualizados no CPL em: CADASTRO -> Produtos Simples
Tipos de veículo
Tipo de Fluxo: Protheus -> Cockpit Logístico
Mensagem: VehicleAcquisitionService
Versão: 1.000
Ao cadastrar um Tipo de veículo no Protheus, quando a integração estiver ativa, os dados serão enviados ao Cockpit Logístico por meio do método VehicleAcquisitionService, esses dados por sua vez serão salvos como Veículos e poderão ser visualizados no CPL em: CADASTRO -> Veículos
Pedidos de venda
Tipo de Fluxo: Protheus -> Cockpit Logístico
Mensagem: OrderAcquisitionService
Versão: 1.000
Ao cadastrar um Pedido de venda no Protheus, quando a integração estiver ativa, os dados serão enviados ao Cockpit Logístico por meio do método OrderAcquisitionService, esses dados por sua vez serão salvos como Pedidos de transporte e poderão ser visualizados no CPL em: PROGRAMAÇÃO -> Analise, deve-se filtrar os dados da cesta geral.
No SIGAOMS, foi disponibilizado um programa que permite selecionar uma lista com os pedidos de venda para envio ao Cockpit Logístico. Os pedidos deverão estar liberados por crédito e estoque e com o campo "Carga" igual a 1 = Utiliza.
O cancelamento do pedido no CPL pode ser feito por meio de duas rotinas:
Cancelamento via rotina MATA460:
- Quando houver o cancelamento de uma liberação do pedido de venda por meio da rotina "Preparação dos Documentos de Saída", opção "Ações Relacionadas" "Estor. Docs" na confirmação da exclusão do registro, deverá ser realizado o envio do cancelamento ao CockPit Logístico.
Cancelamento via rotina MATA410:
- Alteração de um pedido de venda já liberado na rotina "Pedido de Venda" (MATA410), ao confirmar a alteração o sistema realiza a exclusão do registro liberado, assim deverá ser realizado o envio do cancelamento ao CockPit Logístico.
- Alteração de pedido de venda já liberado e com nova liberação na própria rotina (MATA410), ao confirmar a alteração com nova liberação o sistema exclui o registro anterior e recria um novo registro com as informações da alteração. Assim deverá ser realizado o envio do cancelamento para o Cockpit Logístico e o envio de um novo pedido liberado.
Cargas
Tipo de Fluxo: Cockpit Logístico -> Protheus
Mensagem: ReleaseTripPublishRequestService
Versão: 1.000
O Cockpit Logistico terá a função de enviar as viagens geradas para o SIGAOMS para a formação das Cargas. O envio é realizado pela chamada do WebService ReleaseTripPublishRequestService, para isso foi disponibilizado um programa monitor para receber estas viagens(OMSXCPL7).
A rotina oferece a opção de marcação dos registros e um botão "Gera Carga" para geração das Cargas no OMS.
Uma vez recebida a viagem do Cockpit e gerada a Carga no SIGAOMS, após a geração do documento fiscal da carga (NF de Saída) é enviada novamente ao Cockpit uma mensagem de retorno com a confirmação da gravação da Carga e documento de saída, assim o Cockpit confirma a viagem gerada, este retorno é realizado pelo WebService publishReleasedTripResponse, mensagem UnblockReleasedTripAcquisition. Esta chamada ocorre por meio da opção "Liberar Viagem".
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.