Hallo Sven,
vielleicht siehst du den Wald vor lauter Bäumen nicht.
Die SQL-Felder sind exakt dafür geschaffen worden um auch Anforderungen wie deine umsetzten zu können.
Ein SQL Statement mit Bezug zu jeder einzelnen Option musst du doch gar nicht herstellen.
SQL-Statements wie deines
Code:
SELECT Anschrift FROM Tabelle WHERE FIRMA = ${input:Firma}
sind machbar und sowohl im genannten Forum-Thema als auch der Dokumentation aufgeführt.
Im genannten Forum-Thema wurden die SQL-Statements mit den festen einzelnen Optionen im ersten Teil nur verwendet, um das hart-kodierte Beispiel der Frage zu beantworten.
In der Frage von Nutzer 'kthiemig' gab es ja keine externe Datentabelle, sondern ausschließlich feste Optionen in 3 normalen Listboxen.
Im zweiten Teil des Forum-Themas, als Antwort auf die Frage von 'prffrost', werden aber Tabellen verwendet.
Und dieser Teil des Forum-Themas ist der interessante Teil für dich.
Im Post unter 'Mein neues abhängiges Feld hat den Namen 'sql-9' und ist ebenfalls vom Typ 'Listbox Sql'.' findest du etwa:
Code:
select label, value from antwort_a where 'group_a' in ${input:sql-6}
union select label, value from antwort_b where 'group_b' in ${input:sql-6};
und
Code:
select * from antwort_a where 'group_a' in ${input:sql-6}
union select * from antwort_b where 'group_b' in ${input:sql-6};
In der Dokumentation findest du unter
docs.joomla-4.visforms.vi-solutions.de/d...ption-list/#beispiel
folgendes:
Der Input Parameter select=value1 select=value2 wird zu (“value1”,“value2”) konvertiert und kann folgendermaßen direkt in einer SQL Where Bedingung verwendet werden:
where dbfieldname in ${input:select}
Das ist jetzt eigentlich genau das was du benötigst:
Code:
SELECT Anschrift as label, ID as value FROM Tabelle XYZ WHERE FIRMA in ${input:Firma}
Zu: ID as value
Alle Optionen bekommen den Primärschlüssel als Wert der Option.
Alle Datentabellen haben in der Regel ein Feld mit einer eindeutigen ID für den Datensatz.
Der konkrete Feld-Name kann selbstverständlich abweichen.
Der Wert der Option wird von dir nicht weiter benötigt bzw. verwendet (in keine Datentabelle geschrieben).
Du könntest also auch irgend etwas anderes reinschreiben.
Allgemein sollte es aber eindeutig sein.
In deinem Fall, wo es ja nur genau 1 Option gibt, kannst du auch einfach einen beliebigen festen Wert verwenden:
Code:
SELECT Anschrift as label, 'mein-einer-wert' as value FROM Tabelle XYZ WHERE FIRMA in ${input:Firma}
Zu: FIRMA in ${input:Firma}
Zur Verwendung der SQL-Aggregatfunktion In() bei Verwendnung von Formular-Daten von Feldern vom Typ 'Listbox' siehe in der Dokumentation:
docs.joomla-4.visforms.vi-solutions.de/d...C3%BCbergeben-werden
Lese dir das alles einfach nochmal in Ruhe durch.
Wenn du weitere Probleme haben solltest, dann meldest du dich wieder.
Falls du damit nicht klar kommen solltest, können wir dir gerne auch ganz praktisch weiterhelfen.
Ich hoffe, du hast Verständnis dafür, dass wir diese individuelle Leistung, nur basierend auf unserem aktuellen Stundensatz anbieten können.
Gruß, Ingmar