Del via


Kald programmet for Intelligent opfyldelsesoptimering (DOM) via API.

Som del af udgivelsen i april 2023 kan du kalde Microsoft Dynamics 365 Intelligent Order Management-programmet til opfyldelsessoptimering (DOM) uden for salgsordreorkestrering via API (Application programming interface). Enhver platform, f.eks. platforme for e-handel, markedsplads eller ERP (Enterprise Resource Planning), kan sende en API-anmodning til Intelligent Order Management for at få den optimale opfyldelseskilde sammen med forsendelsesmuligheder såsom fragtpriser og forventet leveringsdato. Hvis du blot vil have en opfyldelsesplan, skal API-anmodningen som minimum indeholde leveringsadresse, produkter og mængde. Hvis du ønsker at få transportørens forsendelsespriser og anslåede leveringsdatoer ud over en opfyldelsesplan, skal du videregive operatøroplysningerne. I øjeblikket er API'en bygget til at kalde FedEx-rate API'en for at få forsendelsespriserne. Nyttedata-svaret er imidlertid generisk for enhver operatør.

Forudsætninger

Følgende forudsætninger skal være opfyldt, før du kan bruge optimeringsprogrammet (DOM) for Intelligent Order Management via API:

  • Installer den nyeste version af Intelligent Order Management (version 1.0.0.6035).
  • Konfigurer indstillingerne for opfyldelse, f.eks. strategier, kildelister og begrænsninger. Yderligere oplysninger finder du i Udbyderoversigt for Optimering af opfyldelse og returneringer.
  • Konfigurer en udbyder for lagersynlighed. Du kan finde flere oplysninger under Lagersynlighed.
  • Sørg for at lagersteds'id'et er tilknyttet til hver opfyldningskilde i opfyldningskildeindstillingerne.

Hvis du forventer resultater, som har forsendelsesmulighederne fra en FedEx-fragtmand, skal du sørge for, at følgende opsætning er fuldført.

  1. Konfigurer en FedEx-udbyder. Du kan finde flere oplysninger under Konfigurer en FedEx-udbyder.
  2. Opret en feriekalender under Indstillinger>Opfyldningsindstillinger>Feriekalender.
  3. Opret en fragtmands afhentningsplan under Indstillinger>Opfyldningsindstillinger>Fragtmænd. Vælg fragtmanden, gå til afhentningsplaner, og tilføj en ny afhentningsplan.
  4. Sørg for, at mindst én kalender og afhentningsplan er tildelt til indstillingerne for opfyldelseskilden.
  5. Sørg for, at vægt og mål er i produkttabellen Delt for produktet.
  6. Sørg for, at fragtmandens tabel for forsendelsesprisfaktorer er opdateret med oplysninger om forsendelsesprisfaktor og fallback-pris. For at få adgang til tabeller for forsendelsesprisfaktorer skal du gå til Indstillinger>Indstillinger for opfyldelse>Fragtmænd>Forsendelsesprisfaktor.

Beskrivelse af funktionalitet

Når der foretages en API-anmodning, aktiveres optimeringsprogrammet (DOM) Intelligent Order Management Fulfillment for at returnere den bedste opfyldelseskilde for hver linje, baseret på de forudkonfigurerede opfyldelsesoptimeringsstrategier og begrænsninger. Hvis anmodningen indeholder en fragtmand såsom FedEx, ses fragtmandens afhentningsplan i forbindelse med opfyldelseskildens arbejdskalender, og det næste tilgængelige afhentningstidspunkt sendes til fragtmandens API'er. Svaret til DOM API'en kombinerer både en opfyldelsesplan og fragtmandens output og præsenterer dem tilbage til den kaldende applikation.

Eksempel på API-anmodning

Opret en Power Automate flow–to–Dataverse ikke-bundet handling til at teste i dit miljø.

{{Dataverse URL}}/api/data/v9.2/msdyn_IomDomAPI  
**apiVersion**: 1.0 
{ 
    "fnoCompanyId": "USMF", 
    "orderId": "b16bd573-ad9a-4188-bc08-e5ac5eca776e", 
    "strategyId": null, 
    "carrier": "fedex", 
    "salesOrderOrigin": null, 
    "customerInformation": { 
        "name": "Whole sales", 
        "customerNumber": "US-001", 
        "customerGroup": "10", 
        "customerEmail": "test@microsoft.com" 
    }, 
    "orderDestinationAddress": { 
        "addressType": "Residence", 
        "address1": "537 N St. Francis", 
        "address2": null, 
        "address3": null, 
        "city": "Wichita", 
        "stateOrProvince": "KS", 
        "postalCode": "67214", 
        "phoneNumber": null, 
        "country": "US" 
    }, 
    "lineItems": [ 
        { 
            "lineId": "d5670621-910d-486b-90ca-61d739e9a92e", 
            "itemId": "1000", 
            "quantity": 2, 
            "freeShipping": "No" 
        }, 
        { 
            "lineId": "5c8b423b-c9fe-4ff1-a16e-a75a35d7c424", 
            "itemId": "T0001", 
            "quantity": 2, 
            "freeShipping": "Yes", 
            "dimensions": { 
                "sizeId": "10" 
            } 
        }, 
        { 
            "lineId": "a359a0ec-cded-4eda-b7b0-d7478dff48b9", 
            "itemId": "T0004", 
            "quantity": 2, 
            "freeShipping": "Yes", 
            "dimensions": { 
                "colorId": "black" 
            } 
        } 
    ] 
}

