Joomla 5 Mitteilung

Wir freuen uns mitteilen zu können, dass seit dem 29. Januar 2024 alle unsere Joomla Erweiterungen mit Joomla 5 kompatible sind.

Für alle die gerade noch von Joomla 3 auf 4 aktualisieren: Anleitungen für die Joomla 4 Migration gibt es hier:

Es gibt nun auch eine eigenständige Dokumentation für Visforms für Joomla 4 und für Visforms auf Joomla 5

Forum

Visforms Subscription Inhaber können in unserem Forum Fragen stellen. Bitte mit dem entsprechenden Benutzer anmelden.
Jeder kann lesend auf das Forum zugreifen.

Bitte stellen Sie nur 1 Frage pro Thema.

Wichtig Angaben für fast jede Frage:
V1: Welche Visforms-Version läuft?
V2: Welche Joomla-Version läuft?
V3: Welche PHP-Version läuft?

Aufgrund von Feiertagen und Urlaub ist bei Anfragen im Forum in der Zeit vom 20. Dezember 2024 bis zum 8.Januar 2025 mit verlängerten Antwortzeiten zu rechnen.

Zugriff auf ID in Feld von Typ 'Berechnung'

Mehr
1 Jahr 8 Monate her #9152 von Eraxon
Hallo,

ich bin gerade dabei ein Registrierungsformular für einen Event zu schreiben mit ca. 1000 Teilnehmern. Um die Zuordnung der Bezahlungen möglichst leicht zu gestalten möchte ich dabei eine Zahlungsreferenz generieren, die eindeutig einer ID (von einer Anmeldung) zugeordnet werden kann. 

Diese Zahlungsreferenz rechne ich dabei mit einer Funktion aus, die noch ein paar Ziffern anhängt um rudimentäre Fehlererkennung zu erlauben. Die Zahlungsreferenz sollte direkt in der Zusammenfassung der Anmeldung und in der Bestätigungs-Mail ausgegeben werden.

Mein erster Versuch war ein Feld vom Typ 'Berechnung' in dem ich diese Funktion implementiere und dabei direkt auf die ID zugreife: Das funktioniert natürlich nicht, da es noch keine ID gibt bevor die Anmeldung abgeschickt wird. 

Jetzt gehen mir aber die Ideen aus, gibt es mit den aktuellen Features irgendeine Möglichkeit diese Funktionalität zu erreichen? 

Mehr
1 Jahr 8 Monate her #9153 von prffrost
Folgende Benutzer bedankten sich: Administrator IV, Eraxon

Mehr
1 Jahr 8 Monate her #9154 von Administrator IV
Administrator IV antwortete auf Zugriff auf ID in Feld von Typ 'Berechnung'
Hallo Eraxon,

im diesem Post wird es auch nochmal an einem konkreten Beispiel erklärt:

vi-solutions.de/en/forum-index/19-joomla...increment-field#9103

Liebe Grüße, Ingmar

:idea: I recommend you the new and up-to-date documentation for Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/en/docs/
Most of this also applies retrospectively to Joomla 3.
Please only ask 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 3.
Bitte immer nur 1 Frage pro Thema stellen :-).

Mehr
1 Jahr 8 Monate her - 1 Jahr 8 Monate her #9155 von Administrator IV
Administrator IV antwortete auf Zugriff auf ID in Feld von Typ 'Berechnung'
Hallo Eraxon,

wir sehen das Thema als wiederkehrende Frage im Forum auch interessant für eine Ergänzung der Visforms Dokumentation an.
Wir werden die Dokumentation um deinen Punkt entsprechen erweitern.
Ich habe dazu einen Issue zur Entwicklung für die Dokumentation angelegt:
Issue [VF-781] Docu: Add Example: Create unique counter including text parts

Wenn wir die Dokumentation erweitert haben, wirst du explizit darüber hier im Thema informiert.
Vielen Dank nochmal für deinen Beitrag!

Liebe Grüße, Ingmar

:idea: I recommend you the new and up-to-date documentation for Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/en/docs/
Most of this also applies retrospectively to Joomla 3.
Please only ask 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 3.
Bitte immer nur 1 Frage pro Thema stellen :-).
Letzte Änderung: 1 Jahr 8 Monate her von Administrator IV.

