PDF Export

Aktive Abonnements

Allgemeines

Bei der vorliegenden Schnittstelle wird regelmäßig (z: B.. täglich) eine Datei erzeugt, welche alle aktiven Aufträge für ein bestimmtes Druckerzeugnis in einem fest vorgegebenen Mandant enthält. Aktive Aufträge bedeutet, das dem Auftrag zugrundeliegende Abonnement ist nicht gekündigt, oder, falls eine Kündigung für diesen Auftrag besteht, liegt das Datum der letzten Lieferung in der Zukunft. Die Schnittstelle basiert auf XML (eXtensible Markup Language). Die gesamte XML-Struktur wird in einer Datei übertragen. Die XML-Struktur besteht im wesentlichen aus einem Header-Teil, in dem die üblichen Dokumentenbeschreibungen (XML-Version, encoding, etc.) hinterlegt werden, welche für die gesamte Datei gelten. Die auftragsspezifischen Daten werden innerhalb des

-Tags in der eigentlichen XMLStruktur hinterlegt. Zu einem Auftrag können mehrere Geschäftspartner in ihren jeweiligen Beziehungen zum Auftrag (Rollen) zurückgegeben werden. Die Dateien werden per ftp auf den dsb-Server übertragen. Die Adresse des Servers lautet: ftp.dsb.net. Die Datei wird hierbei in das Verzeichnis ‚von_dsb‘ übertragen. Der Name der Datei ist frei wählbar. Um die Datei abholen zu können, benötigen Sie einen FTP-Zugang. Dieser wird Ihnen von Ihrer Kundenbetreuung mitgeteilt. Änderungen der Struktur, des Elementaufbaus und der Elementeigenschaften behalten wir uns vor (siehe hierzu auch Abschnitt 2.5). Hierbei ist bei den Änderungen folgendes zu beachten: zusätzliche Felder können ohne weitere Benachrichtigung hinzugefügt werden. Deshalb ist es wichtig, den Zugriff auf die XML-Struktur mit entsprechenden Frameworks der verwendeten Programmiersprache zu realisieren (wie z.B. mittels JDOM in Java). Dadurch funktioniert der Zugriff auf die hier dokumentierten Felder auch dann noch, wenn in der Struktur weitere Inhalte hinzugefügt werden. Natürlich kann auf die einzelnen Felder auch „nativ“, d.h. über Stringoperationen zugegriffen werden, dabei muss dann natürlich darauf geachtet werden, nicht direkt nach den entsprechenden Feldern zu suchen (wie z. B. den Vornamen im Feld „first-name“), sondern hier muss zuerst die Unterstruktur „business- partner“ extrahiert werden und in dieser kann dann nach dem Tag „first-name“ gesucht werden.

Gesamtstruktur

Alle Aufträge werden innerhalb eines XML-Dokuments und damit in einer XML-Datei versendet. Die Aufträge( Abonnements) werden innerhalb des

-Tags zusammengefasst. Ein einzelner Auftrag (Abonnement) wird mit seinen Elementen innerhalb eines Tags bzw. geführt.

Schematische Darstellung (neu):

<?xml version='1.0' encoding='ISO-8859-1'?>
<message version='1.0' system='avs/3'>
  <header>
    <client></client>
  </header>
  <body>
    <subscription-order>
      <!-- umfasst einen Auftrag -->
    </subscription-order>
    ...
    <subscription-order>
      <!-- weiterer Auftrag, usw. -->
    </subscription-order>
  </body>
</message>

Schematische Darstellung (veraltet):

<?xml version='1.0' encoding='ISO-8859-1'?>
<message version='1.0' system='avs/3'>
  <header>
    <client></client>
  </header>
  <body>
    <subscription>
      <!-- umfasst einen Auftrag -->
    </subscription>
    ...
    <subscription>
      <!-- weiterer Auftrag, usw. -->
    </subscription>
  </body>
</message>

Die Struktur der gelieferten XML-Fragmente subscription-order (neu) bzw. subscription (veraltet), hat im Batch Modus den gleichen Aufbau wie im Realtime Modus. Bitte verwenden Sie daher die Beschreibungen in Abschnitt: createOrderBuffered.

Änderungen der XML-Strukturen

DSB behält sich vor die in diesem Dokument beschrieben XML-Strukturen ohne Vorankündigung anzupassen, solange diese Anpassungen komplett abwärtskompatibel bleiben. In der Praxis sind dies hauptsächlich Ergänzungen von Elementen und Attributen.

Beispiel 1: Neues Element

Neue Elemente können hinzugeführt werden. Alle Clients sollten so auf die Elemente zugreifen (z. B. nur über den Namen), dass keine Anpassung notwendig ist.

Struktur VOR der Erweiterung/Anpassung:

<existing-element1>ABCD</existing-element1>
<existing-element2>1234</existing-element2>

Struktur NACH der Erweiterung/Anpassung:

<existing-element1>ABCD</existing-element1>
<new-element>XYZ</new-element1>
<existing-element2>1234</existing-element2>
Beispiel 2: Neues Attribut

Attribute zu Elementen können hinzugeführt werden. Alle Clients sollten so auf die Elemente zugreifen (z.B. nur über den Namen), dass keine Anpassung notwendig ist.

Struktur VOR der Erweiterung/Anpassung:

<existing-element1>ABCD</existing-element1>

Struktur NACH der Erweiterung/Anpassung:

<existing-element1 new-attribute="XYZ">ABCD</existing-element1>

Um dies auf Seite des Clients sicherstellen zu können, gibt es einen speziellen Webservice, mit dem geprüft werden kann, wie der Client auf solche Erweiterungen reagiert.

Siehe hierzu Abschnitt zum Service checkUpgradeCompatibility.

Cookies helfen bei der Bereitstellung von Inhalten. Durch die Nutzung dieser Seiten erklären Sie sich damit einverstanden, dass Cookies auf Ihrem Rechner gespeichert werden. Weitere Information