Formulardefinition exportieren

Formulare mitsamt Daten auf eine andere Webseite kopieren

Hinweis: Diese Feature sind Teil der Visforms Subscription und in der freien Visforms Version nicht enthalten.

Mit der Visforms Subscription ist es möglich Formulardefinitionen zu exportieren und zu importieren. Formulare, die auf der einen Webseite erstellt wurden, können Sie exportieren. Die exportierten Formulare können Sie anschließend auf einer anderen Webseite importieren.
Dieses Kopieren von Formularen zwischen Webseiten ist insbesondere dann interessant, wenn Sie Formulare auf einem Test-System entwickeln und nach dem Testen in ein Produktiv-System übertragen wollen.
Oder Sie haben ähnliche Webseiten mit ähnlichen Formularen und möchten die Formulardefinitionen zwischen diesen Webseiten austauschen.

Die Art und Weise wie Joomla funktioniert macht es ziemlich schwierig, Formulare zwischen Webseiten zu kopieren.
Leider gibt es in Joomla eine enge Verknüpfung zwischen

  • den Joomla Core Daten und
  • den Daten von Joomla Erweiterungen, wie denen von Visforms.

An erster Stelle sind da die Joomla Benutzer. Jede Komponente, die Daten in der Datenbank speichert, verknüpft den aktuell angemeldeten Benutzer mit den Komponenten-Daten. Davon betroffen sind auch die Formulardefinitionen von Visforms.

An zweiter Stelle sind da

  • die Benutzergruppen,
  • die Zugriffsebenen und
  • die Zugriffsrechte, die den Benutzergruppen zugeordnet sind.

Diese Informationen sind in den Joomla Core Tabellen gespeichert. Normalerweise sind diese Daten auf jeder Webseite unterschiedlich. Selbst wenn dieselben Benutzergruppen existieren, haben diese häufig unterschiedliche IDs. Und es sind letztlich immer die IDs, welche die technische Verbindung zwischen den Tabellen herstellen.

Visforms versucht diese Probleme so intelligent wie möglich zu behandeln.
Trotzdem ist es so, dass nur Sie die Person sind, die weiß

  • ob Formulare zwischen 2 identischen Klonen derselben Webseite kopiert werden (Entwicklungs-Seite und Produktions-Seite) oder
  • ob Formulare auf ein komplett unterschiedliches Systemen übertragen werden (ähnliche Webseiten).

Deshalb bietet Ihnen Visforms eine Reihe von Optionen für den Export. Diese Export-Optionen müssen Sie an Ihre konkreten Bedingungen anpassen.
Sie können entscheiden, welche Teile der Formulardefinition Sie exportieren wollen:

  • Felder,
  • gespeicherte Übertragungen,
  • PDF-Templates.

Sie müssen auch entscheiden, ob Benutzer-IDs und ACL Einstellungen erhalten werden sollen.

Der Export

Formulare für den Export auswählen

Gehen Sie in der Visforms Administration auf die “Formulare” Ansicht. Dort sehen Sie die Liste aller Formulare. Nun wählen Sie mit Hilfe der Checkbox innerhalb der Tabelle aus, welche Formulare Sie exportieren wollen. Die Checkbox erscheint vor jedem Formulareintrag.

Klicken Sie anschließend in der Button-Leiste auf den Button “Formulardefinition exportieren”. Es öffnet sich ein modales Fenster, in dem Sie Einstellungen für den Export vornehmen können. Anschließend klicken Sie im modalen Fenster unten auf den Button “Formulardefinition exportieren” um den Export zu starten.

JSON-Datei im Download-Ordner des Web-Browsers

Die exportierten Formulardefinitionen werden nun in einer JSON-Datei auf Ihrem Rechner gespeichert. Es handelt sich dabei um einen normalen Download über den Web-Browser. Der Speicherort ist folglich abhängig von den Browsereinstellungen für den Download-Ordner.

Einstellungen für den Export

Optionen für Export von Formulardefinitionen

Hinweis: Die Voreinstellungen für den Export sind für den Fall optimiert, dass Sie Formulare zwischen unterschiedlichen Webseiten kopieren.

