Einreichungswebservice

Zuletzt geändert von MACH ProForms GmbH am 02.07.2024

Architekturskizze

Bei jeder im Folgenden beschriebenen Variante des Webservices wird eine einheitliche Architektur verwendet. Da der Webservice derzeit ausschließlich über HTTP erreichbar ist, wird ein Reverse-Proxy benötigt, um die die Verschlüsselung der Daten zu gewährleisten. Nachfolgend wird die Kommunikationsstrecke vom Absenden eines Antrages bis hin zur Annahme und Weiterverarbeitung durch den Webservice visuell dargestellt.

Architekturskizze Submissionwebservice

Hinweis: Bei der Kommunikation vom MACH formsolutions Plattform in das interne Netzwerk wird standardmäßig der SSL-Port 443 verwendet. Die interne Weiterleitung des Reverse-Proxies an den Webservice erfolgt auf den Port, welcher bei der Installation des Webservices angegeben wurde.

Standard-Webservice

Bei dieser Variante wird auf dem zugrundeliegenden Server innerhalb des zutreffenden Arbeitsverzeichnisses ein Ordner für den jeweiligen Assistenten angelegt. Innerhalb dieses Ordners wird je Transaktion ein weiteres Verzeichnis hinzugefügt, welches die zugehörigen Dateien (PDF, XML, FDF, weitere Metadaten) beinhaltet. Sollten Anlagen bei der Einreichung an den Webservice versendet werden, so werden diese ebenfalls entpackt gespeichert.

Mit dem Startparameter --single-folder werden alle Anträge direkt im ausführenden Ordner abgelegt. Anlagen werden hierbei nicht entpackt.

Nicht enthalten:

  • Schreiben einer CSV-Datei
  • Flattening der PDF-Dokumente

Standard-Webservice mit flexibler CSV-Generierung

Bei dieser Variante wird für jeden Assistenten im zutreffenden Arbeitsverzeichnis ein Ordner angelegt, welcher keine weiteren Unterverzeichnisse enthält. Bei der Ablage der Dateien ist zu unterscheiden, ob es sich um eine Einreichung mit oder Anlagen handelt.

Einreichung ohne Anlagen

Für jede Einreichung wird das zugehörige PDF-Dokument sowie eine generierte CSV-Datei in der oben beschriebenen Ordnerstruktur abgelegt.

Einreichung mit Anlagen

Für jede Einreichung wird mindestens eine CSV-Datei erzeugt. Bei dieser Variante werden keine eingereichten PDF-Dokumente gespeichert, sondern ausschließlich die entpackten Anlagen der Einreichung. Der Dateiname der auf der Platte abgelegten Anlagen bildet sich wie folgt:

<Formularnummer\>-\<TransaktionsId\>-\<Anlagenname\>.

Sollten mehrere Anlagen hochgeladen werden, so werden pro Anlage eine generierte CSV-Datei sowie die Anlage selbst gespeichert. Die Bildung des Dateinamens sieht wie folgt aus:

\<Formularnummer\>-\<Transaktionsid\>-\<Anlagennummer\>-\<Anlagenname\>, wobei der Platzhalter \<Anlagennummer\>

entsprechend hochgezählt wird.

Aufbau der CSV-Datei

Die generierte CSV-Datei beinhaltet folgende Daten:

  • Dateinamen der zugehörigen Anlage oder des zugehörigen PDF-Dokuments
  • Alle im Antrag vorhandenen Felder. Hierbei kann die Reihenfolge der Felder über eine Konfigurationsdatei (Properties-Datei) durch den Administrator bestimmt und entsprechend angepasst werden. Die Konfigurationsdatei ist innerhalb des Ordners für den jeweiligen Assistenten unter dem Namen *"\<identifier\>.properties"* zu finden. Hierbei dient *"\<identifier\>"* als Platzhalter und repräsentiert den Namen des Assistenten. Ein exemplarischer Aufbau dieser Properties-Datei stellt sich wie folgt dar:
transId=01
fileUrl=02
Wie_hat_Ihnen_die_Präsentation_gefallen=03
input=04
staat=05
AS_PLZ=06
AS_Ort=07
AS_Bundesland=08
AS_Strasse=09
AS_Hausnummer=10
file=11

Hinweis:
Im obigen Beispiel repräsentiert der erste Wert die technische Bezeichnung, wodurch der zugehörige Wert die auftretende Reihenfolge in der CSV-Datei angibt.

Nicht enthalten:

  • Eingangsdatum des Antrags
  • Startparameter --single-folder entfällt
  • kein Anlagenverzeichnis
  • Es wird keine XML-Datei erzeugt

Standard-Webservice mit CSV-Generierung inklusive Anlagenverzeichnis

Bei dieser Variante wird für jeden Assistenten im entsprechenden Arbeitsverzeichnis ein Ordner angelegt, welcher keine weiteren Unterordner enthält. Bei einer Einreichung wird ein geflattetes PDF sowie eine generierte CSV-Datei gespeichert. Der Dateiname der generierten Dateien bildet sich wie folgt: Formularnummer + Transaktions-ID. Alle Einreichungen werden in einer flachen Hierarchie unterhalb des Ordners mit dem entsprechenden Assistentennamen abgelegt.

Aufbau der CSV-Datei

Die generierte CSV-Datei beinhaltet folgende Daten:

  • Dateinamen des zugehörigen PDF-Dokuments
  • Eingangsdatum der Einreichung

Hinweis:
Bei dieser Variante kann die Reihenfolge der enthaltenen Felder nicht über eine Konfigurationsdatei (Properties-Datei) bestimmt werden.

Besonderheit:
In der CSV-Datei werden insgesamt zehn Felder für die Anlagen vorgehalten. Diese Anlagen werden dann separat gespeichert. Die Verlinkung von der CSV-Datei zu den Anlagen findet über einen Pfad statt, welcher den Ablageort der entsprechende Anlage repräsentiert.

Nicht enthalten:

  • Erzeugen eines XML-Files
  • Möglichkeit der Sortierbarkeit der Anträge
  • Startparameter --single-folder

Support

Der Einreichungswebservice unterliegt nach Inbetriebnahme keiner weiteren Pflege durch MACH ProForms. Versionsänderungen, Funktionserweiterungen oder sonstige Supportanfragen sind daher kostenpflichtig und müssen gesondert beauftragt werden.