Eksempelsvar

Fulfillment Successful 
{ 
    "fulfillmentPlan": { 
        "executionId": "616d8797-0654-4ca7-bae2-c4771521e5f4", 
        "planLines": [ 
            { 
                "orderId": "47c1c1c6-5cc7-4691-a0ae-b50b83b2bba1", 
                "lineId": "34d8209b-3a4b-4c54-a666-76fef99bef63", 
                "quantityToFulfill": 1.0, 
                "orderedQuantity": 1.0, 
                "fulfillmentCenter": "127", 
                "itemId": "1000" 
            } 
        ], 
        "notFulfilledLines": [] 
    } 
} 

API-referencevejledning

I dette afsnit beskrives datatypen og overskriftsfelterne i API-anmodningen.

Name Datatype Betegnelse
fnoCompanyId streng, valgfri Identifikatoren for virksomheden i systemet. Dette felt er påkrævet, hvis Dataverse er tilknyttet til programmer til finans og drift.
salesOrderOrigin streng, valgfri Identifikatoren for ordreoprindelse i systemet. Dette felt er påkrævet, hvis lagerbeholdning skal forbruges fra allokeret, baseret på ordreoprindelsen.
orderId guid-streng, påkrævet Et brugerdefineret ordrenummer, der bruges til at identificere en ordre eller et indkøbsvogn-id i det oprindelige system.
strategyId guid-streng, valgfri Identifikatoren for opfyldelsesstrategien i Intelligent Order Management. Hvis denne identifikator ikke er angivet, bruger processen standardstrategien, der er angivet i systemet.
fragtmand streng, valgfri Dette felt er påkrævet for at hente forsendelsespriser og forudsigende leveringsestimater. Den understøttede værdi er FedEx.
orderDestinationAddress Adresse, påkrævet Modtagerens forsendelsesadresse. Brug adressemodellen.
customerInformation CustomerInformation, valgfri Kundeoplysninger for ordren. Brug modellen for kundeoplysninger.
lineItems OrderDetail, påkrævet En matrix af ordredetaljer. Brug en matrix af ordredetaljemodellen.

Model

I dette afsnit beskrives de felter, der anvender datamodellen i API-anmodningen.

Adresse

Dette afsnit beskriver felterne i adresseobjektet i API-anmodningen.

Name Datatype Betegnelse
addressType streng, valgfri, værdier: Virksomhed, Bopæl, Alle En værdi, der angiver, om den angivne adresse er en bolig.
navn streng, valgfri Navnet på personen.
address1 streng, valgfri Den første linje i adressen.
address2 streng, valgfri Den anden linje i adressen.
address3 streng, valgfri Den tredje linje i adressen.
by streng, påkrævet Byen.
stateOrProvince streng, påkrævet Staten eller provinsen. ISO-koden på to bogstaver for oprindelsstat er påkrævet.
postalCode streng, påkrævet Postnummer.
land streng, påkrævet Land eller områdekode. ISO-koden på to bogstaver for oprindelsesland er påkrævet.
telefonnummer streng, valgfri Telefonnummer.

Ordredetalje

Dette afsnit beskriver felterne i ordredetaljeafsnittet i API-anmodningen.

Name Datatype Betegnelse
lineId guid-streng, påkrævet Identifikatoren for ordrelinjen i oprindelsessystemet.
itemId streng, påkrævet Navnet på det produkt, der er knyttet til denne linjepost. Værdien kan ikke være null.
antallet nummer, påkrævet Mængden af produkter, der blev bestilt.
freeShipping streng, valgfri, værdier: ja, nej Værdien Ja betyder, at produktvægt udelukkes, når der fremsættes prisanmodning.
dimensioner ProductDimensions, valgfri Produktdimensioner er egenskaber, der identificerer en produktvariant. De bruger modellen for produktdimensioner. Dette felt er påkrævet, hvis Dataverse er tilknyttet til programmer til finans og drift. Vælg produktdimensioner for at identificere produktvarianten.

Produktdimensioner

I følgende afsnit beskrives felterne i tabellen for produktdimensioner.

Name Datatype Betegnelse
colorId streng, valgfri Værdien af elementfarve. Dette felt er påkrævet, hvis Dataverse er tilknyttet til programmer til finans og drift. Vælg produktdimensionerne for at identificere den produktvariant, du vil arbejde med.
sizeId streng, valgfri Værdien for elementstørrelse. Dette felt er påkrævet, hvis Dataverse er tilknyttet til programmer til finans og drift. Vælg produktdimensionerne for at identificere den produktvariant, du vil arbejde med.
styleId streng, valgfri Værdien for elementtype. Dette felt er påkrævet, hvis Dataverse er tilknyttet til programmer til finans og drift. Vælg produktdimensionerne for at identificere den produktvariant, du vil arbejde med.
configId streng, valgfri Værdien for elementkonfiguration. Dette felt er påkrævet, hvis Dataverse er tilknyttet til programmer til finans og drift. Vælg produktdimensionerne for at identificere den produktvariant, du vil arbejde med.