pixiSetShippingLock
Setzt oder entfernt die Liefersperre (`SLocked`) eines Kunden, identifiziert über `CustKey` oder über externe Kundennummer und Shop.
Setzt das Liefersperre-Kennzeichen eines Kundendatensatzes in Customers.
UserNamewird getrimmt. Ist der Wert leer oder nicht angegeben, wirdAPIverwendet. Der Wert wird inCustomers.UpdateEmpgeschrieben.Lockedwird in den gespeicherten Wert umgesetzt:1wird zuY. Jeder andere Wert, auch0undNULL, wird zuN.- Ist
CustomerNrExternalnicht leer, ermittelt die Prozedur denCustKeydes Kunden, dessenCustomerNrExternalübereinstimmt und dessenCustomerOfgleichShopIDist. Passen mehrere Kunden, wird nur einer davon verwendet (TOP 1, ohne definierte Reihenfolge). - Beim Kunden mit dem ermittelten
CustKeywerdenSLockedundUpdateEmpaktualisiert. - Zurückgegeben wird eine Zeile mit der Spalte
Result:0, wenn genau ein Kunde aktualisiert wurde, sonst1.
Hinweise
- Ist
CustomerNrExternalangegeben, passt aber kein Kunde, behält die Variable den übergebenenCustKey. In diesem Fall wird der Kunde mit diesemCustKeyaktualisiert, oder es wird nichts aktualisiert, wennCustKeyNULList. ShopIDwird mit=verglichen. IstShopIDNULL, währendCustomerNrExternalgesetzt ist, findet die Suche nie einen Treffer.- Wird weder
CustKeynoch eine passende externe Nummer übergeben, wird keine Zeile aktualisiert undResult=1zurückgegeben. - Die Suche verwendet
UPDLOCK. Es gibt keine explizite Transaktion, daher gilt die Sperre nur für die Dauer dieser Anweisung. - Es werden keine Fehlermeldungen erzeugt. Erfolg oder Misserfolg zeigt nur der Wert
Resultan.
Parameter
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
CustKey
|
int | NULL |
Interner Schlüssel des Kunden. Wird verwendet, wenn Beispiel: |
Locked
|
bit boolean |
1 |
Erlaubte Werte
Beispiel: |
CustomerNrExternal
|
varchar(250) string |
NULL |
Externe Kundennummer, z. B. aus dem Shop. Ist sie gesetzt, wird der Kunde über diese Nummer zusammen mit Beispiel: |
ShopID
|
varchar(3) string |
NULL |
Shop-Kürzel, das mit Beispiel: |
UserName
|
varchar(50) string |
NULL |
Benutzername, der in Beispiel: |
Antwort
Result-Set 1 · Immer
Eine Zeile mit dem Ergebnis der Aktualisierung.
| Spalte | Typ | Beschreibung |
|---|---|---|
Result
|
int |
|
Beispielantwort
<SqlRowSet1>
<row>
<Result>0</Result>
</row>
</SqlRowSet1>
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:pixiSetShippingLock>
<!-- <CustKey>10452</CustKey> -->
<!-- <Locked>1</Locked> -->
<!-- <CustomerNrExternal>SHOP-000123</CustomerNrExternal> -->
<!-- <ShopID>WEB</ShopID> -->
<!-- <UserName>shopsync</UserName> -->
</ns1:pixiSetShippingLock>
</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:pixiSetShippingLock>
<!-- <CustKey>10452</CustKey> -->
<!-- <Locked>1</Locked> -->
<!-- <CustomerNrExternal>SHOP-000123</CustomerNrExternal> -->
<!-- <ShopID>WEB</ShopID> -->
<!-- <UserName>shopsync</UserName> -->
</ns1:pixiSetShippingLock>
</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 = [
// 'CustKey' => '10452',
// 'Locked' => '1',
// 'CustomerNrExternal' => 'SHOP-000123',
// 'ShopID' => 'WEB',
// 'UserName' => 'shopsync',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiSetShippingLock', $soapArguments);
Verwendete Tabellen
- SQL-Objekt:
- dbo.pipiSetShippingLock