pixiCustomersOpenCases
Liefert Sperrkennzeichen, offene Aufträge, unbezahlte Rechnungen, Rechnungsschuld und offenen Auftragswert eines Kunden samt Währungscode der Beträge.
Liefert eine einzelne Zeile mit den offenen Vorgängen des Kunden mit dem angegebenen CustKey.
Das Verhalten hängt von der Einstellung MultiCurrencyEnabled ab.
Mehrwährung deaktiviert (Einstellung ungleich 1):
Lockedist1, wenn das KennzeichenSLockeddes Kunden einen anderen Wert alsNhat, sonst0.OpenOrdersist die Anzahl unterschiedlicher Auftragsnummern mit mindestens einer Auftragsposition des Kunden (Orderlines.CustRef), deren Status kein Endstatus lautOrderStates(FinalState = 'Y') ist.OpenOrderAmountist die Summe vonOrderLineAmountdieser nicht abgeschlossenen Positionen. Die Beträge werden wie gespeichert summiert, ohne Währungsumrechnung.UnpaidInvoicesist die Anzahl der Rechnungen des Kunden, bei denen der bezahlte Betrag nicht dem Rechnungsbetrag entspricht. Ein fehlender bezahlter Betrag zählt als0.DebtByInvoicesist die Summe vontotal - PayedSumüber alle Rechnungen des Kunden.BaseCurrencyist der Code der Datenbankwährung. Er stammt aus der EinstellungHomeCurrencyund muss eine Hauptwährung inpixi.Currencysein.
Mehrwährung aktiviert (Einstellung gleich 1):
- Die Anzahlen werden auf dieselbe Weise ermittelt.
- Jeder Positionsbetrag wird durch den Wechselkurs seines Auftragskopfs (
OrderHeader.ExchRateId) geteilt. - Jede Rechnungsschuld wird durch den Wechselkurs der Rechnung (
Invoices.ExchRateId) geteilt. - Die Ergebnisse sind damit Beträge in Basiswährung.
BaseCurrencyist der Code der Basiswährung des Shops, dem der Kunde zugeordnet ist (Shops.BaseCurrencyId).
Existiert kein Kunde mit dem angegebenen CustKey, ist die Ergebnismenge leer.
Hinweise
- Alle Tabellen werden mit
NOLOCKgelesen; die Werte können nicht festgeschriebene Daten enthalten. - Ohne Mehrwährung werden Auftrags- und Rechnungsbeträge in unterschiedlichen Währungen unumgerechnet addiert.
BaseCurrencynennt dann nur den Code der Datenbankwährung; es ist nicht die tatsächliche Währung der Summe. - Bei aktivierter Mehrwährung fallen folgende Datensätze aus Beträgen und Anzahlen heraus: Positionen, deren Auftragskopf keinen passenden Wechselkurs hat, und Rechnungen ohne passenden Wechselkurs. Es wird keine Zeile geliefert, wenn der Shop des Kunden oder dessen Basiswährung nicht gefunden wird.
- Rechnungen mit
NULLals bezahltem Betrag werden inUnpaidInvoicesgezählt. Ihre Schuld fehlt aber inDebtByInvoices, weilSUMdas Ergebnistotal - NULLignoriert. - Überzahlte Rechnungen gelten ebenfalls als unbezahlt und verringern
DebtByInvoices. DebtByInvoicesist0, wenn der Kunde keine Rechnungen hat.- Der Einstellungswert wird in
BITumgewandelt. Ein nicht numerischer Wert außertrue/falseführt zu einem Konvertierungsfehler.
Parameter
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
CustKey
Pflicht
|
int | – |
Schlüssel des Kunden ( Beispiel: |
Antwort
Result-Set 1 · Wenn die Einstellung MultiCurrencyEnabled ungleich 1 ist und der Kunde existiert
Eine Zeile mit offenen Aufträgen und Rechnungen des Kunden. Die Beträge werden nicht umgerechnet.
| Spalte | Typ | Beschreibung |
|---|---|---|
Locked
|
int |
|
OpenOrders
|
int |
Anzahl unterschiedlicher Aufträge mit mindestens einer Position in einem Nicht-Endstatus. |
UnpaidInvoices
|
int |
Anzahl der Rechnungen, deren bezahlter Betrag vom Rechnungsbetrag abweicht. |
DebtByInvoices
|
decimal |
Summe von |
OpenOrderAmount
|
decimal |
Summe von |
BaseCurrency
Kann leer sein |
varchar(3) string |
Code der Datenbankwährung (Einstellung |
Result-Set 2 · Wenn die Einstellung MultiCurrencyEnabled gleich 1 ist und Kunde, Shop und Basiswährung des Shops existieren
Eine Zeile mit offenen Aufträgen und Rechnungen des Kunden. Die Beträge sind in die Basiswährung umgerechnet.
| Spalte | Typ | Beschreibung |
|---|---|---|
Locked
|
int |
|
OpenOrders
|
int |
Anzahl unterschiedlicher Aufträge mit mindestens einer nicht abgeschlossenen Position, für die ein Wechselkurs vorhanden ist. |
UnpaidInvoices
|
int |
Anzahl der Rechnungen mit Wechselkurs, deren bezahlter Betrag vom Rechnungsbetrag abweicht. |
DebtByInvoices
|
decimal |
Summe von |
OpenOrderAmount
|
decimal |
Summe von |
BaseCurrency
Kann leer sein |
string |
Code ( |
Beispielantwort
<SqlRowSet1>
<row>
<Locked>0</Locked>
<OpenOrders>2</OpenOrders>
<UnpaidInvoices>1</UnpaidInvoices>
<DebtByInvoices>149.9000</DebtByInvoices>
<OpenOrderAmount>312.5000</OpenOrderAmount>
<BaseCurrency>EUR</BaseCurrency>
</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:pixiCustomersOpenCases>
<CustKey>10452</CustKey>
</ns1:pixiCustomersOpenCases>
</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:pixiCustomersOpenCases>
<CustKey>10452</CustKey>
</ns1:pixiCustomersOpenCases>
</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',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiCustomersOpenCases', $soapArguments);
Verwendete Tabellen
- SQL-Objekt:
- dbo.pipiCustomersOpenCases