condition aus multiple-select funktioniert nicht

Fragen zum Erstellen von Templates für webEdition.
micha_sop
Member
Beiträge: 41
Registriert: Mi 4. Mai 2016, 13:53

condition aus multiple-select funktioniert nicht

Beitragvon micha_sop » Fr 27. Aug 2021, 15:34

Hallo Forum,

ich habe ein kleines Problem mit der condition für ein multiple-select.
Ich benutze hier WE in der Version 8.1.5 .

Also, ich habe in einer Vorlage ein Eingabefeld:

Code: Alles auswählen

<we:select multiple="true" name="selmulti">
	<option value="id">bezeichnung</option>
	...
</we:select>
Gespeichert werden auch alle id's, die hier ausgewählt werden (habe ich überprüft und mir ausgeben lassen).
Aber wenn ich dann versuche, dieses Feld in einer condition für eine Listview heranzuziehen, funktioniert das nicht.
Das compare="like" steht da, weil ich ja mit einem Wert aus einer Menge vergleichen muss. (Bei Mehrfachauswahl steht in dem Feld z.B. "123,234,456" - und da will ich prüfen ob die 123 enthalten ist)

Code: Alles auswählen

<we:condition name="condition">
	<we:conditionAdd field="selmulti"  compare="like" value="123"/>
</we:condition>
<we:listview name="lv_Artikel" doctype="Artikel" condition="\$condition">
Ich habe statt der direkten Zahl (123) auch schon Variablen versucht - gleiches Ergebnis -> keine Ausgabe.
Die Umstellung auf einen direkten Value habe ich gemacht, weil ich da den Fehler vermutet habe - war es aber nicht.

Können multiple-Selects nicht als condition-Field verwendet werden?
Mache ich hier einen Fehler?
Schonmal vielen Dank für Tipps und Hinweise.

Viele Grüße
Michael

WBTMagnum
webEdition Partner
webEdition Partner
Beiträge: 1825
Registriert: Di 7. Mär 2006, 16:50
Wohnort: Wien
Kontaktdaten:

Re: condition aus multiple-select funktioniert nicht

Beitragvon WBTMagnum » Sa 28. Aug 2021, 21:35

Hallo Michael,

Ich verstehe die Tag-Referenz für we:conditionAdd so, dass du bei einem Vergleich mit like den Wildcard auch anführen müsst.

Sprich, du kannst es auch mal so probieren (ungetestet):

Code: Alles auswählen

<we:conditionAdd field="selmulti" compare="like" value="%123%"/>
HTH,
Sascha

mokraemer
Senior Member
Beiträge: 3619
Registriert: So 8. Aug 2010, 01:23
Wohnort: Mainz

Re: condition aus multiple-select funktioniert nicht

Beitragvon mokraemer » So 29. Aug 2021, 12:08

ja logisch, oder. Denn "LIKE a%b" oder "LIKE ab%" oder "LIKE aB" wären sonst nicht möglich.
Für die Suche in Multiselcts sollte aber kein LIKE, sondern FIND_IN_SET verwendet werden, denn "LIKE %123%" finde 123, 1123, 22221235,...
webEdition-Kern-Entwickler

micha_sop
Member
Beiträge: 41
Registriert: Mi 4. Mai 2016, 13:53

Re: condition aus multiple-select funktioniert nicht

Beitragvon micha_sop » So 29. Aug 2021, 16:51

Hallo Sascha, hallo mokraemer,

ich habe beides probiert, aber kein Ergebnis.

Die Widlcards '%' hab ich gesetzt in verschiedenen Konstellationen (Anfang, Ende, Anfang und Ende) - kein Ergebnis.

Ich habe auch das mit dem Find_In_Set probiert. Hier bin ich mir aber nicht sicher ob das hier etwas bringten kann, da es ja keine Objekte sind, sondern Dokumente eines bestimmten Doc-Types. (Ich habe für find_in_set nur Beispiele für Objekte gefunden, aber keines für Doc-Types)
Habe ich aber versucht - auch kein Ergebnis.

Ich habe mir dann mal das Fehlerprotokoll angesehen. Hier steht drin:

Code: Alles auswählen

Unknown column 'selmulti' in 'where clause'
Diesen Fehler bekomme ich sowohl bei den Versuchen mit der Wildcard, als auch mit dem Find_In_Set().

Falls die komplette Fehlermeldung gebraucht wird, sagt Bescheid, dann stelle ich die rein..

Grüße
Michael


Zurück zu „webEdition Templates erstellen (we:Tags)“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 15 Gäste