pixiSetItemCustomsInfo
Aktualisiert die Zolldaten (Zolltarifnummer, Ursprungsland, Zolltariftext, Vorverfahren) sowie Gewicht und Abmessungen eines Artikels.
Aktualisiert die zollrelevanten Felder und die Abmessungen eines Artikels, der über ItemKey bestimmt wird.
- Wird
CustomsCountryOfOriginISO2übergeben und ist der Wert nicht leer, wird der zweistellige ISO-Code in der Ländertabelle gesucht. Der dort gefundene Pixi-Ländercode (CntCode) ersetzt den Wert vonCustomsCountryOfOrigin. - Der Artikel wird aktualisiert. Nur Parameter, die nicht
NULLsind, überschreiben den gespeicherten Wert. Ein weggelassener oder alsNULLübergebener Parameter behält den aktuellen Wert. - Die Aktualisierung erfolgt nur, wenn mindestens ein übergebener Wert vom gespeicherten Wert abweicht oder ein gespeicherter Wert
NULList und ein Wert übergeben wird. - Bei einer Aktualisierung wird
UpdateEmpauf<UserName> (API)undUpdateDateauf das aktuelle Datum mit Uhrzeit gesetzt.
Der Aufruf liefert eine Statuszeile:
200/OK: Der Artikel wurde geändert.200/Accepted - no changes needed: Der Artikel existiert, alle übergebenen Werte entsprechen aber bereits den gespeicherten Werten.401/Not found: Es existiert kein Artikel mit diesemItemKey.
Hinweise
Weight,Heigth,WidthundLengthsind als einfachesNUMERICdeklariert. Ohne Angabe von Genauigkeit und Nachkommastellen entspricht dasnumeric(18,0), daher werden Nachkommastellen vor dem Speichern weggerundet. Es sollten ganze Zahlen in der Einheit übergeben werden, die Pixi für diese Felder verwendet.- Der Parameter für die Höhe heißt
Heigth, ebenso wie die Spalte. - Ein Feld kann mit diesem Aufruf nicht auf
NULLzurückgesetzt werden, daNULL"aktuellen Wert beibehalten" bedeutet. Ein Leerstring wird dagegen als Leerstring gespeichert. - Findet sich zu
CustomsCountryOfOriginISO2kein Land, weist die Suche nichts zu. Dann wird der inCustomsCountryOfOriginübergebene Wert verwendet. Ist auch dieserNULL, bleibt der gespeicherte Wert erhalten. Ein Fehler wird nicht gemeldet. - Für einen nicht vorhandenen Artikel liefert der Code
401, nicht404. - Die Aktualisierung verwendet
ROWLOCK. Die Ländersuche und die Existenzprüfung lesen mitNOLOCK. - Ändert sich nichts, bleiben
UpdateEmpundUpdateDateunverändert.
Parameter
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
ItemKey
Pflicht
|
int | – |
Interner Schlüssel des zu aktualisierenden Artikels. Beispiel: |
UserName
Pflicht
|
varchar(50) string |
– |
Name des Benutzers oder Systems, das die Änderung vornimmt. Der Wert wird mit dem Zusatz Beispiel: |
CustomsTariffNumber
|
varchar(50) string |
NULL |
Zolltarifnummer (HS-Code). Beispiel: |
CustomsCountryOfOrigin
|
varchar(3) string |
NULL |
Pixi-Ländercode des Ursprungslands. Der Wert wird überschrieben, wenn Beispiel: |
CustomsCountryOfOriginISO2
|
varchar(2) string |
NULL |
ISO-3166-1-Alpha-2-Code des Ursprungslands. Ist der Wert nicht leer, wird er in den Pixi-Ländercode umgesetzt und hat Vorrang vor Beispiel: |
Weight
|
numeric decimal |
NULL |
Gewicht des Artikels. Nachkommastellen gehen verloren, da der Parameter Beispiel: |
Heigth
|
numeric decimal |
NULL |
Höhe des Artikels (Schreibweise Beispiel: |
Width
|
numeric decimal |
NULL |
Breite des Artikels. Nachkommastellen gehen verloren. Beispiel: |
Length
|
numeric decimal |
NULL |
Länge des Artikels. Nachkommastellen gehen verloren. Beispiel: |
CustomsTariffText
|
varchar(max) string |
NULL |
Warenbeschreibung für Zollzwecke. Beispiel: |
CustomsPreviousProcess
|
varchar(10) string |
NULL |
Code des zollrechtlichen Vorverfahrens. Beispiel: |
Antwort
Result-Set 1 · Immer
Eine Statuszeile, die angibt, ob der Artikel geändert wurde, bereits aktuell war oder nicht gefunden wurde.
| Spalte | Typ | Beschreibung |
|---|---|---|
ResultCode
|
varchar(3) string |
|
ResultMessage
|
varchar(28) string |
|
Beispielantwort
<SqlRowSet1>
<row>
<ResultCode>200</ResultCode>
<ResultMessage>OK</ResultMessage>
</row>
</SqlRowSet1>
Fehlermeldungen
| Status | Meldung | Ursache |
|---|---|---|
| 401 | Not found | Es existiert kein Artikel mit dem angegebenen `ItemKey`. Der Artikelschlüssel sollte vor dem Aufruf geprüft werden. |
Beispiele
POST https://apigateway.descartes.com/tms/pixi/
Content-Type: text/xml; charset=utf-8
Authorization: Basic BASE64(USERNAME:PASSWORD)
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://apigateway.descartes.com/tms/pixi/">
<SOAP-ENV:Body>
<ns1:pixiSetItemCustomsInfo>
<ItemKey>12345</ItemKey>
<UserName>ShopSync</UserName>
<!-- <CustomsTariffNumber>61091000</CustomsTariffNumber> -->
<!-- <CustomsCountryOfOrigin>D</CustomsCountryOfOrigin> -->
<!-- <CustomsCountryOfOriginISO2>DE</CustomsCountryOfOriginISO2> -->
<!-- <Weight>250</Weight> -->
<!-- <Heigth>30</Heigth> -->
<!-- <Width>200</Width> -->
<!-- <Length>300</Length> -->
<!-- <CustomsTariffText>T-shirts, knitted, of cotton</CustomsTariffText> -->
<!-- <CustomsPreviousProcess>00</CustomsPreviousProcess> -->
</ns1:pixiSetItemCustomsInfo>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
curl -X POST 'https://apigateway.descartes.com/tms/pixi/' \
--user 'USERNAME:PASSWORD' \
--header 'Content-Type: text/xml; charset=utf-8' \
--data-binary @- <<'XML'
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://apigateway.descartes.com/tms/pixi/">
<SOAP-ENV:Body>
<ns1:pixiSetItemCustomsInfo>
<ItemKey>12345</ItemKey>
<UserName>ShopSync</UserName>
<!-- <CustomsTariffNumber>61091000</CustomsTariffNumber> -->
<!-- <CustomsCountryOfOrigin>D</CustomsCountryOfOrigin> -->
<!-- <CustomsCountryOfOriginISO2>DE</CustomsCountryOfOriginISO2> -->
<!-- <Weight>250</Weight> -->
<!-- <Heigth>30</Heigth> -->
<!-- <Width>200</Width> -->
<!-- <Length>300</Length> -->
<!-- <CustomsTariffText>T-shirts, knitted, of cotton</CustomsTariffText> -->
<!-- <CustomsPreviousProcess>00</CustomsPreviousProcess> -->
</ns1:pixiSetItemCustomsInfo>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
XML
<?php
$soapClient = new SoapClient(null, [
'login' => 'USERNAME',
'password' => 'PASSWORD',
'location' => 'https://apigateway.descartes.com/tms/pixi/',
'uri' => 'https://apigateway.descartes.com/tms/pixi/',
]);
$arguments = [
'ItemKey' => '12345',
'UserName' => 'ShopSync',
// 'CustomsTariffNumber' => '61091000',
// 'CustomsCountryOfOrigin' => 'D',
// 'CustomsCountryOfOriginISO2' => 'DE',
// 'Weight' => '250',
// 'Heigth' => '30',
// 'Width' => '200',
// 'Length' => '300',
// 'CustomsTariffText' => 'T-shirts, knitted, of cotton',
// 'CustomsPreviousProcess' => '00',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiSetItemCustomsInfo', $soapArguments);
Verwendete Tabellen
- SQL-Objekt:
- dbo.pipiSetItemCustomsInfo