Delen via


Voorbeeld van het gebruik van inkomende en uitgaande zendingsorders

Notitie

Azure Active Directory is nu Microsoft Entra ID. Meer informatie

Dit artikel bevat een voorbeeldscenario dat laat zien hoe u inkomende en uitgaande zendingsorders maakt via berichtverwerking. In het artikel worden de standaardvoorbeeldgegevens gebruikt die horen bij USMF, een voorbeeld van een rechtspersoon (bedrijf).

Het aanmaakproces testen

Als u het aanmaakproces voor inkomende en uitgaande zendingsorders via berichten wilt uitproberen, stelt u de opties Het handmatig maken van uitgaande zendingsorderberichten inschakelen en Het handmatig maken van inkomende zendingsorderberichten inschakelen in op Ja voor een Bronsysteem-record. U kunt vervolgens zendingsorderberichten rechtstreeks op de pagina's met uitgaande zendingsorderberichten en inkomende zendingsorderberichten maken.

Een andere snelle manier om voorbeeldberichten te verzenden is het gebruik van OData-aanvragen (Open Data Protocol).

In beide voorbeelden worden de berichten verwerkt met de berichtverwerking in Microsoft Dynamics 365 Supply Chain Management en worden de orders in het magazijnsysteem gemaakt.

Tip

Als u het maken van zendingsorders via berichten volledig wilt overslaan, kunt u de inkomende zendingsorders en uitgaande zendingsorders rechtstreeks op de orderpagina's maken door de instellingen Het handmatig maken van inkomende zendingsorders inschakelen en Het handmatig maken van uitgaande zendingsorders inschakelen toe te staan voor een bronsysteem.

Dezelfde berichtenstructuurlogica is van toepassing op zowel de berichten voor inkomende als uitgaande zendingsorders:

  • Orderkoptekst

    • Orderregel 1

    • Orderregel 2

    • Orderregel n

  • Gereed

Tip

Voor meer voorbeelden van HTTP-aanvragen voor het maken van berichten en het integreren van voorraad- en productmodelgegevens, gaat u naar de opslagplaats voor dynamics365scm-magazijn op Aanmelding.

Vereisten

Voordat u dit voorbeeld kunt doorlopen met behulp van een Supply Chain Management-omgeving, moet u uw systeem op de volgende manier voorbereiden:

Verificatie instellen voor het voorbeeld

Wijs op de pagina Microsoft Entra ID-toepassingen de gebruiker Beheerder toe aan de client die wordt gebruikt voor verificatie tijdens interactie met de Supply Chain Management-omgeving vanuit een externe bron. U kunt ook een andere gebruiker toewijzen die verificatietoegang heeft tot de integratieberichten, zoals de standaardrol Operator voor integratie van magazijnsysteem. Als u dezelfde gebruiker gebruikt als onderdeel van het importeren van producthoofdgegevens, moeten er meer bevoegdheden die gerelateerd zijn aan producthoofdgegevensentiteiten worden toegevoegd aan de rol Operator voor integratie van magazijnsysteem.

Wanneer u entiteiten boekt via OData, moet u ervoor zorgen dat het standaardbedrijf van de gebruiker overeenkomt met het bedrijf waarnaar de entiteit wordt geboekt, of dat het bedrijf (dataAreaId-waarde) is opgegeven in de payload-berichten van het verzoek. Hoe dan ook, berichten voor zendingsorders kunnen alleen worden voltooid als het bedrijf (dataAreaId-waarde) is opgegeven.

Berichten voor zendingsorders maken

Voorbeeld van een eenvoudig bericht voor een inkomende zendingsorder

Voor de koptekst van het bericht voor inkomende zendingsorders InboundShipmentOrderMessages moet u minimaal de volgende gegevens opgeven:

  • MessageId: M1
  • dataAreaId: USMF (optioneel, afhankelijk van de/het standaard-autorisatiegebruiker/-bedrijf)
  • SourceSystemId: ERP
  • OrderNumber: IO1
  • ReceivingWarehouseId: 51

Wanneer u -variabelen gebruikt, ziet het InboundShipmentOrderMessages-bericht eruit als in het volgende voorbeeld.

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

Het InboundShipmentOrderLineMessages-bericht ziet eruit als in het volgende voorbeeld.

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

Om de berichten vast te leggen, plaatst u een complete-bericht voor de koptekst en regels. Het complete-bericht ziet er ongeveer uit als in het volgende voorbeeld.

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

Notitie

De dataAreaId-waarde wordt gebruikt als onderdeel van de sleutel om te matchen met de vrijgegeven kop- en regelberichten. Daarom moet de dataAreaId-waarde worden opgegeven. Het achtervoegsel ?cross-company=true is alleen vereist voor berichten waarbij het bedrijf verschilt van het standaardbedrijf van de gebruiker dat is ingesteld op de pagina Microsoft Entra ID-toepassingen.

Voorbeeld van een eenvoudig bericht voor een uitgaande zendingsorder

Voor de koptekst van het bericht voor uitgaande zendingsorders OutboundShipmentOrderMessages moet u minimaal de volgende gegevens opgeven:

  • MessageId: M2
  • dataAreaId: USMF (optioneel, afhankelijk van de/het standaard-autorisatiegebruiker/-bedrijf)
  • SourceSystemId: ERP
  • OrderNumber: OO1
  • ShipFromWarehouseId: 51
  • ConsigneeName of ReceiverName: Microsoft
  • ConsigneeCountryRegionId of ReceiverCountryRegionId: USA

Wanneer u -variabelen gebruikt, ziet het OutboundShipmentOrderMessages-bericht eruit als in het volgende voorbeeld.

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

Het OutboundShipmentOrderLineMessages-bericht ziet eruit als in het volgende voorbeeld.

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

Om de berichten vast te leggen, plaatst u een complete-bericht voor de koptekst. Het complete-bericht ziet er ongeveer uit als in het volgende voorbeeld.

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

Notitie

De dataAreaId-waarde wordt gebruikt als onderdeel van de sleutel om te matchen met de vrijgegeven kop- en regelberichten. Daarom moet de dataAreaId-waarde worden opgegeven. Het achtervoegsel ?cross-company=true is alleen vereist voor berichten waarbij het bedrijf verschilt van het standaardbedrijf van de gebruiker dat is ingesteld op de pagina Microsoft Entra ID-toepassingen.

Berichten van berichtverwerking voor zendingsorders

Nadat de twee documenten in de berichtenwachtrij zijn geïmporteerd, moet u berichtverwerking gebruiken om ze te verwerken en de daadwerkelijke inkomende en uitgaande zendingsorders te maken.