pixiCAGetEvents
Liefert Kundenkonto-Ereignisse (Buchungen), gefiltert nach Ereignistyp, Datum, Betrag, Rechnung, Zahlungsart oder Kunde, optional inklusive gelöschter Ereignisse.
Liest Einträge aus dem Kundenkonto (CustomerAccount) zusammen mit dem Währungscode aus pixi.Currency.
Alle Filterparameter sind optional und werden mit AND verknüpft. Ein Filter wirkt nur, wenn der Parameter nicht NULL ist:
EventID: exakter Vergleich auf den Ereignistyp.CreateDateFrom/CreateDateTo,UpdateDateFrom/UpdateDateTo,EventDateFrom/EventDateTo: inklusive Bereiche (>=/<=) aufCreateDate,UpdateDateundEventDate.MinAmount/MaxAmount: inklusiver Bereich aufAmount.MinMatchedAmount/MaxMatchedAmount: inklusiver Bereich aufMatched.InvoiceRef: exakter Vergleich auf die verknüpfte Rechnung.DoNotRefund: exakter Vergleich auf das Kennzeichen.PaymentCode: verknüpftInvoicesüberInvoiceRefund liefert nur Ereignisse, deren Rechnung diese Zahlungsart (Payment) hat.CustRef: wird nur angewendet, wenn der Wert größer als0ist.
Bei ShowDeleted = 1 werden zusätzlich gelöschte Ereignisse aus der Historientabelle CustomerAccountLog (Zeilen mit HistRemark = DELETE) mit denselben Filtern geliefert. Diese Zeilen haben IsDeleted = 1, aktive Zeilen IsDeleted = 0.
Ohne Filter werden alle Kundenkonto-Ereignisse geliefert. Die Ergebnismenge hat keine definierte Sortierung.
Hinweise
- Die Abfrage wird als dynamisches SQL aufgebaut und mit
sp_executesqlausgeführt; alle Werte werden als Parameter übergeben. - Alle Tabellen werden mit
NOLOCKgelesen, nicht festgeschriebene Daten können daher erscheinen. - Aktive und gelöschte Zeilen werden mit
UNION(nichtUNION ALL) zusammengeführt, vollständig identische Zeilen erscheinen daher nur einmal. - Obwohl
InvoicesperLEFT JOINverknüpft wird, schließt der FilterPaymentCodealle Ereignisse ohne verknüpfte Rechnung aus. - Ereignisse, deren
CurrencyIdkeinen Eintrag inpixi.Currencyhat, werden nicht geliefert (Inner Join). - Ohne Filter kann der Aufruf sehr viele Zeilen liefern; eine Einschränkung nach Kunde oder Datum wird empfohlen.
Parameter
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
EventID
|
varchar(3) string |
NULL |
Ereignistyp, nach dem gefiltert wird (exakter Vergleich). Beispiel: |
CreateDateFrom
|
datetime dateTime |
NULL |
Untergrenze (inklusive) für das Anlagedatum. Beispiel: |
CreateDateTo
|
datetime dateTime |
NULL |
Obergrenze (inklusive) für das Anlagedatum. Beispiel: |
UpdateDateFrom
|
datetime dateTime |
NULL |
Untergrenze (inklusive) für das Datum der letzten Änderung. Beispiel: |
UpdateDateTo
|
datetime dateTime |
NULL |
Obergrenze (inklusive) für das Datum der letzten Änderung. Beispiel: |
EventDateFrom
|
datetime dateTime |
NULL |
Untergrenze (inklusive) für das Ereignisdatum. Beispiel: |
EventDateTo
|
datetime dateTime |
NULL |
Obergrenze (inklusive) für das Ereignisdatum. Beispiel: |
MinAmount
|
money decimal |
NULL |
Mindestwert (inklusive) von Beispiel: |
MaxAmount
|
money decimal |
NULL |
Höchstwert (inklusive) von Beispiel: |
MinMatchedAmount
|
money decimal |
NULL |
Mindestwert (inklusive) des zugeordneten Betrags Beispiel: |
MaxMatchedAmount
|
money decimal |
NULL |
Höchstwert (inklusive) des zugeordneten Betrags Beispiel: |
InvoiceRef
|
int | NULL |
Rechnungsschlüssel ( Beispiel: |
DoNotRefund
|
bit boolean |
NULL |
Filter auf das Kennzeichen Erlaubte Werte
Beispiel: |
PaymentCode
|
char(1) string |
NULL |
Zahlungsartcode der verknüpften Rechnung ( Beispiel: |
CustRef
|
int | NULL |
Kundenschlüssel. Wird nur angewendet, wenn größer als Beispiel: |
ShowDeleted
|
bit boolean |
0 |
Legt fest, ob gelöschte Ereignisse aus Erlaubte Werte
Beispiel: |
Antwort
Result-Set 1 · Immer
Eine Zeile pro Kundenkonto-Ereignis, das den Filtern entspricht.
| Spalte | Typ | Beschreibung |
|---|---|---|
CustomerAccountKey
|
int |
Schlüssel des Kundenkontoeintrags. |
CustRef
Kann leer sein |
int |
Kundenschlüssel. |
EventID
Kann leer sein |
varchar(3) string |
Ereignistyp. |
EventDate
Kann leer sein |
datetime dateTime |
Datum des Ereignisses. |
Reference
Kann leer sein |
string |
Referenztext des Ereignisses. |
Amount
Kann leer sein |
money decimal |
Betrag des Ereignisses. |
Matched
Kann leer sein |
money decimal |
Zugeordneter Betrag. |
InvoiceRef
Kann leer sein |
int |
Schlüssel der verknüpften Rechnung. |
ManualBookingRef
Kann leer sein |
int |
Referenz auf eine manuelle Buchung. |
DoNotRefund
Kann leer sein |
bit boolean |
Kennzeichen: Betrag darf nicht erstattet werden. |
CreateEmp
Kann leer sein |
string |
Mitarbeiter, der den Eintrag angelegt hat. |
CreateDate
Kann leer sein |
datetime dateTime |
Anlagedatum. |
UpdateEmp
Kann leer sein |
string |
Mitarbeiter der letzten Änderung. |
UpdateDate
Kann leer sein |
datetime dateTime |
Datum der letzten Änderung. |
Comment
Kann leer sein |
string |
Kommentar. |
IsDeleted
|
bit boolean |
|
OrderCurrency
Kann leer sein |
string |
Währungscode ( |
Beispielantwort
<SqlRowSet1>
<row>
<CustomerAccountKey>1025</CustomerAccountKey>
<CustRef>4711</CustRef>
<EventID>PAY</EventID>
<EventDate>2024-01-15T10:32:00</EventDate>
<Reference>Bank transfer 2024-0115</Reference>
<Amount>149.9000</Amount>
<Matched>149.9000</Matched>
<InvoiceRef>123456</InvoiceRef>
<ManualBookingRef>0</ManualBookingRef>
<DoNotRefund>false</DoNotRefund>
<CreateEmp>AD</CreateEmp>
<CreateDate>2024-01-15T10:32:00</CreateDate>
<UpdateEmp>AD</UpdateEmp>
<UpdateDate>2024-01-15T10:35:00</UpdateDate>
<Comment/>
<IsDeleted>false</IsDeleted>
<OrderCurrency>EUR</OrderCurrency>
</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:pixiCAGetEvents>
<!-- <EventID>PAY</EventID> -->
<!-- <CreateDateFrom>2024-01-01T00:00:00</CreateDateFrom> -->
<!-- <CreateDateTo>2024-01-31T23:59:59</CreateDateTo> -->
<!-- <UpdateDateFrom>2024-01-01T00:00:00</UpdateDateFrom> -->
<!-- <UpdateDateTo>2024-01-31T23:59:59</UpdateDateTo> -->
<!-- <EventDateFrom>2024-01-01T00:00:00</EventDateFrom> -->
<!-- <EventDateTo>2024-01-31T23:59:59</EventDateTo> -->
<!-- <MinAmount>10.00</MinAmount> -->
<!-- <MaxAmount>500.00</MaxAmount> -->
<!-- <MinMatchedAmount>0.00</MinMatchedAmount> -->
<!-- <MaxMatchedAmount>500.00</MaxMatchedAmount> -->
<!-- <InvoiceRef>123456</InvoiceRef> -->
<!-- <DoNotRefund>0</DoNotRefund> -->
<!-- <PaymentCode>V</PaymentCode> -->
<!-- <CustRef>4711</CustRef> -->
<!-- <ShowDeleted>0</ShowDeleted> -->
</ns1:pixiCAGetEvents>
</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:pixiCAGetEvents>
<!-- <EventID>PAY</EventID> -->
<!-- <CreateDateFrom>2024-01-01T00:00:00</CreateDateFrom> -->
<!-- <CreateDateTo>2024-01-31T23:59:59</CreateDateTo> -->
<!-- <UpdateDateFrom>2024-01-01T00:00:00</UpdateDateFrom> -->
<!-- <UpdateDateTo>2024-01-31T23:59:59</UpdateDateTo> -->
<!-- <EventDateFrom>2024-01-01T00:00:00</EventDateFrom> -->
<!-- <EventDateTo>2024-01-31T23:59:59</EventDateTo> -->
<!-- <MinAmount>10.00</MinAmount> -->
<!-- <MaxAmount>500.00</MaxAmount> -->
<!-- <MinMatchedAmount>0.00</MinMatchedAmount> -->
<!-- <MaxMatchedAmount>500.00</MaxMatchedAmount> -->
<!-- <InvoiceRef>123456</InvoiceRef> -->
<!-- <DoNotRefund>0</DoNotRefund> -->
<!-- <PaymentCode>V</PaymentCode> -->
<!-- <CustRef>4711</CustRef> -->
<!-- <ShowDeleted>0</ShowDeleted> -->
</ns1:pixiCAGetEvents>
</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 = [
// 'EventID' => 'PAY',
// 'CreateDateFrom' => '2024-01-01T00:00:00',
// 'CreateDateTo' => '2024-01-31T23:59:59',
// 'UpdateDateFrom' => '2024-01-01T00:00:00',
// 'UpdateDateTo' => '2024-01-31T23:59:59',
// 'EventDateFrom' => '2024-01-01T00:00:00',
// 'EventDateTo' => '2024-01-31T23:59:59',
// 'MinAmount' => '10.00',
// 'MaxAmount' => '500.00',
// 'MinMatchedAmount' => '0.00',
// 'MaxMatchedAmount' => '500.00',
// 'InvoiceRef' => '123456',
// 'DoNotRefund' => '0',
// 'PaymentCode' => 'V',
// 'CustRef' => '4711',
// 'ShowDeleted' => '0',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiCAGetEvents', $soapArguments);
Verwendete Tabellen
- SQL-Objekt:
- dbo.pipiCAGetEvents