Compartilhar via


Exemplo de uso de ordens de remessa de entrada e saída

Observação

O Azure Active Directory agora é Microsoft Entra ID. Saiba mais

Este artigo apresenta um cenário de exemplo que mostra como criar ordens de remessa de entrada e saída por meio do processamento de mensagem. Ele usa os dados de amostra padrão associados à entidade legal (empresa) de exemplo USMF.

Como testar o processo de criação

Para testar o processo de criação para ordens de remessa de entrada e saída por meio de mensagens, defina as opções Habilitar criação manual de mensagens da ordem de remessa de saída e Habilitar criação manual de mensagens da ordem de remessa de entrada como Sim para um registro Sistema de origem. Você pode acabar criando diretamente mensagens da ordem de remessa nas páginas Mensagens da ordem de remessa de saída e Mensagens da ordem de remessa de entrada.

Outra maneira rápida de postar mensagens de exemplo é usando solicitações Protocolo Open Data (OData).

Em ambos os casos de exemplo, o processador de mensagens no Microsoft Dynamics 365 Supply Chain Management processa as mensagens e cria as ordens no sistema de depósito.

Dica

Para ignorar completamente os processos de criação da ordem de remessa por meio de mensagens, você pode criar as ordens de remessa de entrada e as ordens de remessa de saída diretamente nas páginas de ordem, permitindo as configurações Habilitar criação manual de ordens de remessa de entrada e Habilitar criação manual de ordens de remessa de saída para um sistema de origem.

A mesma lógica de estrutura de mensagem se aplica às mensagens de ordem de remessa de entrada e de saída:

  • Cabeçalho da ordem

    • Linha da ordem 1

    • Linha da ordem 2

    • de linha de ordem

  • Concluído

Dica

Para obter mais exemplos de solicitações HTTP para criar mensagens e integrar dados mestre de estoque e produto, vá para o repositório dynamics365scm-warehouse no GitHub.

Pré-requisitos

Antes de poder trabalhar neste exemplo usando um ambiente do Supply Chain Management, você deve preparar seu sistema da seguinte maneira:

Configure a autenticação para o exemplo

Na página Microsoft Entra Aplicativos de ID, atribua o usuário Admin ao cliente usado para autenticação durante a interação com o ambiente do Supply Chain Management a partir de uma origem externa. Como alternativa, atribua outro usuário que tenha acesso de autenticação às mensagens de integração, como a função padrão Operador de integração do sistema de depósito . Se você usar o mesmo usuário como parte da importação de dados mestre do produto, mais privilégios relacionados às entidades de dados mestre do produto deverão ser adicionados à função Operador de integração do sistema de depósito.

Ao lançar entidades via OData, você deve garantir que a empresa padrão do usuário corresponda à empresa na qual a entidade será lançada ou que a empresa (valor dataAreaId) seja especificado nas mensagens de conteúdo da solicitação. De qualquer forma, as mensagens de ordem de remessa poderão ser concluídas somente se a empresa (valor dataAreaId) for especificada.

Crie mensagens de ordem de remessa

Exemplo de uma mensagem simples de ordem de remessa de entrada

Para a InboundShipmentOrderMessages mensagem de cabeçalho de ordem de remessa de entrada, você deve fornecer, no mínimo, os seguintes dados:

  • MessageId: M1
  • dataAreaId: USMF (Opcional, dependendo da empresa do usuário de autorização padrão)
  • SourceSystemId: ERP
  • OrderNumber: IO1
  • ReceivingWarehouseId: 51

Quando você usa variáveis do , a mensagem InboundShipmentOrderMessages se parece com o exemplo a seguir.

POST {{resource}}/data/InboundShipmentOrderMessages
{
"MessageId": "{{MessageId}}",
"dataAreaId": "{{dataAreaId}}",
"SourceSystemId": "{{SourceSystem}}",
"OrderNumber": "{{OrderNumber}}",
"ReceivingWarehouseId": "{{Warehouse}}"
}

A mensagem InboundShipmentOrderLineMessages se parece com o exemplo a seguir.

