pixiGetDatevExportInvoices
Liefert die DATEV-Exportdaten für Rechnungen in einem Zeitraum, optional gefiltert nach Shop, Land, Rechnungsnummer, externer Auftragsnummer, Sachkonto und Kostenstelle.
Stellt die DATEV-Exportdatei "Rechnungen" über die API bereit.
- Der Aufruf liest die Einstellung
BookExportDatevActive(in Pixi als "DATEV API Calls" bezeichnet). - Ist die Einstellung
1, werden alle Parameter unverändert an die interne ProzedurPixi_DatevExportInvoicesübergeben, und deren Ergebnis wird zurückgegeben. Zusätzlich wird@SetStartAndEndOfDay = 0übergeben. - Ist die Einstellung nicht
1, wird kein Export ausgeführt. Stattdessen wird eine Statuszeile mitStatus=ERRORund einer Meldung geliefert, dass die Einstellung nicht aktiviert ist.
Parameter:
DateFromundDateTosind Pflicht und legen den Zeitraum des Exports fest.- Alle weiteren Parameter sind optionale Filter. Ein weggelassener Filter (
NULL) schränkt das jeweilige Kriterium nicht ein. Dies setzt voraus, dass die interne ProzedurNULLso behandelt. ShowOnlySumsfordert eine summierte Ausgabe statt Einzelzeilen an.
Hinweise
- Die eigentliche Exportlogik, die Filtersemantik und die Spalten der Export-Ergebnismenge stehen in
Pixi_DatevExportInvoices. Deren Definition liegt nicht vor, daher können die Spalten und mögliche Nebeneffekte des Exports hier nicht dokumentiert werden. - Da
@SetStartAndEndOfDay = 0übergeben wird, werdenDateFromundDateTovermutlich exakt wie übergeben verwendet und nicht auf 00:00 / 23:59:59 erweitert. Um ganze Tage abzudecken, sollten Uhrzeiten explizit angegeben werden, z. B.2024-01-31T23:59:59. - Die Einstellung wird über
fpixi_GetSettinggelesen. Existiert die Einstellung nicht, liefert diese Funktion0, und der Aufruf gibt die Fehlerzeile zurück. Ein nicht nachBITkonvertierbarer Einstellungswert führt zu einem Konvertierungsfehler. - Die Einstellung wird mit
NOLOCKausSettingsgelesen.
Parameter
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
DateFrom
Pflicht
|
datetime dateTime |
– |
Beginn des Exportzeitraums. Beispiel: |
DateTo
Pflicht
|
datetime dateTime |
– |
Ende des Exportzeitraums. Der Wert wird vermutlich exakt wie übergeben verwendet, daher die Uhrzeit mit angeben. Beispiel: |
ShopId
|
varchar(3) string |
NULL |
Optionaler Filter nach Shop-ID. Beispiel: |
ShowOnlySums
|
bit boolean |
0 |
Bei Beispiel: |
Country
|
varchar(3) string |
NULL |
Optionaler Filter nach Ländercode. Beispiel: |
InvoiceNr
|
varchar(20) string |
NULL |
Optionaler Filter nach Rechnungsnummer. Beispiel: |
OrderNrExternal
|
varchar(50) string |
NULL |
Optionaler Filter nach externer Auftragsnummer (Shop-Auftragsnummer). Beispiel: |
BookKeepingAccount
|
varchar(255) string |
NULL |
Optionaler Filter nach Buchhaltungskonto (Sachkonto). Beispiel: |
CostCenter
|
varchar(8) string |
NULL |
Optionaler Filter nach Kostenstelle. Beispiel: |
Antwort
Result-Set 1 · Wenn die Einstellung BookExportDatevActive = 1 ist
Die DATEV-Exportzeilen für Rechnungen, wie von Pixi_DatevExportInvoices geliefert. Deren Definition liegt nicht vor, daher können die Spalten nicht aufgeführt werden.
Result-Set 2 · Wenn die Einstellung BookExportDatevActive nicht 1 ist
Eine einzelne Statuszeile mit dem Hinweis, dass die DATEV-API-Aufrufe nicht aktiviert sind.
| Spalte | Typ | Beschreibung |
|---|---|---|
Status
|
varchar(5) string |
Immer |
StatusMessage
|
varchar(65) string |
Fehlertext. |
Beispielantwort
<SqlRowSet1>
<row>
<Status>ERROR</Status>
<StatusMessage>Setting "DATEV API Calls" (BookExportDatevActive) is not enabled.</StatusMessage>
</row>
</SqlRowSet1>
Fehlermeldungen
| Status | Meldung | Ursache |
|---|---|---|
| ERROR | Setting "DATEV API Calls" (BookExportDatevActive) is not enabled. | Die Einstellung `BookExportDatevActive` fehlt oder ist nicht auf `1` gesetzt. "DATEV API Calls" in den Pixi-Einstellungen aktivieren. |
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:pixiGetDatevExportInvoices>
<DateFrom>2024-01-01T00:00:00</DateFrom>
<DateTo>2024-01-31T23:59:59</DateTo>
<!-- <ShopId>SHP</ShopId> -->
<!-- <ShowOnlySums>0</ShowOnlySums> -->
<!-- <Country>DE</Country> -->
<!-- <InvoiceNr>RE2024000123</InvoiceNr> -->
<!-- <OrderNrExternal>100045678</OrderNrExternal> -->
<!-- <BookKeepingAccount>8400</BookKeepingAccount> -->
<!-- <CostCenter>1000</CostCenter> -->
</ns1:pixiGetDatevExportInvoices>
</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:pixiGetDatevExportInvoices>
<DateFrom>2024-01-01T00:00:00</DateFrom>
<DateTo>2024-01-31T23:59:59</DateTo>
<!-- <ShopId>SHP</ShopId> -->
<!-- <ShowOnlySums>0</ShowOnlySums> -->
<!-- <Country>DE</Country> -->
<!-- <InvoiceNr>RE2024000123</InvoiceNr> -->
<!-- <OrderNrExternal>100045678</OrderNrExternal> -->
<!-- <BookKeepingAccount>8400</BookKeepingAccount> -->
<!-- <CostCenter>1000</CostCenter> -->
</ns1:pixiGetDatevExportInvoices>
</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 = [
'DateFrom' => '2024-01-01T00:00:00',
'DateTo' => '2024-01-31T23:59:59',
// 'ShopId' => 'SHP',
// 'ShowOnlySums' => '0',
// 'Country' => 'DE',
// 'InvoiceNr' => 'RE2024000123',
// 'OrderNrExternal' => '100045678',
// 'BookKeepingAccount' => '8400',
// 'CostCenter' => '1000',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiGetDatevExportInvoices', $soapArguments);
Verwendete Tabellen
- SQL-Objekt:
- dbo.pipiGetDatevExportInvoices