Einreichungswebservice
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.
| 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.
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
| Im obigen Beispiel repräsentiert der erste Wert die technische Bezeichnung, wodurch der zugehörige Wert die auftretende Reihenfolge in der CSV-Datei angibt. |
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
| Bei dieser Variante kann die Reihenfolge der enthaltenen Felder nicht über eine Konfigurationsdatei (Properties-Datei) bestimmt werden. |
|
Besonderheit: |