Formular mit Datenbank

Mit dem Template “Formular” mit Datenbankverbindung ist es möglich, Formulareingaben direkt in einer Datenbank zur strukturierten Erfassung zu speichern. Das Speichern in der Datenbank ist auch ohne Mailversand der Daten möglich. Die Datenbank kann zudem über eine Weboberfläche eingesehen und bearbeitet werden.

Bitte lesen Sie zuerst die Anleitung für die Benutzung des Templates “Formular”.

Im Reiter "Formular-Ende" wird die Datenbank-Anbindung erstellt.

Formular mit Datenbank-Anbindung

Einrichtung

Damit eine Datenbank erstellt wird, muss im Reiter “Formular-Ende” unter “Formulartyp/Grundeinstellungen” links das Datenbank-Frontend ausgewählt sein und dann auf der rechten Seite ein Passwort vergeben werden. Das Passwort darf nur Buchstaben und Ziffern enthalten. Der Tabellenname wird automatisch generiert und kann nicht angepasst werden.

Sie können bei dem Datenbank-Frontend wählen, ob Dateianhänge auch in der Datenbank gespeichert werden. Wenn Sie eine dauerhafte Speicherung möchten, sollten Sie dafür ein DSGVO konformes Verfahrensverzeichnis in Ihrer Behörde anlegen.

Der Zugriff auf eine neu eingerichtete Datenbank funktioniert erstmals kurz nach Eingang eines ersten (Test-)Datensatzes über Ihr freigeschaltetes Formular.

Datenschutzhinweis

Imperia-Formulare bzw. die angeschlossene Datenbank sind für sensible Daten – und damit auch in der Regel für “Online-Anträge” oder die Verarbeitung ähnlicher verbindlicher Verwaltungsdienstleistungen – hinsichtlich der Themen Ausfallsicherheit, Datensicherheit und Ähnliches nicht konzipiert. Eine Alternative wäre hier bspw. der IKT-Basisdienst “Digitaler Antrag”, der als Frontend für Online-Anträge bereitgestellt wird. Für besonders schützenswerte persönliche Daten, wie zum Beispiel Gesundheitsdaten, darf ein Formular (mit oder ohne Datenbank) in keinem Fall verwendet werden!

Anmeldung in der Datenbank

Wenn Sie im Reiter Formular-Ende den Typ Datenbank-Frontend gewählt haben, finden Sie dort einen Link zum Datenbank-Betrachter, dem Frontend für das Auslesen und Bearbeiten der erhobenen Daten. Nach Anmeldung mit dem im Formular definierten Tabellennamen und Passwort erhalten Sie Zugriff auf die Daten.

Die Anmeldung im Datenbank-Betrachter ist erst möglich, wenn das Formular einmal im Live-System bzw. auf www.berlin.de/auftrittsname/rubrik/formular.php abgeschickt wurde. Erst dann wird die Datenbank angelegt und der Zugriff darauf ist möglich.

Formulareinträge im Datenbankbetrachter

Aufbau der Datenbanktabelle

Bezeichnungen und Reihenfolge der Spalten

Nach der Anmeldung sehen Sie alle Datenbankeinträge, die von den Nutzer*innen über das Formular gesendet wurden, sortiert in unterschiedliche Spalten. Die Namen der Spalten sind mit den Titeln der Formularfelder identisch. In den Klammern befinden sich die IDs der Felder, die automatisch generiert werden, wenn keine explizit vergeben wurden.

Im Beispiel wurden für alle Formularfelder IDs vergeben, außer für die 4. Spalte. Diese hat eine automatische ID erhalten.
Die erste Spalte beinhaltet immer eine von Imperia unabhängige ID. Diese ID wird bei einem Eintrag automatisch generiert und ist nur einmalig vorhanden. Die ID kann nicht verändert werden.

Danach folgen alle redaktionell angelegten Flex-Module im Formular, die für die Speicherung vorgesehen sind.

Anschließend werden automatisch angelegte Spalten angezeigt, die in Imperia meist über eine Checkbox angewählt wurden. Diese enthalten zum Beispiel die Absenderangaben, der Antwortwunsch und ggf. gespeicherte Formular-Anhänge.

Die hinteren Felder „Erzeugt am (create_date)“ und „Zuletzt bearbeitet am (update_date)“ werden wie die ID automatisch in die Tabelle geschrieben und können nicht manuell verändert werden. Normalerweise stimmen die Inhalte überein, außer wenn der Eintrag im Nachhinein in der Datenbank bearbeitet wurde. Dann wird automatisch das „Zuletzt bearbeitet am“ Feld aktualisiert.

