Del via


Eksempel på brug af indgående og udgående forsendelsesordrer

Bemærk

Azure Active Directory er nu Microsoft Entra ID. Lær mere

Denne artikel indeholder et eksempelscenario, der viser, hvordan du kan oprette indgående og udgående forsendelsesordrer via meddelelsesbehandling. Den bruger standardeksempeldata, der er knyttet til USMF-eksemplet på den juridiske enhed (firma).

Sådan testes oprettelsesprocessen

Hvis du vil prøve at oprette indgående og udgående forsendelsesordrer via meddelelser, skal du angive indstillingerne Aktiver oprettelse af manuel udgående forsendelsesordremeddelelse og Aktiver oprettelse af manuel indgående forsendelsesordremeddelelse til Ja for en post i et kildesystem. Du kan derefter oprette forsendelsesordremeddelelser direkte på siderne udgående forsendelsesordremeddelelser og indgående forsendelsesordremeddelelser.

En anden hurtig måde at bogføre eksempelmeddelelser på er at bruge OData-anmodninger (Open Data Protocol)-anmodninger.

I begge eksempler behandler meddelelsesprocessoren meddelelserne Microsoft Dynamics 365 Supply Chain Management og opretter ordrerne i lagerstedssystemet.

Tip

Hvis du helt vil springe processen til oprettelse af forsendelsesordrer over via meddelelser, kan du oprette indgående forsendelsesordrer og udgående forsendelsesordrer direkte på ordresiderne ved at tillade oprettelse af manuel indgående forsendelsesordre og aktivere manuel oprettelse af udgående forsendelsesordrer for et kildesystem.

Den samme logik for meddelelsesstruktur gælder for meddelelser for både indgående og udgående forsendelsesordrer:

  • Ordrehoved

    • Ordrelinje 1

    • Ordrelinje 2

    • Ordrelinje n

  • Fuldfør

Tip!

Du kan finde flere eksempler på HTTP-anmodninger til oprettelse af meddelelser og integration af lager- og produktmasterdata ved at gå til dynamics365scm-warehouse-lageret på GitHub.

Forudsætninger

Før du kan arbejde dig gennem dette eksempel ved at bruge et Supply Chain Management-miljø, skal du forberede dit system på følgende måde:

Opret godkendelse til eksemplet

På siden Microsoft Entra ID-applikationer skal du tildele administratorbrugeren til den klient, der bruges til godkendelse under interaktion med Supply Chain Management-miljøet fra en ekstern kilde. Alternativt kan du tildele en anden bruger, der har godkendelsesadgang til integrationsmeddelelserne, såsom standardrollen Operator for lagerstedssystemintegration. Hvis du bruger den samme bruger som en del af importen af produktmasterdata, skal flere privilegier, der er relateret til produktmasterdataenheder, føjes til rollen Operator for lagerstedssystemintegration.

Når du poster enheder via OData, skal du enten sikre dig, at brugerens standardvirksomhed matcher den virksomhed, som enheden vil blive postet i, eller at virksomheden (dataAreaId- værdi) er angivet i anmodningens nyttelastmeddelelser. Uanset hvad, kan meddelelser om forsendelsesordrer kun udfyldes, hvis virksomheden (dataAreaId-værdi) er angivet.

Oprette forsendelsesordremeddelelser

Eksempel på en simpel indgående forsendelsesordremeddelelse

For InboundShipmentOrderMessages-meddelelsen om overskrift til indgående forsendelsesordre skal du som minimum angive følgende data:

  • MessageId: M1
  • dataAreaId: USMF( valgfrit, afhængigt af standardgodkendelsesbrugerfirmaet)
  • SourceSystemId: ERP
  • OrderNumber: IO1
  • ReceivingWarehouseId: 51

Når du bruger variabler, ser InboundShipmentOrderMessages-meddelelsen ser ud som følgende eksempel.

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

InboundShipmentOrderLineMessages-meddelelsen ser ud som følgende eksempel.

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

For at bekræfte meddelelserne skal du poste en komplet meddelelse til overskriften og linjerne. Den komplette meddelelse ser nogenlunde ud som følgende eksempel.

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

Seddel

dataAreaId-værdien bruges som en del af nøglen til at matche de frigivne overskrifts- og linjemeddelelser. dataAreaId-værdien skal derfor angives. Suffikset ?cross-company=true kræves kun for meddelelser, hvor virksomheden er en anden end brugerens standardvirksomhed, der er konfigureret på siden Microsoft Entra ID-applikationer.

Eksempel på en simpel udgående forsendelsesordremeddelelse

For OutboundShipmentOrderMessages-meddelelsen om overskrift til udgående forsendelsesordre skal du som minimum angive følgende data:

  • MessageId: M2
  • dataAreaId: USMF( valgfrit, afhængigt af standardgodkendelsesbrugerfirmaet)
  • SourceSystemId: ERP
  • OrderNumber: OO1
  • ShipFromWarehouseId: 51
  • ConsigneeName eller ReceiverName: Microsoft
  • ConsigneeCountryRegionId eller ReceiverCountryRegionId: USA

Når du bruger variabler, ser OutboundShipmentOrderMessages-meddelelsen ser ud som følgende eksempel.

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

OutboundShipmentOrderLineMessages-meddelelsen ser ud som følgende eksempel.

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

For at bekræfte meddelelserne skal du poste en komplet meddelelse til overskriften. Den komplette meddelelse ser nogenlunde ud som følgende eksempel.

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

Seddel

dataAreaId-værdien bruges som en del af nøglen til at matche de frigivne overskrifts- og linjemeddelelser. dataAreaId-værdien skal derfor angives. Suffikset ?cross-company=true kræves kun for meddelelser, hvor virksomheden er en anden end brugerens standardvirksomhed, der er konfigureret på siden Microsoft Entra ID-applikationer.

Meddelelser om meddelelsesprocessor for forsendelsesordrer

Når de to dokumenter er importeret til meddelelseskøen, skal du bruge meddelelsesprocessoren til at behandle dem og oprette de faktiske indgående og udgående forsendelsesordrer.