In einer Tabelle Einträge aus einer MfA suchen
Ich habe eine Tabelle mit einem MfA-Feld "TAGS".
In einer Auswertung möchte ich nun alle Datensätze selektieren die in einer Combobox selektiert werden.
Es sollen mir alle Datensätze angezeigt werden, die mindestens einem Feld der Combobox entsprechen.
Die Eingabe:
let id := (Tag_Select);
select Transaktionen where Tags = id
liefert mir leider nur die Datensätze, die alle drei Werte der Combobox erfüllen, also praktisch eine "UND-Verknüpfung" - und ich hätte gerne eine "ODER-Verknüpfung".
9 Antworten
-
Hallo Hermann. Schau mal, ob Dir das Script eines Users (ich denke es war Leo) etwas nützt. Mirko
let me := this; if me.Tag_Select then (select Transaktionen)[TAGS and cnt(unique(chosen(me.Tag_Select), chosen(TAGS))) < cnt(chosen(TAGS)) + cnt(chosen(me.Tag_Select))] else (select Transaktionen)[not TAGS] end
-
Oder man bastelt sich auf die Schnelle was mit eval():
if Tag_Select then let myView := ""; let myT := numbers(Tag_Select); for i in myT do myView := myView + "chosen(Tags, " + i + ") or " end; myView := substr(myView, 0, length(myView) - 3); select Transaktionen where eval(myView, this) else select Transaktionen end
-
Nochmal vielen Dank an planox und Mirko.
Es ist toll, wenn auch nicht immer auf Anhieb verständlich, was man mit so ein paar Codezeilen anstellen kann.
Content aside
- Status Answered
- vor 2 JahrenZuletzt aktiv
- 9Antworten
- 80Ansichten
-
2
Folge bereits