Introdução
Este documento descreve como o Web Service de integração pode ser implementado pelo cliente para que o MPS possa se comunicar com o sistema que se está sendo integrado.
A integração do Portal MPS com o Web Service MPSOrdersNotification é uma funcionalidade disponível a partir da versão 5.3, que possibilita que um sistema de terceiros receba notificações do Portal MPS relacionadas às alterações em pedidos e entregas atribuídas aos Centros de Distribuição e Fornecedores.
O Web Service deverá ser implementado respeitando os métodos que serão descritos para que o Portal MPS os execute quando um Centro de Distribuição ou um Fornecedor sofrer alguma alteração nos pedidos e entregas relacionadas a eles. Isso deve ser configurado individualmente no sistema. Também deverá ser publicado em um servidor com endereço IP ou nome de domínio que seja possível a chamada pelo servidor do Portal MPS. Após a publicação, o parceiro deverá configurar no Portal MPS o endereço onde o Web Service foi publicado e, também, configurar os métodos a serem chamados de acordo com as alterações de status desejadas e, também, definir que campos que deseja incluir ou não no pacote da chamada ao Web Service.
O nome da pasta virtual onde vai ser publicado o Web Service e o nome da classe asmx podem ser alterados, mas recomenda-se usar os mesmos que estão no projeto de exemplo.
Métodos que podem ser implementados de acordo com a necessidade
Nenhum método tem sua implementação obrigatória, pode escrever apenas os que deseja que o sistema acesse. Eles serão chamados de acordo com o status ocorrido e se foi marcado no Portal MPS para que seja chamado.
Esta chamada irá conter um conteúdo em formato JSON com dados que podem ser personalizados no Portal MPS apontando que campos enviar.
|
Método |
Descrição |
|
Será chamado pelo Portal MPS quando ocorrer um novo pedido para o Centro de Distribuição ou Fornecedor |
|
|
Será chamado pelo Portal MPS quando um pedido atribuído ao Centro de Distribuição ou Fornecedor for processado |
|
|
Será chamado pelo Portal MPS quando um pedido atribuído ao Centro de Distribuição for faturado |
|
|
Será chamado pelo Portal MPS quando um pedido atribuído ao Centro de Distribuição ou Fornecedor for encaminhado |
|
|
Será chamado pelo Portal MPS quando iniciar o recebimento de um pedido atribuído ao Centro de Distribuição ou Fornecedor |
|
|
Será chamado pelo Portal MPS quando iniciar a análise de um pedido atribuído ao Centro de Distribuição |
|
|
Será chamado pelo Portal MPS quando um pedido atribuído ao Centro de Distribuição ou Fornecedor for finalizado |
|
|
Será chamado pelo Portal MPS quando um pedido atribuído ao Centro de Distribuição ou Fornecedor for cancelado |
Importante
Durante a implementação, é de extrema importância que sejam respeitadas as letras maiúsculas e minúsculas para os nomes dos métodos criados no Web Service.
Seleção de campos
Na tela de configuração da integração no Portal MPS, é possível selecionar que campos são desejados para serem enviados ao Web Service. Abaixo, segue a lista de campos e suas descrições.
Observe que estão em negrito os campos que serão retornados por padrão, caso nenhum seja selecionado.
-
Propriedade: é por este nome que se identifica o campo dentro do conteúdo JSON que será enviado pelo Portal MPS;
-
Descrição: uma breve descrição sobre o campo.
Pedido
|
Propriedade |
Descrição |
|
orderID |
Identificador do pedido |
|
orderNumber |
Número do pedido |
|
orderTypeID |
Tipo do pedido (1 = Trasnferência; 2 = Entrada) |
|
orderCreatedDate |
Data de criação do pedido |
|
orderField1Value |
Valor personalizado 1 do pedido |
|
orderField2Value |
Valor personalizado 2 do pedido |
|
orderField3Value |
Valor personalizado 3 do pedido |
Solicitante
|
Propriedade |
Descrição |
|
stockRootID |
Identificador estoque do solicitante |
|
stockRootName |
Nome do estoque solicitante |
|
stockRootType |
Tipo do estoque solicitante |
|
enterpriseName |
Nome da empresa qual o Estoque do Cliente abastece o site ou em banco, quando o solicitante for um Centro de Distribuição |
|
stockRootContactName |
Nome do contato do estoque solicitante |
|
stockRootContactEmail |
E-mail do contato do estoque solicitante |
|
stockRootContactPhone |
Telefone do contato do estoque solicitante |
|
stockRootCustomField1Value |
Valor personalizado 1 do estoque solicitante |
|
stockRootCustomField2Value |
Valor personalizado 2 do estoque solicitante |
|
stockRootCustomField3Value |
Valor personalizado 3 do estoque solicitante |
|
stockRootCountry |
País que o estoque solicitante se encontra |
|
stockRootState |
Estado que o estoque solicitante se encontra |
|
stockRootCity |
Cidade que o estoque solicitante se encontra |
|
stockRootStreet |
Rua que o estoque solicitante se encontra |
|
stockRootNumber |
Número do estoque solicitante |
|
stockRootNeighborhood |
Bairro que o estoque solicitante se encontra |
|
stockRootZIPCode |
CEP que o estoque solicitante se encontra |
Fornecedor e Centro de Distribuição
Quando o pedido for de Transferência (OrderTypeID = 1), os dados abaixo referem-se a um destinatário do tipo Centro de Distribuição.
Se o pedido for de Entrada (OrderTypeID = 2), os dados abaixo referem-se a um Destinatário do tipo Fornecedor.
|
Propriedade |
Descrição |
|
destID |
Número identificador do Destinatário |
|
destName |
Nome do Destinatário |
|
destCustomField1Value |
Valor personalizado 1 do Destinatário |
|
destCustomField2Value |
Valor personalizado 2 do Destinatário |
|
destCustomField3Value |
Valor personalizado 3 do Destinatário |
|
destCountry |
País que o Destinatário se encontra |
|
destState |
Estado que o Destinatário se encontra |
|
destCity |
Cidade que o Destinatário se encontra |
|
destStreet |
Rua que o Destinatário se encontra |
|
destNumber |
Número do Destinatário |
|
destNeighborhood |
Bairro que o Destinatário se encontra |
|
destZIPCode |
CEP que o Destinatário se encontra |
Entrega
|
Propriedade |
Descrição |
|
shipmentID |
Identificador da entrega |
|
shipmentStatus |
Status da entrega |
|
shipmentCreatedDate |
Data de criação da entrega |
|
expectedDate |
Data esperada da entrega |
|
invoiceNumber |
Número da nota fiscal da entrega |
|
shipmentField1Value |
Valor personalizado 1 da entrega |
|
shipmentField2Value |
Valor personalizado 2 da entrega |
|
shipmentField3Value |
Valor personalizado 3 da entrega |
|
shipmentNumber |
Número da entrega |
Item da entrega
|
Propriedade |
Descrição |
|
shipmentItemID |
Identificador do item da entrega |
|
shipmentItemStatus |
Status do item do estoque |
|
UTCSentDate |
Data que o item foi enviado (UTC 0) |
|
UTCReceivedDate |
Data de recebimento (UTC 0) |
Modelo do suprimento
|
Propriedade |
Descrição |
|
supplyModelID |
Identificador do modelo de suprimento solicitado |
|
supplyModelBrandName |
Fabricante do modelo de suprimento solicitado |
|
supplySubFunctionName |
Tipo do modelo de suprimento solicitado |
|
partNumber |
PartNumber do modelo de suprimento solicitado |
|
capacity |
Capacidade do modelo de suprimento solicitado |
|
description |
Descrição do modelo de suprimento solicitado |
|
quality |
Qualidade do modelo de suprimento solicitado |
|
internalCode |
Código interno do modelo de suprimento solicitado |
Item do estoque
|
Propriedade |
Descrição |
|
stockItemID |
Identificador do item no estoque |
|
stockItemSerialNumber |
Número de série do item no estoque |
Impressora
|
Propriedade |
Descrição |
|
printerName |
Nome da impressora qual o material solicitado está atribuído |
|
printerBrandName |
Fabricante da impressora qual o material solicitado está atribuído |
|
printerModel |
Modelo da impressora qual o material solicitado está atribuído |
|
addressName |
Endereço da impressora qual o material solicitado está atribuído |
|
printerSerialNumber |
Número de série da impressora qual o material solicitado está atribuído |
|
siteName |
Site da impressora qual o material solicitado está atribuído |
|
department |
Departamento da impressora qual o material solicitado está atribuído |
|
location |
Localização da impressora qual o material solicitado está atribuído |
|
contractNumber |
Contrato da impressora qual o material solicitado está atribuído |
|
assetNumber |
Número do patrimônio da impressora qual o material solicitado está atribuído |
|
contactData |
Dados do contato da impressora qual o material solicitado está atribuído |
|
lastProductionCounterUsed |
Último contador utilizado pelo suprimento atual |
|
lastProductionCounterDate |
Data da última leitura do contador utilizado pelo suprimento atual |
|
printersResponsibles |
Responsáveis pela impressora |
Exemplo de implementação do Web Service
Clique aqui para obter um exemplo de como implementar o Web Service para receber as notificações do Portal MPS.