Schleife mit contains
Ich hänge gerade an einem Problem, bei dem ich nicht weiterkommen. Über eine Schleife werden in einer Tabelle ToDos angelegt (das funktioniert auch einwandfrei). Je nachdem welche Beschreibung im Feld "Aufgabenbeschreibung" genannt sind, sollen diese unterschiedlichen Bearbeitern aus einem Auswahlfeld "Bearbeiter" zugeordnet werden. Die Aufgabenbeschreibung beginnt immer mit unterschiedlichen Zahlen, aus denen sich eine Zuteilung auf die Bearbeiter ableiten lässt.
Mein Gedankenansatz hierzu wäre das nachdem die Aufgaben aus der ersten Schleife angelegt wurden eine zweite Schleife abläuft und die Bearbeiter ändert, je nach Zahl im Feld Aufgabenbeschreibung. Irgendwie bekomme ich das aber nicht hin. Umgangssprachlich sollte umgesetzt werden "Wenn Aufgabenbeschreibung enthält 4 oder 5 oder 7 oder 8 Bearbeiter 1 ansonsten Bearbeiter 2. Über einen Gedankenanstoß wäre ich dankbar.... Frank
2 Antworten
-
Hallo Frank, die Abfrage/Zuordnung selbst könnte folgendermaßen aussehen (hier am Beispiel von zwei Ziffern, aber die Abfrage ließe sich mit "or" natürlich entsprechend erweitern):
Bearbeiter := if contains(Aufgabenbeschreibung, "4") or contains(Aufgabenbeschreibung, "5") then 1 else 2 end
Falls die Ziffern immer am Anfang der Beschreibung stehen, dann könnte man sie auch vorher mit substr() auslesen und in eine Zahl umwandeln, damit die Abfrage kompakter und flexibler wird:
let myN := number(substr(Aufgabenbeschreibung, 0, 1));
Bearbeiter := if myN = 4 or myN = 5 or myN = 7 then 1 else 2 end
Oder, wenn man mehrere Bearbeiter hat und das Ganze übersichtlicher darstellen möchte (am Beispiel von 4 Ziffern):
let myN := number(substr(Aufgabenbeschreibung, 0, 1));
Bearbeiter := switch myN do
case 4: 1
case 5: 1
case 6: 3
case 7: 1
default: 2
end
-
Hallo Copytexter, das funktioniert (wie nicht anders zu erwarten) einwandfrei! Danke für die ausführliche Lehrstunde, das habe ich nun kapiert :-)... Frank
Content aside
- vor 4 JahrenZuletzt aktiv
- 2Antworten
- 539Ansichten