Suchen und Sortieren

Die Eingabefelder unter den Spaltennamen dienen der Suche innerhalb der Spalte. Der Suchbegriff sollte nach folgendem Muster aufgebaut sein, z.B. “Fi%”, um bspw. die Einträge Fisch und Film zu finden. Das % ist ein sogenannter Joker, der alle beliebigen Zeichen als Treffer zulässt. Mit “Fi%” werden also alle Wörter gefunden, die mit den Buchstaben “F” und “i” (Groß- und Kleinschreibung wird beachtet) beginnen und danach beliebige Zeichen enthalten. Wenn mehrere Suchfelder gefüllt sind, werden nur Einträge angezeigt, die alle Bedingungen erfüllen.

Jede Spalte kann für die Sortierung der Tabelle genutzt werden. Zum Umsortieren genügt ein Klick auf die Spaltenüberschrift. Voreingestellt ist die Sortierung über die erste Spalte.

Ansicht der letzten Spalte in Überschrift und erstem Eintrag der freeDB

Datenbankbetrachter freeDB - letzte Spalte

Neben der letzten Spalte der Tabelle finden Sie verschiedene Aktionen:

  • Als Erstes wird ein Drop-down-Menü angeboten, um die Anzahl der angezeigten Einträge pro Seite zu verändern. Man kann zwischen 5, 10, 20, 50, 100 und 200 Einträgen pro Seite wählen. Die Voreinstellung ist 10 Einträge pro Seite.
  • Mit dem Filtern-Button kann die Suche in den Spalten anhand der Angaben in den Suchfeldern durchgeführt werden. Es reicht allerdings aus, wenn nach der Eingabe des Suchwortes die Eingabetaste gedrückt wird.
  • Die vier kleinen Icons in jeder Zeile sind für die Bearbeitung der einzelnen Zeile nötig.

Einträge bearbeiten

Das Stift-Icon am Ende der Zeile ruft die Bearbeiten-Ansicht auf. Mit diesem kleinen Editor können die Werte der Felder nachträglich bearbeitet werden. Die Bearbeitung der Felder ist auch mit einem Klick auf einen Wert möglich. Am unteren Ende befindet sich der Speichern-Button. Oben rechts kann das Fenster mit dem [x] ohne Speicherung geschlossen werden.

Alle Felder können bearbeitet werden und mit beliebigen Inhalten gefüllt werden. In der Datenbankansicht greifen die im Formular festgelegten Beschränkungen auf bspw. nur Zahlen nicht.

Ansicht des Zeileneditors im Datenbankbetrachter

Bearbeitungsansicht einer Zeile

Das Lupen-Icon ruft eine verbesserte Ansicht auf. Ganz unten kann der Eintrag bearbeitet werden oder die Tabellenansicht wieder aufgerufen werden.

Mit dem Papierkorb-Icon wird der einzelne Eintrag gelöscht.

Das vierte Icon dient zum Markieren von Datensätzen. So können Sie sehr einfach eine individuelle Auswahl nicht mehr benötigter Datensätze treffen, um unter den zur Verfügung stehenden “Aktionen” diese dann in einem Arbeitsgang zu löschen.

Wundern Sie sich in diesem Zusammenhang bitte nicht, wenn Sie auf fehlende ID-Nummern in der Datenbank aufmerksam werden. In solchen Fällen können bereits Spam-Einträge, Testdaten oder generell nicht mehr benötigte Daten gelöscht worden sein. Die Nummerierung der Datensätze wird nach Löschaktionen nicht verändert.

Sie können auch durch geeignete Suchbedingungen die Auswahl der angezeigten Datensätze so gestalten, dass Ihnen alle nicht mehr benötigten Daten (z.B. eines früheren Jahrgangs) angezeigt werden. Anschließend können Sie unter “Aktionen” die Option “Alle (sichtbaren) Einträge markieren” auswählen und danach “Markierte Einträge löschen”. Das gelegentliche Entrümpeln Ihrer Datenbestände gelingt auf diese Weise sehr effizient.

Bereich Aktionen

Unterhalb von “Aktionen” können Sie auch einen Eintrag zu dem Datensatz hinzuzufügen. Es ist allerdings leichter, das Online-Formular einfach selbst auszufüllen und abzuschicken, wenn Nutzer*innen nicht den Online-Weg gewählt haben.

