Exemplo de utilização de ordens de envio de entrada e saída
Nota
O Azure Active Directory é agora o Microsoft Entra ID. Saber mais
Este artigo fornece um cenário de exemplo que mostra como criar ordens de envio de entrada e de saída através do processamento de mensagens. Utiliza os dados de exemplo padrão associados ao exemplo de entidade legal (empresa) USMF.
Como testar o processo de criação
Para experimentar o processo de criação de ordens de envio de entrada e de saída através de mensagens, defina as opções Ativar a criação manual de mensagens de ordem de envio de saída e Ativar a criação manual de mensagens de ordem de envio de entrada como Sim para um registo do Sistema de origem. Em seguida, é possível criar mensagens de ordens de transporte diretamente nas páginas Mensagens de ordens de transporte de saída e Mensagens de ordens de transporte de entrada .
Outra maneira rápida de publicar mensagens de exemplo é usar pedidos OData (Open Data Protocol).
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 do armazém.
Dica
Para ignorar completamente os processos de criação de ordens de envio através de mensagens, pode criar as ordens de envio de entrada e as ordens de envio de saída diretamente nas páginas de encomendas ao permitir as definições Ativar a criação manual de ordens de envio de entrada e Ativar a criação manual de ordens de envio de saída para um sistema de origem.
A mesma lógica de estrutura de mensagens aplica-se às mensagens de ordens de envio de entrada e saída:
Cabeçalho da encomenda
Linha da encomenda 1
Linha da encomenda 2
…
Linha da encomenda n
Concluir
Os dados de exemplo fornecidos neste artigo utilizam um processo que não depende da empresa predefinida para autorizar utilizadores. Por conseguinte, as mensagens deverão incluir um valor dataAreaId
.
Pré-requisitos
Para poder trabalhar neste exemplo utilizando um ambiente do Supply Chain Management, deverá preparar o seu sistema da seguinte forma:
- Verifique os requisitos de versão e ative a funcionalidade, conforme descrito em Ativar e configurar o modo só de gestão do armazém.
- Trabalhe num sistema em que os dados de demonstração padrão se encontrem instalados e selecione a entidade legal USMF.
- Configure pelo menos um registo na página Sistemas de origem. Este cenário de exemplo pressupõe que configurou um sistema de origem em que o campo Sistema de origem se encontra definido como ERP. Para obter mais informações, consulte Configurar os seus sistemas de origem.
- Configure as sequências de números necessárias, conforme descrito em Configurar sequências de números.
Configurar a autenticação para o exemplo
Na página Aplicações de Microsoft Entra ID, atribua o utilizador Admin ao cliente utilizado para a autenticação durante a interação com o ambiente Supply Chain Management de uma origem externa. Em alternativa, atribua outro utilizador que tenha acesso de autenticação às mensagens de integração, como a função predefinida Operador de integração do sistema de armazém. Se utilizar o mesmo utilizador como parte da importação de dados globais de produto, terá de adicionar mais privilégios relacionados com as entidades de dados globais de produto à função Operador de integração do sistema de armazém.
Quando publica entidades através de OData, deverá garantir que a empresa predefinida do utilizador corresponde à empresa na qual a entidade será publicada ou que a empresa (valor dataAreaId
) é especificada nas mensagens de payload do pedido. De qualquer forma, as mensagens de ordem de envio só poderão ser concluídas se a empresa (valor dataAreaId
) for especificada.
Criar mensagens de ordem de envio
Exemplo de uma mensagem simples de ordem de envio de entrada
Para a mensagem de cabeçalho de ordem de envio de entrada InboundShipmentOrderMessages
, deverá fornecer pelo menos os seguintes dados:
MessageId
: M1dataAreaId
: USMF (opcional, conforme a empresa predefinida do utilizador de autorização)SourceSystemId
: ERPOrderNumber
: IO1ReceivingWarehouseId
: 51
Quando utiliza variáveis do , a mensagem InboundShipmentOrderMessages
assemelha-se ao exemplo seguinte.
POST {{resource}}/data/InboundShipmentOrderMessages
{
"MessageId": "{{MessageId}}",
"dataAreaId": "{{dataAreaId}}",
"SourceSystemId": "{{SourceSystem}}",
"OrderNumber": "{{OrderNumber}}",
"ReceivingWarehouseId": "{{Warehouse}}"
}
A mensagem InboundShipmentOrderLineMessages
assemelha-se ao exemplo seguinte.
POST {{resource}}/data/InboundShipmentOrderLineMessages
{
"MessageId": "{{MessageId}}",
"dataAreaId": "{{dataAreaId}}",
"SourceSystemId": "{{SourceSystem}}",
"OrderNumber": "{{OrderNumber}}",
"OrderLineNumber": 1,
"ItemNumber": "A0001",
"ExpectedQuantity": 10,
"ExpectedUnitSymbol": "Pcs"
}
Para consolidar as mensagens, publique uma mensagem completa para o cabeçalho e linhas. A mensagem completa assemelha-se ao exemplo seguinte.
POST {{resource}}/data/InboundShipmentOrderMessages(MessageId='{{MessageId}}', dataAreaId='{{dataAreaId}}',SourceSystemId='{{SourceSystem}}', OrderNumber='{{OrderNumber}}')/Microsoft.Dynamics.DataEntities.Complete?cross-company=true
Nota
O valor dataAreaId
é utilizado como parte da chave para corresponder ao cabeçalho e mensagens de linha libertados. Por conseguinte, é necessário especificar o valor dataAreaId
. O sufixo ?cross-company=true
só é obrigatório para mensagens em que a empresa seja diferente da empresa predefinida do utilizador configurada na página Aplicações de Microsoft Entra ID.
Exemplo de uma mensagem simples de ordem de envio de saída
Para a mensagem de cabeçalho de ordem de envio de saída OutboundShipmentOrderMessages
, deverá fornecer pelo menos os seguintes dados:
MessageId
: M2dataAreaId
: USMF (opcional, conforme a empresa predefinida do utilizador de autorização)SourceSystemId
: ERPOrderNumber
: OO1ShipFromWarehouseId
: 51ConsigneeName
ouReceiverName
: MicrosoftConsigneeCountryRegionId
ouReceiverCountryRegionId
: EUA
Quando utiliza variáveis do , a mensagem OutboundShipmentOrderMessages
assemelha-se ao exemplo seguinte.
POST {{resource}}/data/OutboundShipmentOrderMessages
{
"MessageId": "{{MessageId}}",
"dataAreaId": "{{dataAreaId}}",
"SourceSystemId": "{{SourceSystem}}",
"OrderNumber": "{{OrderNumber}}",
"ShipFromWarehouseId": "{{Warehouse}}",
"ConsigneeName": "{{ConsigneeName}}",
"ConsigneeCountryRegionId": "{{ConsigneeCountryRegionId}}"
}
A mensagem OutboundShipmentOrderLineMessages
assemelha-se ao exemplo seguinte.
POST {{resource}}/data/OutboundShipmentOrderLineMessages
{
"MessageId": "{{MessageId}}",
"dataAreaId": "{{dataAreaId}}",
"SourceSystemId": "{{SourceSystem}}",
"OrderNumber": "{{OrderNumber}}",
"OrderLineNumber": 1,
"ItemNumber": "A0001",
"OrderedQuantity": 10,
"OrderedUnitSymbol": "Pcs"
}
Para consolidar as mensagens, publique uma mensagem completa para o cabeçalho. A mensagem completa assemelha-se ao exemplo seguinte.
POST {{resource}}/data/OutboundShipmentOrderMessages(MessageId='{{MessageId}}', dataAreaId='{{dataAreaId}}',SourceSystemId='{{SourceSystem}}', OrderNumber='{{OrderNumber}}')/Microsoft.Dynamics.DataEntities.Complete?cross-company=true
Nota
O valor dataAreaId
é utilizado como parte da chave para corresponder ao cabeçalho e mensagens de linha libertados. Por conseguinte, é necessário especificar o valor dataAreaId
. O sufixo ?cross-company=true
só é obrigatório para mensagens em que a empresa seja diferente da empresa predefinida do utilizador configurada na página Aplicações de Microsoft Entra ID.
Mensagens do processador de mensagens para ordens de envio
Após a importação dos dois documentos para a fila de mensagens, deverá utilizar o processador de mensagens para os processar e criar as ordens de envio de entrada e saída reais.
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários