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
…
nº 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:
- Verifique os requisitos de versão e habilite o recurso conforme descrito em Habilitar e configurar o modo somente gerenciamento de depósito.
- Trabalhe em um sistema onde os dados de demonstração estão instalados, e selecione a entidade legal USMF.
- Configure pelo menos um registro na página Sistemas de origem. Este cenário de exemplo pressupõe que você configurou um sistema de origem em que o campo Sistema de origem está definido como ERP. Para obter mais informações, confira Configurar os seus sistemas de origem.
- Configure as sequências numéricas necessárias conforme descrito em Configurar sequências numéricas.
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
ouReceiverName
: Microsoft -
ConsigneeCountryRegionId
ouReceiverCountryRegionId
: 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.