Mit der Funktion “Lesezeichen für diese Suche” steht Ihnen eine Möglichkeit zur Verfügung, eine für Sie relevante Teilauswahl (z.B. nach Bearbeiter, Thema etc.) als Lesezeichen zu speichern und auf diese Weise sofort nur die Datensätze angezeigt zu bekommen, die für Sie zwecks weiterer Bearbeitung relevant sind. Wenn Sie die Filterung nach Ihren Wünschen angepasst und durchgeführt haben, klicken Sie auf den Link “Lesezeichen für diese Suche”. Damit werden die Parameter der Filterung in die URL übernommen, die Sie sich dann über die normale Browserfunktion als Lesezeichen abspeichern können.

Sie können Ihre Daten auch in verschiedenen Formaten herunterladen. Wir empfehlen, für eine bessere Weiterverarbeitung die Formate Excel oder CSV zu wählen. Von der Nutzung der PDF-Ansicht würden wir bei großen Tabellen abraten, da die Tabellen nicht mehr auf einem A4-Blatt dargestellt werden können.

Beim Format “CSV für SimpleSearch” werden die IDs als Spaltenbezeichner verwendet und nicht die Titel der Formularfelder, wie bei den anderen Dateien. Damit kann diese CSV als Grundlage für eine SimpleSearch genutzt werden.

Leseschnittstelle von freeDB

Lese-Schnittstelle

Leseschnittstelle

Jedes Formular mit Datenbank verfügt automatisch über eine zugangsbeschränkte Lese-Schnittstelle. Die URL für diese Schnittstelle finden Sie im Footer der Weboberfläche der Datenbank. Diese URL können Sie von dort kopieren und an Nutzer*innen dieser Schnittstelle weiterreichen.

Beachten Sie, dass sich die Zugangsdaten der Leseschnittstelle automatisch ändern, wenn Sie die Zugangsdaten für den administrativen Zugang ändern.

Die Schnittstelle kann nach außen CSV-, XML- oder JSON-Daten liefern.

Die CSV für SimpleSearch benutzt als Spaltenbezeichnung die IDs der Felder anstatt die Titel der Formularfelder.

Die zur Verfügung gestellte URL kann durch angehängte GET-Parameter zusätzliche Fragen beantworten:

  • order=KEY: Wobei KEY dem Namen des Feldes entspricht, über das sortiert werden soll. Durch ein angehängtes “ DESC” (mit dem Leerzeichen) wird die Sortierreihenfolge umgekehrt. Standardmäßig wird via “id” sortiert.
  • page=INTEGER: Damit kann durch die einzelnen “Seiten” des Suchergebnisses geblättert werden. Standardmäßig wird Seite 1 angezeigt.
  • ipp=INTEGER: steht für “items per page” und bestimmt, wie viele Einträge pro “Seite” angezeigt werden. Standardmäßig werden 10 Einträge pro “Seite” angezeigt.
  • KEY=VALUE: zeigt nur die Ergebnisse an, bei denen das Feld KEY mit dem Wert VALUE gefüllt ist. Dabei gilt “%” (ähnlich wie bei MySQL-LIKE) als Platzhalter für offene Fragen

Darüber hinaus existiert eine API für Schreib-Operationen.

Häufige Fragen

  • Warum werden neue Flex-Module nicht als Spalte in der Datenbank angezeigt?

    Wenn Sie innerhalb von Imperia Formularfelder verändern und diese Änderungen freischalten, werden diese Änderungen nicht sofort in der Datenbank durchgeführt. Die Struktur der Datenbank wird erst beim ersten Absenden des Formulars geändert. Daher sollten Sie nach einer Änderung am Formular einmal selbst das Formular ausfüllen, um die Datenbank zu aktualisieren.

  • Nach dem Löschen eines Flex-Moduls fehlt die Spalte in der Datenbank. Was ist passiert?

    Auch das Löschen von Flex-Modulen hat Einfluss auf die Struktur der Datenbank. Wenn ein Flex-Modul gelöscht wird, wird auch die Spalte inklusive der bereits enthaltenen Daten in der Datenbank unwiederbringlich gelöscht.

  • Ich habe die ID eines Flex-Moduls geändert, warum fehlen jetzt die Daten bei vorhandenen Einträgen?

    Das Umbenennen von Formularfeldern führt zum Löschen der alten Felder und dem Anlegen unter einem neuen Namen. Dabei wird der Inhalt der alten Spalte unwiederbringlich gelöscht. Daraus leitet sich die Empfehlung ab, dass Sie die Struktur Ihrer Tabelle nicht mehr ändern sollten, sobald die ersten Daten in der Tabelle sind.

  • Können gespeicherte Anhänge exportiert werden?

    Die hochgeladenen und gespeicherten Dateien können ausschließlich im Datenbank-Betrachter eingesehen und abgespeichert werden. Ein Export über Excel oder CSV ist nicht möglich.