pixiShowSpecialCommentCustomers
Liefert Kunden mit Kundenhistorien-Notiz (CHisNote) zusammen mit ihren Rechnungen, optional gefiltert nach einer Rechnungsnummer.
Liest Kundenkonto-Einträge (CustomerAccount) und verknüpft sie mit Kunde, Rechnung und Rechnungswährung. Jede Ergebniszeile entspricht einem Kundenkonto-Eintrag.
Der Aufruf arbeitet in zwei Modi:
InvoiceNrangegeben: liefert die Einträge, deren Rechnung genau diese Rechnungsnummer hat. Die KundennotizCHisNotewird in diesem Modus nicht geprüft, daher werden auch Kunden ohne Notiz geliefert. Es gibt keine Sortierung.InvoiceNrleer oder weggelassen: liefert alle Einträge, deren Kunde eine nicht leereCHisNotehat und deren Rechnung eine nicht leere Rechnungsnummer besitzt. Die Zeilen sind nach Rechnungsdatum absteigend sortiert (InvDate DESC), die neuesten zuerst.
Die Anzahl der gelieferten Zeilen wird über Rows begrenzt (Standard 300). Ein leerer String für InvoiceNr wird wie NULL behandelt, ein NULL-Wert für Rows durch 300 ersetzt.
Hinweise
- Die Zeilenbegrenzung erfolgt über
SET ROWCOUNT. WirdRows=0übergeben, entfällt die Begrenzung und es werden alle passenden Zeilen geliefert, was bei großen Datenbanken langsam sein kann. - Alle Tabellen werden
WITH (NOLOCK)gelesen; nicht festgeschriebene Daten können erscheinen. - Obwohl
LEFT JOINs verwendet werden, wirken diese durch dieWHERE-Bedingungen auf die Rechnung (und im Listenmodus auf den Kunden) wie Inner Joins: Einträge ohne Rechnung werden nie geliefert. CHisNote != ''schließt Kunden aus, deren NotizNULList.- Hat ein Kundenkonto mehrere Einträge zur selben Rechnung, erscheint diese Rechnung mehrfach.
Addresseswird verknüpft, aber keine Spalte daraus geliefert.- Laut Kopfkommentar wurde der Aufruf für ein bestimmtes Kundenprojekt (Ticket PC-95) erstellt.
Parameter
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
Rows
|
int | 300 |
Maximale Anzahl der gelieferten Zeilen (über Beispiel: |
InvoiceNr
|
varchar(64) string |
NULL |
Gesuchte Rechnungsnummer. Wenn gesetzt, werden nur Einträge zu dieser Rechnung geliefert und die Kundennotiz wird nicht geprüft. Ein leerer String wird wie Beispiel: |
Antwort
Result-Set 1 · Immer; bei angegebener InvoiceNr danach gefiltert, sonst Kunden mit nicht leerer CHisNote, absteigend nach InvDate sortiert.
Eine Zeile pro Kundenkonto-Eintrag mit Kundendaten, Kundennotiz und Rechnungsdaten.
| Spalte | Typ | Beschreibung |
|---|---|---|
SName
Kann leer sein |
string |
Name des Kunden. |
SCareOf
Kann leer sein |
string |
c/o bzw. Namenszusatz des Kunden. |
SZIP
Kann leer sein |
string |
Postleitzahl des Kunden. |
SCity
Kann leer sein |
string |
Ort des Kunden. |
CHisNote
Kann leer sein |
string |
Kundenhistorien-Notiz (Sonderkommentar) des Kunden. |
InvoiceNr
Kann leer sein |
string |
Rechnungsnummer. |
total
Kann leer sein |
decimal |
Rechnungsbetrag. |
InvDate
Kann leer sein |
dateTime |
Rechnungsdatum. |
DATEVAccountNr
Kann leer sein |
varchar(10) string |
DATEV-Kontonummer des Kunden, als Text. |
CurrencyCode
Kann leer sein |
string |
Alphabetischer Währungscode der Rechnung (z. B. EUR). |
Beispielantwort
<SqlRowSet1>
<row>
<SName>Müller GmbH</SName>
<SCareOf>z. Hd. Frau Schmidt</SCareOf>
<SZIP>80331</SZIP>
<SCity>München</SCity>
<CHisNote>Nur Vorkasse</CHisNote>
<InvoiceNr>RE2024-004711</InvoiceNr>
<total>249.90</total>
<InvDate>2024-05-14T10:23:00</InvDate>
<DATEVAccountNr>10234</DATEVAccountNr>
<CurrencyCode>EUR</CurrencyCode>
</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:pixiShowSpecialCommentCustomers>
<!-- <Rows>100</Rows> -->
<!-- <InvoiceNr>RE2024-004711</InvoiceNr> -->
</ns1:pixiShowSpecialCommentCustomers>
</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:pixiShowSpecialCommentCustomers>
<!-- <Rows>100</Rows> -->
<!-- <InvoiceNr>RE2024-004711</InvoiceNr> -->
</ns1:pixiShowSpecialCommentCustomers>
</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 = [
// 'Rows' => '100',
// 'InvoiceNr' => 'RE2024-004711',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiShowSpecialCommentCustomers', $soapArguments);
Verwendete Tabellen
- SQL-Objekt:
- dbo.pipiShowSpecialCommentCustomers