pixiReadPOSHeader
Liefert Kopfdaten von POS-Belegen (Kassenbelegen) aus POSheader2, entweder einen einzelnen Beleg per Schlüssel oder eine nach Anlage-/Änderungsdatum gefilterte Liste mit Paging über den Schlüssel.
Liest Kopfdatensätze von POS-Belegen aus der Tabelle POSheader2. Alle Zweige liefern dieselben Spalten. Wird POSHeaderKey nicht übergeben, gilt der Wert 0.
Ist RowCount ungleich 0, wird die Anzahl der gelieferten Zeilen per SET ROWCOUNT begrenzt.
Die Parameter werden in dieser Reihenfolge ausgewertet; es wird nur der erste passende Zweig ausgeführt:
- Anlage- oder Änderungsdatum – wenn
CreateAndUpdateDateFromoderCreateAndUpdateDateTogesetzt ist: Belege mitPOSheaderKey > POSHeaderKey, bei denenPHcreateDateoderPHupdateDate>= CreateAndUpdateDateFromist undPHcreateDateoderPHupdateDate< CreateAndUpdateDateToist. - Anlagedatum – wenn
CreateDateFromoderCreateDateTogesetzt ist: Belege mitPOSheaderKey > POSHeaderKeyundPHcreateDateim Bereich[CreateDateFrom, CreateDateTo). - Änderungsdatum – wenn
UpdateDateFromoderUpdateDateTogesetzt ist: Belege mitPOSheaderKey > POSHeaderKeyundPHupdateDateim Bereich[UpdateDateFrom, UpdateDateTo). - Schlüsselbereich – wenn
RowCountübergeben wird (nicht NULL): Belege mitPOSheaderKey > POSHeaderKey. - Einzelner Beleg – sonst: der Beleg mit
POSheaderKey = POSHeaderKey.
Die Zweige 1–4 sind nach POSheaderKey aufsteigend sortiert. Für Paging wird der zuletzt erhaltene POSheaderKey im nächsten Aufruf als POSHeaderKey zusammen mit RowCount übergeben.
Untere Datumsgrenzen sind inklusiv, obere exklusiv. Fehlt eine Grenze, ist diese Seite offen.
Hinweise
- Die Tabelle wird
WITH (NOLOCK)gelesen; nicht festgeschriebene Daten können geliefert werden. - In den Datumszweigen ist
POSHeaderKeyeine Untergrenze (>), kein exakter Treffer. Wird ein bestimmter Schlüssel zusammen mit einem Datumsfilter übergeben, wird dieser Beleg selbst nicht geliefert. - Beim kombinierten Anlage-/Änderungsfilter werden beide Grenzen unabhängig geprüft: Eine Zeile passt, wenn eines der beiden Daten
>=der Untergrenze und eines der beiden Daten<der Obergrenze ist – nicht zwingend dasselbe Datum. - Ein Aufruf ohne Parameter liefert keine Zeilen (gesucht wird
POSheaderKey = 0). - Wird
RowCount = 0ausdrücklich übergeben, greift der Schlüsselbereichs-Zweig ohne Zeilenbegrenzung, d. h. alle Belege mit einem Schlüssel größerPOSHeaderKeywerden geliefert. - Die Datentypen der Spalten sind im Code nicht sichtbar; sie stammen aus der Tabelle
POSheader2.
Parameter
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
POSHeaderKey
|
int | NULL |
Schlüssel des POS-Belegkopfs. Exakter Treffer im Einzelmodus; exklusive Untergrenze ( Beispiel: |
CreateDateFrom
|
datetime dateTime |
NULL |
Inklusive Untergrenze für Beispiel: |
CreateDateTo
|
datetime dateTime |
NULL |
Exklusive Obergrenze für Beispiel: |
UpdateDateFrom
|
datetime dateTime |
NULL |
Inklusive Untergrenze für Beispiel: |
UpdateDateTo
|
datetime dateTime |
NULL |
Exklusive Obergrenze für Beispiel: |
CreateAndUpdateDateFrom
|
datetime dateTime |
NULL |
Inklusive Untergrenze, geprüft gegen Beispiel: |
CreateAndUpdateDateTo
|
datetime dateTime |
NULL |
Exklusive Obergrenze, geprüft gegen Beispiel: |
RowCount
|
int | NULL |
Maximale Anzahl Zeilen (per Beispiel: |
Antwort
Result-Set 1 · Immer (ggf. leer); die Spalten sind in allen Zweigen identisch.
Kopfdaten von POS-Belegen aus POSheader2, außer im Einzelmodus aufsteigend nach POSheaderKey sortiert.
| Spalte | Typ | Beschreibung |
|---|---|---|
POSheaderKey
|
int |
Schlüssel des POS-Belegkopfs. |
PHcreateEmp
Kann leer sein |
string |
Mitarbeiter, der den Datensatz angelegt hat. |
PHcreateDate
Kann leer sein |
dateTime |
Anlagezeitpunkt. |
PHupdateEmp
Kann leer sein |
string |
Mitarbeiter der letzten Änderung. |
PHupdateDate
Kann leer sein |
dateTime |
Zeitpunkt der letzten Änderung. |
PHdate
Kann leer sein |
dateTime |
Belegdatum. |
PHdocNr
Kann leer sein |
string |
Belegnummer. |
PHdocType
Kann leer sein |
string |
Belegart. |
PHpaymentType
Kann leer sein |
string |
Zahlungsart. |
PHrefDocNr
Kann leer sein |
string |
Referenzierte Belegnummer. |
PHdownPayment
Kann leer sein |
decimal |
Anzahlung. |
PHrepairDone
Kann leer sein |
string |
Kennzeichen Reparatur erledigt. |
PHtimesPrinted
Kann leer sein |
int |
Anzahl der Ausdrucke des Belegs. |
PHstatus
Kann leer sein |
string |
Belegstatus. |
PHcusName
Kann leer sein |
string |
Kundenname. |
PHcusAddress
Kann leer sein |
string |
Kundenadresse (Straße). |
PHcusZIP
Kann leer sein |
string |
Postleitzahl des Kunden. |
PHcusCity
Kann leer sein |
string |
Ort des Kunden. |
PHcusCNTcode
Kann leer sein |
string |
Ländercode des Kunden. |
PHcusCountry
Kann leer sein |
string |
Land des Kunden. |
PHcusVATID
Kann leer sein |
string |
USt-IdNr. des Kunden. |
PHcusPhone
Kann leer sein |
string |
Telefonnummer des Kunden. |
PHcusEmail
Kann leer sein |
string |
E-Mail-Adresse des Kunden. |
PHcusFirstHeaderRef
Kann leer sein |
string |
Referenz auf den ersten POS-Beleg des Kunden. |
PHtotalPaid
Kann leer sein |
decimal |
Bezahlter Betrag. |
PHtotal
Kann leer sein |
decimal |
Belegsumme. |
PHlocID
Kann leer sein |
string |
Standort-ID. |
PHclosingTag
Kann leer sein |
string |
Abschlusskennzeichen (z. B. Referenz auf den Tagesabschluss). |
PHvatSum
Kann leer sein |
decimal |
Summe der Mehrwertsteuer. |
PHRegisterID
Kann leer sein |
string |
Kassen-ID. |
POSSessionID
Kann leer sein |
string |
ID der Kassensitzung. |
PHCusAddrKey
Kann leer sein |
int |
Schlüssel der Kundenadresse. |
TotalNetto
Kann leer sein |
decimal |
Nettosumme. |
Mwst7
Kann leer sein |
decimal |
MwSt.-Betrag zu 7 %. |
Mwst16
Kann leer sein |
decimal |
MwSt.-Betrag zu 16 %. |
PHDiscountPercent
Kann leer sein |
decimal |
Rabatt in Prozent. |
PHDiscountAmount
Kann leer sein |
decimal |
Rabattbetrag. |
InvoiceComment
Kann leer sein |
string |
Kommentar zur Rechnung. |
NoTax
Kann leer sein |
string |
Kennzeichen steuerfrei. |
OrderNr
Kann leer sein |
string |
Zugehörige Auftragsnummer. |
PHVatLow
Kann leer sein |
decimal |
MwSt. zum ermäßigten Satz. |
PHVatHigh
Kann leer sein |
decimal |
MwSt. zum Regelsatz. |
Beispielantwort
<SqlRowSet1>
<row>
<POSheaderKey>10453</POSheaderKey>
<PHcreateEmp>MK</PHcreateEmp>
<PHcreateDate>2024-03-15T10:24:11</PHcreateDate>
<PHupdateEmp>MK</PHupdateEmp>
<PHupdateDate>2024-03-15T10:25:02</PHupdateDate>
<PHdate>2024-03-15T10:24:11</PHdate>
<PHdocNr>K-2024-001873</PHdocNr>
<PHdocType>R</PHdocType>
<PHpaymentType>BAR</PHpaymentType>
<PHtimesPrinted>1</PHtimesPrinted>
<PHstatus>C</PHstatus>
<PHcusName>Max Mustermann</PHcusName>
<PHcusZIP>80331</PHcusZIP>
<PHcusCity>München</PHcusCity>
<PHcusCNTcode>DE</PHcusCNTcode>
<PHtotalPaid>59.90</PHtotalPaid>
<PHtotal>59.90</PHtotal>
<PHlocID>001</PHlocID>
<PHvatSum>9.56</PHvatSum>
<PHRegisterID>KASSE1</PHRegisterID>
<TotalNetto>50.34</TotalNetto>
<PHDiscountPercent>0</PHDiscountPercent>
<PHDiscountAmount>0.00</PHDiscountAmount>
<PHVatLow>0.00</PHVatLow>
<PHVatHigh>9.56</PHVatHigh>
</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:pixiReadPOSHeader>
<!-- <POSHeaderKey>10452</POSHeaderKey> -->
<!-- <CreateDateFrom>2024-03-01T00:00:00</CreateDateFrom> -->
<!-- <CreateDateTo>2024-04-01T00:00:00</CreateDateTo> -->
<!-- <UpdateDateFrom>2024-03-01T00:00:00</UpdateDateFrom> -->
<!-- <UpdateDateTo>2024-04-01T00:00:00</UpdateDateTo> -->
<!-- <CreateAndUpdateDateFrom>2024-03-15T00:00:00</CreateAndUpdateDateFrom> -->
<!-- <CreateAndUpdateDateTo>2024-03-16T00:00:00</CreateAndUpdateDateTo> -->
<!-- <RowCount>500</RowCount> -->
</ns1:pixiReadPOSHeader>
</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:pixiReadPOSHeader>
<!-- <POSHeaderKey>10452</POSHeaderKey> -->
<!-- <CreateDateFrom>2024-03-01T00:00:00</CreateDateFrom> -->
<!-- <CreateDateTo>2024-04-01T00:00:00</CreateDateTo> -->
<!-- <UpdateDateFrom>2024-03-01T00:00:00</UpdateDateFrom> -->
<!-- <UpdateDateTo>2024-04-01T00:00:00</UpdateDateTo> -->
<!-- <CreateAndUpdateDateFrom>2024-03-15T00:00:00</CreateAndUpdateDateFrom> -->
<!-- <CreateAndUpdateDateTo>2024-03-16T00:00:00</CreateAndUpdateDateTo> -->
<!-- <RowCount>500</RowCount> -->
</ns1:pixiReadPOSHeader>
</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 = [
// 'POSHeaderKey' => '10452',
// 'CreateDateFrom' => '2024-03-01T00:00:00',
// 'CreateDateTo' => '2024-04-01T00:00:00',
// 'UpdateDateFrom' => '2024-03-01T00:00:00',
// 'UpdateDateTo' => '2024-04-01T00:00:00',
// 'CreateAndUpdateDateFrom' => '2024-03-15T00:00:00',
// 'CreateAndUpdateDateTo' => '2024-03-16T00:00:00',
// 'RowCount' => '500',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiReadPOSHeader', $soapArguments);
Verwendete Tabellen
- SQL-Objekt:
- dbo.pipiReadPOSHeader