Hallo –
Ich bin noch neu bei Arcade und brauche Hilfe dabei, herauszufinden, was an meinem folgenden Ausdruck nicht stimmt. Ich habe 4 Fragen (siehe Bild 1). Frage 1 und 4 werden in allen Fällen beantwortet. Frage 2 und 3 werden abhängig von einer anderen Frage beantwortet, bei der angegeben wird, ob es sich bei dem Projekt um eine technische oder eine naturnahe Lösung handelt. Wenn die Befragten „Technisch“ auswählen, beantworten sie Frage 2; wenn sie „Naturnah“ auswählen, beantworten sie Frage 3. Es gibt eine Logik, durch die die Fragen je nach der ursprünglichen Antwort bearbeitet werden können. Für die Antwort auf jede Frage gibt es 0, 10 oder 20 Punkte. Anschließend vergeben wir anhand der folgenden Logik Bonuspunkte (Frage „Höchstmögliche Punktzahl“ im Bild), abhängig davon, wie viele Fragen mit 20 Punkten bewertet wurden (Bild 2). Mein Code gibt keine Zahl zurück, wenn eine der Fragen mit 20 bewertet wurde. Wenn alle Werte < 20 sind, gibt er korrekt 0 zurück. Kann mir jemand sagen, was ich falsch mache?
//alle mit Höchstpunktzahl
wenn ($feature.PR_RESF1_SCORE==20 && $feature.PR_RESF2ENG_SCORE==20 && $feature.PR_RESF3_SCORE==20) { //Alle mit Höchstpunktzahl – technisch
gib zurück 20;
} sonst wenn ($feature.PR_RESF1_SCORE==20 && $feature.PR_RESF2NAT_SCORE==20 && $feature.PR_RESF3_SCORE==20) { //Alle mit Höchstpunktzahl – naturnah
gib zurück 20;
//2 von 3 mit Höchstpunktzahl
} sonst wenn ($feature.PR_RESF1_SCORE==20 && $feature.PR_RESF2ENG_SCORE==20 && $feature.PR_RESF3_SCORE<20) { //RF1 und 2 mit Höchstpunktzahl – technisch
gib zurück 10;
} sonst wenn ($feature.PR_RESF1_SCORE==20 && $feature.PR_RESF2NAT_SCORE==20 && $feature.PR_RESF3_SCORE<20) { //RF1 und 2 mit Höchstpunktzahl – naturnah
gib zurück 10;
} sonst wenn ($feature.PR_RESF1_SCORE==20 && $feature.PR_RESF2ENG_SCORE<20 && $feature.PR_RESF3_SCORE==20) { //RF1 und 3 mit Höchstpunktzahl – technisch
gib zurück 10;
} sonst wenn ($feature.PR_RESF1_SCORE==20 && $feature.PR_RESF2NAT_SCORE<20 && $feature.PR_RESF3_SCORE==20) { //RF1 und 3 mit Höchstpunktzahl – naturnah
gib zurück 10;
} sonst wenn ($feature.PR_RESF1_SCORE<20 && $feature.PR_RESF2ENG_SCORE==20 && $feature.PR_RESF3_SCORE==20) { //RF2 und 3 mit Höchstpunktzahl – technisch
gib zurück 10;
} sonst wenn ($feature.PR_RESF1_SCORE<20 && $feature.PR_RESF2NAT_SCORE==20 && $feature.PR_RESF3_SCORE==20) { //RF2 und 3 mit Höchstpunktzahl – naturnah
gib zurück 10;
//1 von 3 mit Höchstpunktzahl
} sonst wenn ($feature.PR_RESF1_SCORE==20 && $feature.PR_RESF2ENG_SCORE<20 && $feature.PR_RESF3_SCORE<20) { //Nur RF1 mit Höchstpunktzahl – technisch
gib zurück 5;
} sonst wenn ($feature.PR_RESF1_SCORE==20 && $feature.PR_RESF2NAT_SCORE<20 && $feature.PR_RESF3_SCORE<20) { //Nur RF1 mit Höchstpunktzahl – naturnah
gib zurück 5;
} sonst wenn ($feature.PR_RESF1_SCORE<20 && $feature.PR_RESF2ENG_SCORE==20 && $feature.PR_RESF3_SCORE<20) { //Nur RF2 mit Höchstpunktzahl – technisch
gib zurück 5;
} sonst wenn ($feature.PR_RESF1_SCORE<20 && $feature.PR_RESF2NAT_SCORE==20 && $feature.PR_RESF3_SCORE<20) { //Nur RF2 mit Höchstpunktzahl – naturnah
gib zurück 5;
} sonst wenn ($feature.PR_RESF1_SCORE<20 && $feature.PR_RESF2ENG_SCORE<20 && $feature.PR_RESF3_SCORE==20) { //Nur RF3 mit Höchstpunktzahl – technisch
gib zurück 5;
} sonst wenn ($feature.PR_RESF1_SCORE<20 && $feature.PR_RESF2NAT_SCORE<20 && $feature.PR_RESF3_SCORE==20) { //Nur RF3 mit Höchstpunktzahl – naturnah
gib zurück 5;
//Keine mit Höchstpunktzahl
} sonst wenn ($feature.PR_RESF1_SCORE<20 && $feature.PR_RESF2ENG_SCORE<20 && $feature.PR_RESF3_SCORE<20) { //Keine mit Höchstpunktzahl – technisch
gib zurück 0;
} sonst wenn ($feature.PR_RESF1_SCORE<20 && $feature.PR_RESF2NAT_SCORE<20 && $feature.PR_RESF3_SCORE<20) { //Keine mit Höchstpunktzahl – naturnah
gib zurück 0;
}