Mehr
1 Jahr 8 Monate her - 1 Jahr 8 Monate her #9157 von Eraxon
Vielen Dank für die schnelle Rückmeldung, grundsätzlich lässt es sich so wirklich gut umsetzen und ich habe es jetzt geschafft, die Zahlungsreferenz so zu generieren wie ich mir das vorstelle.

Was allerdings noch ein Problem darstellt ist die Problematik wenn zwei Leute gleichzeitig das Formular ausfüllen, die ID daher nicht mehr eindeutig ist und einer der Benutzer das Formular neu absenden muss. Wir schalten die Anmeldung den Event immer zu einem vorher angekündigten Zeitpunkt frei, was dann zu Hunderten Anmeldung in ein paar Minuten führt.

Mein Formular verwendet außerdem die Zusammenfassung, damit die Fahrer nochmal in Ruhe ihre Eingaben überprüfen können. Soweit ich das sehe gibt es auf der Zusammenfassungs-Seite auch keine Möglichkeit mehr das Feld zu updaten. Das Formular wäre zu Stoßzeiten also äußerst unzuverlässig.

Gäbe es vielleicht die Möglichkeit für ein "serverseitiges" Formularfeld, das fix ein SQL-Statement ausführt welches ganz einfach serverseitig vor dem Insert ausgeführt wird? Das müsste auch im Frontend gar nicht aufscheinen. Ich würde mir das so ähnlich vorstellen wie "Berechnung" nur dass es rein im Backend läuft.
Letzte Änderung: 1 Jahr 8 Monate her von Eraxon.

Mehr
1 Jahr 8 Monate her #9191 von Administrator IV
Administrator IV antwortete auf Zugriff auf ID in Feld von Typ 'Berechnung'
Hallo Eraxon,

kurz zur  Zusammenfassungs-Seite:
Grundsätzlich funktioniert der beschriebene Mechanismus auch bei Verwendung einer Zusammenfassungs-Seite ohne Einbußen.

Zu 'serverseitiges Formularfeld':
Es gibt die Möglichkeit für ein 'serverseitiges Formularfeld', das fix ein SQL-Statement ausführt, welches serverseitig direkt vor dem Insert ausgeführt wird.
Diese Möglichkeit gibt es in Visforms allerdings nicht als eine einfache Konfiguration.

Eine Möglichkeit für Entwickler gibt es in Form der Erstellung eines Custom-Plugins.
In der Dokumentation wird beschrieben, wie ein 'Visforms Custom Plugin' erstellt werden kann:
docs.joomla-4.visforms.vi-solutions.de/d...-plugin-development/
docs.joomla-4.visforms.vi-solutions.de/d...-plugin-development/

Der Entwickler kann dann selbst entscheiden, was zusätzlich alles geschehen soll.
In deinem Fall,  die Ermittlung bzw Berechnung und Speicherung der neuen eindeutigen ID.
Zur Ermittlung der neuen eindeutigen ID kannst du alle nur denkbaren Mechanismen der 'best praxis' einsetzen, die du möchtest.
Das bleibt dir vollkommen offen.

Falls du die Datensatz-ID nutzen willst, musst dein Code selbstverständlich erst aktiv werden, unmittelbar nachdem der Datensatz erzeugt und gespeichert wurde.
Die Erstellung eines Custom-Plugins erfordert etwas Erfahrung in der PHP-Entwicklung unter Joomla und dem SQL im Zusammenhang mit MySQL.

Folgende beide Events sind hierbei für dich interessant.
Event für den Zeitpunkt vor der Speicherung des Datensatzes:
Code:
public function onVisformsBeforeFormSave($context, $form, $fields)
Event für den Zeitpunkt nach der Speicherung des Datensatzes:
Code:
public function onVisformsAfterFormSave($context, $form, $fields)
Falls du Hilfe bei der Entwicklung des Plugins benötigst, dann können wir dich gerne dabei unterstützen - auch mit der kompletten Implementierung.
Bitte habe Verständnis dafür, dass wir diesen Aufwand zu unserem aktuellen Stundensatz berechnen müssen.

Liebe Grüße, Ingmar

:idea: I recommend you the new and up-to-date documentation for Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/en/docs/
Most of this also applies retrospectively to Joomla 3.
Please only ask 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 3.
Bitte immer nur 1 Frage pro Thema stellen :-).

Moderatoren: Administrator AVAdministrator IV
Powered by Kunena Forum