Über diesen Endpunkt kannst Du Auftragskandidaten nach metasfresh importieren und gleichzeitig sogar neue Geschäftspartner- sowie Produkteinträge anlegen. Gleichfalls kannst Du über diesen Endpunkt Dateianhänge hochladen und sie den Auftragskandidaten beifügen.
Um diesen Endpunkt erfolgreich zu nutzen, benötigst Du folgende Daten:
int-SOURCE.de.metas.rest_api.ordercandidates.impl.OrderCandidatesRestControllerImpl
int-DEST.de.metas.ordercandidate
Hierbei handelt es sich um sogenannte “Bezeichnerstrings” (ID-Zeichenfolgen), deren jeweilige Werte mit einem der entsprechenden Präfixe angegeben werden müssen:
int-
für die ID des Datensatzes auf der internen Plattform (internalId
)ext-
für die ID des Datensatzes auf der externen Plattform (externalId
)val-
für den Suchschlüssel des Dateneintrages in metasfreshWird kein Präfix angegeben, so wird der Elementwert als ID des Dateneintrages (AD_Input_DataSource_ID
= metasfreshId
) betrachtet.
Hinweis: |
---|
Die importierten Auftragskandidaten und Dateianhänge findest Du unter dem Menüpunkt “Auftragsdisposition” im WebUI wieder. |
Folge dieser Anleitung und verwende die Anfragemethode POST /api/sales/order/candidates. Füge im Schritt 7 Deine Serveranfrage im JSON-Format ein, die Du auf Grundlage der für diesen Endpunkt zur Verfügung gestellten Anfragevorlage vorbereitet hast.
Hinweis: Die External Header ID kannst Du in der “Erweiterten Erfassung” aus dem Aktionsmenü des Eintrages des jeweiligen Auftragskandidaten einsehen.
Hinweis: Eventuelle Fehlermeldungen werden Dir unten im Abschnitt Responses angezeigt.
{
"bpartner": {
"bpartner": {
"active": true,
"code": "API_001_testBP",
"companyName": "API Inc.",
"externalId": "API-bp00001",
"group": "Standard",
"name": "Ganesh Rupka BP",
"phone": "1800-CALL-ME",
"syncAdvise": {
"ifExists": "DONT_UPDATE",
"ifNotExists": "CREATE"
}
},
"contact": {
"active": true,
"description": "RESTing with the apes.",
"email": "ganesh.rupka@nomail.com",
"externalId": "API-con00001",
"firstName": "Ganesh",
"lastName": "Rupka",
"phone": "1800-CALL-ME-NOW",
"name": "Ganesh B. Rupka",
"syncAdvise": {
"ifExists": "DONT_UPDATE",
"ifNotExists": "CREATE"
}
},
"location": {
"active": true,
"address1": "Street No. 1",
"address2": "East Wing",
"address3": "Apt. 3",
"address4": "Room 4",
"postal": "1234",
"city": "New Dehli",
"countryCode": "IN",
"externalId": "API-loc00001",
"name": "Ganesh Rupka's address",
"syncAdvise": {
"ifExists": "DONT_UPDATE",
"ifNotExists": "CREATE"
}
},
"syncAdvise": {
"ifExists": "DONT_UPDATE",
"ifNotExists": "CREATE"
}
},
"currencyCode": "INR",
"dataSource": "int-SOURCE.de.metas.rest_api.ordercandidates.impl.OrderCandidatesRestControllerImpl",
"dataDest": "int-DEST.de.metas.ordercandidate",
"dateRequired": "2019-08-23",
"externalHeaderId": "extHead-101",
"externalLineId": "extLine-101",
"invoiceDocType": {
"docBaseType": "ARI"
},
"org": {
"code": "001",
"syncAdvise": {
"ifExists": "DONT_UPDATE",
"ifNotExists": "FAIL"
}
},
"poReference": "SEO_768-04",
"pricingSystemCode": "Testpreise Kunden",
"product": {
"code": "Coco_2468",
"name": "Coconuts",
"type": "ITEM",
"priceStd": 6.90,
"uomCode": "PCE",
"syncAdvise": {
"ifExists": "DONT_UPDATE",
"ifNotExists": "CREATE"
}
},
"uomCode": "PCE",
"productDescription": "I've got a lovely bunch of coconuts.",
"qty": 5
"salesPartnerCode": "test_42",
"shipper": "val-DPD - Classic",
"paymentRule": "OnCredit",
"orderDocType": "SalesOrder"
}
Element | Hinweis |
---|---|
"pricingSystemCode": |
Das in der JSON-Serveranfrage angegebene Preissystem muss auf eine bestehende Verkaufspreisliste zeigen, die eine Preislistenversion enthält, in deren Gültigkeitszeitraum das Datum aus der Serveranfrage fällt, damit die Produktpreise erstellt werden. Zudem muss die besagte Preisliste mit einer Standard-Steuerkategorie ausgestattet sein. Vergewissere Dich außerdem, dass die Ablaufsteuerung für den Auftragskandidatenimport ( C_OLCand process to C_OrderLines ) auf aktiv gestellt ist. |
"postal": "city": "countryCode": |
Wenn Du PLZ, Ort und Land importierst, vergewissere Dich, dass die angegebene Postleitzahl auch im System vorhanden ist, anderenfalls kann sie nicht mit der entsprechenden Datenbanktabelle C_Location verknüpft werden und es werden lediglich die jeweiligen Felder ohne weitere Georeferenz ausgefüllt. |