POST {{resource}}/data/InboundShipmentOrderLineMessages
{
"MessageId": "{{MessageId}}",
"dataAreaId": "{{dataAreaId}}",
"SourceSystemId": "{{SourceSystem}}",
"OrderNumber": "{{OrderNumber}}",
"OrderLineNumber": 1,
"ItemNumber": "A0001",
"ExpectedQuantity": 10,
"ExpectedUnitSymbol": "Pcs"
}

Para confirmar as mensagens, lance uma mensagem completa para o cabeçalho e as linhas. A mensagem completa se parece com o exemplo a seguir.

POST {{resource}}/data/InboundShipmentOrderMessages(MessageId='{{MessageId}}', dataAreaId='{{dataAreaId}}',SourceSystemId='{{SourceSystem}}', OrderNumber='{{OrderNumber}}')/Microsoft.Dynamics.DataEntities.Complete?cross-company=true

Anotação

O valor dataAreaId é usado como parte da chave para corresponder ao cabeçalho lançado e as mensagens de linha. Portanto, o valor dataAreaId deve ser especificado. O sufixo ?cross-company=true é obrigatório apenas para mensagens em que a empresa é diferente da empresa padrão do usuário configurada na página Aplicativos do Microsoft Entra ID.

Exemplo de uma mensagem simples de ordem de remessa de saída

Para a OutboundShipmentOrderMessages mensagem de cabeçalho de ordem de remessa de saída, você deve fornecer, no mínimo, os seguintes dados:

  • MessageId: M2
  • dataAreaId: USMF (Opcional, dependendo da empresa do usuário de autorização padrão)
  • SourceSystemId: ERP
  • OrderNumber: OO1
  • ShipFromWarehouseId: 51
  • ConsigneeName ou ReceiverName: Microsoft
  • ConsigneeCountryRegionId ou ReceiverCountryRegionId: USA

Quando você usa variáveis do , a mensagem OutboundShipmentOrderMessages se parece com o exemplo a seguir.

POST {{resource}}/data/OutboundShipmentOrderMessages
{
"MessageId": "{{MessageId}}",
"dataAreaId": "{{dataAreaId}}",
"SourceSystemId": "{{SourceSystem}}",
"OrderNumber": "{{OrderNumber}}",
"ShipFromWarehouseId": "{{Warehouse}}",
"ConsigneeName": "{{ConsigneeName}}",
"ConsigneeCountryRegionId": "{{ConsigneeCountryRegionId}}"
}

A mensagem OutboundShipmentOrderLineMessages se parece com o exemplo a seguir.

POST {{resource}}/data/OutboundShipmentOrderLineMessages
{
"MessageId": "{{MessageId}}",
"dataAreaId": "{{dataAreaId}}",
"SourceSystemId": "{{SourceSystem}}",
"OrderNumber": "{{OrderNumber}}",
"OrderLineNumber": 1,
"ItemNumber": "A0001",
"OrderedQuantity": 10,
"OrderedUnitSymbol": "Pcs"
}

Para confirmar as mensagens, lance uma mensagem completa para o cabeçalho. A mensagem completa se parece com o exemplo a seguir.

POST {{resource}}/data/OutboundShipmentOrderMessages(MessageId='{{MessageId}}', dataAreaId='{{dataAreaId}}',SourceSystemId='{{SourceSystem}}', OrderNumber='{{OrderNumber}}')/Microsoft.Dynamics.DataEntities.Complete?cross-company=true

Anotação

O valor dataAreaId é usado como parte da chave para corresponder ao cabeçalho lançado e as mensagens de linha. Portanto, o valor dataAreaId deve ser especificado. O sufixo ?cross-company=true é obrigatório apenas para mensagens em que a empresa é diferente da empresa padrão do usuário configurada na página Aplicativos do Microsoft Entra ID.

Mensagens do processador de mensagens para ordens de remessa

Depois que os dois documentos forem importados para a fila de mensagens, você deverá usar o processador de mensagens para processá-los e criar as ordens de remessa de entrada e saída reais.