Aktivieren Sie die Optionen für den Export der Benutzer-Ids und der ACL Einstellungen nur, wenn Sie Formulare zwischen identischen Webseiten kopieren wollen.

Der Import

Klicken Sie in der Visforms-Administration in der Formulare-Ansicht auf den Button “Formulardefinition importieren”. Es öffnet sich ein modales Fenster, in dem Sie die Datei auswählen, die für den Import verwendet werden soll.

Hinweis: Formulare werden immer als neue Formulare importiert und überschreiben niemals vorhandene Formulare.

Alle Formulardefinitionsdaten (Formulare, Felder, PDF-Templates), die durch den Import in der Datenbank angelegt werden, werden als Daten des aktuell angemeldeten Benutzers angelegt.
Es sei denn, Sie haben beim Export die Option “Benutzer IDs beim Export erhalten” aktiviert.

Gespeicherte Formulardaten werden ohne Zuordnung zu einem registrierten Joomla-Benutzer angelegt.
Es sie denn, Sie haben beim Export die Option “Benutzer IDs beim Export erhalten” aktiviert.

Die Formular-IDs und Feld-IDs in der Datenbank auf dem Import-System sind höchstwahrscheinlich andere als auf dem Export-System. Visforms versucht während des Imports alle Abhängigkeiten von Formular-IDs und Feld-IDs zu korrigieren.

Insbesondere betrifft dies:

  • SQL-Statements in PDF-Templates,
  • alle ‘selectsql’, ‘radiosql’ und ‘multicheckboxsql’ Felder,
  • die bedingte Anzeige von Feldern,
  • Kalkulationen und ähnliches.

Hinweis: Wenn es solche Abhängigkeiten zwischen Ihren Formularen gibt, ist es absolut unerlässlich, dass Sie immer alle Formulare auf ein mal exportieren.

Ansonsten hat Visforms keine Möglichkeit die existierenden Abhängigkeiten beim Import zu finden und zu korrigieren.

Bitte beachten Sie, dass Visforms nicht prüft, ob die Versionen auf dem Export-System und dem Import-System zusammen passen. Wir empfehlen daher, Formulare nur zwischen Systemen mit identischen oder zumindest ausreichend ähnlichen Visforms und Visforms Subscription Versionen zu kopieren. Andernfalls ist es möglich, dass die Formulare auf dem Import-System nicht korrekt funktionieren.

Individuelle PHP-Code Tags

Konfiguration von Feld und Formular kann PHP-Code enthalten

Es ist grundsätzlich möglich, in der Konfiguration von Feld und Formular an verschiedenen Stellen PHP-Code einzutragen. Etwa in der Formular-Konfiguration auf dem Reiter ‘Datenanzeige im Frontend’, im untersten Parameter ‘Frontend Beschreibung’ mithilfe des Texteditors. Dadurch wird die Anzeige des Formulars oder der Formular-Daten um benutzerdefinierte Funktionen und zusätzliche individuelle Informationen erweiterbar.

Joomla verhindert aus Sicherheitsgründen das Einlesen von unsicheren Dateien

Joomla verhindert aus diversen Sicherheitsgründen das Einlesen von unsicheren Texten aus Dateien. Hierzu zählen unter anderem auch PHP-Code Tags. Das Verhalten von Joomla kann an dieser Stelle nicht beeinflusst werden, auch nicht über die ‘Globale Konfiguration’ oder andere Stellen. Davon sind die mit Visforms exportierten JSON-Dateien beim nachfolgenden Import nach Visforms ebenfalls betroffen.

Hinweis: Es ist aber über einen kleinen manuellen Umweg trotzdem möglich, Export und Import fehlerfrei durchzuführen.

PHP-Code Tags umbenennen

Benennen Sie hierzu vor den Export an den betroffenen Stellen, die PHP-Code Tags temporär um, etwa von <?php nach <___?php. Anschließend lassen sich Formulare fehlerfrei exportieren und anschließend importieren.

Danach können Sie dann in der Formularkonfiguration die temporären Textersetzungen der PHP-Code Tags wieder rückgängig machen.