Hi Team,
ich habe aktuell ein sehr bedenkliches Verhalten und weiß nicht wie ich damit umgehen soll.
Folgendes Setup. Gesucht werden Elemente mit enthaltenem Value 29
ID | MultipleValueColumn
123 | 0815;29;10
456 | 4711;129;1
789 | 11;129
SearchDatastore
|
v
Filter (Argument: MultipleValueColumn.contains(‚29‘)
|
v
Mapper
Ich erwarte, dass lediglich ID 123 ausgespuckt wird, es werden jedoch auch die anderen beiden IDs im positiven Ergebnis des Filters weitergegeben.
Gebe ich in der Gegenprobe das Freemarker Script direkt im Datastore ein, bekomme ich wirklich nur alle Elemente angezeigt, die als MultipleValue den Value 29 auch hinterlegt haben.
Edit:
Fürs Debugging: Zur Kontrolle habe ich jetzt vor dem Filter nochmal einen Mapper mit einer true/false Prüfung gesetzt, ob Wert 29 enthalten ist.
<#if MultipleValueColumn.contains('29')>true<#else>false</#if>
Für ID 456 habe ich true zurück bekommen.
Wende ich jedoch den Code
<#if VariationTagIDs?split(';')?seq_contains('29')>true<#else>false</#if>
an, erhalte ich false zurück. Was natürlich richtig ist.