noteListe = obj?.schuelerStamm?.getSchuelerSJGewaehlt().getNoteListe(); zeugnisNoteListe = obj?.schuelerStamm?.getSchuelerSJGewaehlt().getZeugnisNoteListe(); daten_alle_noten=[]; for (i=0; i < noteListe.size(); i++) { daten_eine_note=[noteListe[i].getSchuelerfach().kurzform.toString().toUpperCase().replace('SMW', 'SPO').replace('SW', 'SPO').replace('SM', 'SWM').replace('NUTB', 'NUT').replace('NUTPH', 'NUT').replace('NUTINF', 'NUT'), noteListe[i].getBlockbezeichner(), noteListe[i].note ]; daten_alle_noten.add(daten_eine_note); } for (j=0; j < zeugnisNoteListe.size(); j++) { daten_eine_note=[zeugnisNoteListe[j].schuelerfach.kurzform.toString().toUpperCase().replace('SMW', 'SPO').replace('SW', 'SPO').replace('SM', 'SWM').replace('NUTB', 'NUT').replace('NUTPH', 'NUT').replace('NUTINF', 'NUT'), zeugnisNoteListe[j].wlZeugnisart.kurzform.replace("Z", "ZZ").replace("J", "JZ"), zeugnisNoteListe[j].note //, //zeugnisNoteListe[j].noteBerechnet ]; if (zeugnisNoteListe[j].note == null) { } else { daten_alle_noten.add(daten_eine_note); } } daten_alle_zeugnisdurchschnittsnoten=[]; for (j=0; j < zeugnisNoteListe.size(); j++) { daten_eine_durchschnittsnote=[ zeugnisNoteListe[j].schuelerfach.kurzform.toString().toUpperCase().replace('SMW', 'SPO').replace('SW', 'SPO').replace('SM', 'SWM').replace('NUTB', 'NUT').replace('NUTPH', 'NUT').replace('NUTINF', 'NUT'), zeugnisNoteListe[j].wlZeugnisart.kurzform.replace("Z", "ZZ-D").replace("J", "JZ-D"), zeugnisNoteListe[j].noteBerechnet ]; if (zeugnisNoteListe[j].noteBerechnet == null) { } else { daten_alle_zeugnisdurchschnittsnoten.add(daten_eine_durchschnittsnote); } } /* nur für die nichtsortierte Variante bei den Großen Leistungsnachweisen eine Original-Liste */ daten_alle_noten_original=[]; for (i=0; i < noteListe.size(); i++) { daten_eine_note=[noteListe[i].getSchuelerfach().kurzform.toString().toUpperCase().replace('SMW', 'SPO').replace('SW', 'SPO').replace('SM', 'SWM').replace('NUTB', 'NUT').replace('NUTPH', 'NUT').replace('NUTINF', 'NUT'), noteListe[i].getBlockbezeichner(), noteListe[i].note ]; daten_alle_noten_original.add(daten_eine_note); } /* Erstelle Liste [Fach, Liste kleine LN, Liste große LN, Schnitt kleine LN, Schnitt große LN] */ daten_noten_liste = []; // daten_noten_liste.add([E, [1,2,3],2.00, [1,2], 1.50]); /* class Fachnoten { String fach; // Fachbezeichner String[] kleineLN; // Einzelnoten kleiner Leistungsnachweise String[] grosseLN; // Einzelnoten großer Leistungsnachweise float schnittKleine; float schnittGrosse; }*/ def Fachnoten = [fach : '', kleineLN : [], grosseLN : [], schnittKleine: 0.00, schnittGrosse: 0.00]; liste_Fachnoten = []; for (i=0; i < daten_alle_noten.size(); i++){ // Hole Daten des Eintrags String fach = daten_alle_noten[i][0]; String typ = daten_alle_noten[i][1]; String wert = daten_alle_noten[i][2]; // Lege Fach in Liste an, falls nötig. fach_exists = false; for (j=0;j < liste_Fachnoten.size();j++){ if (liste_Fachnoten[j].f == fach) { fach_exists = true; } } if (fach_exists == false) { def newFach = [f : fach, kleineLN : [],grosseLN : [], schnittKleine: 0.00, schnittGrosse: 0.00]; newFach.f = fach; liste_Fachnoten.add(newFach); } // Finde aktuelles Fach for (j=0;j < liste_Fachnoten.size();j++){ if (liste_Fachnoten[j].f == fach){ aktuellesFach = liste_Fachnoten[j]; } } java.text.NumberFormat nf = java.text.NumberFormat.getNumberInstance(Locale.GERMANY); if (typ == "Kleine LN 1. Halbjahr" || typ == "Kleine LN 2. Halbjahr" ){ if (!wert.contains(".") && !wert.contains(",")){ aktuellesFach.kleineLN.add(wert); } } else if (typ == "Große LN 1. Halbjahr" || typ == "Große LN 2. Halbjahr" ){ if (!wert.contains(".") && ! wert.contains(",")){ aktuellesFach.grosseLN.add(wert); } } else if (typ == "KLEIN gesamt") { aktuellesFach.schnittKleine = nf.parse(wert).floatValue(); } else if (typ == "GROSS gesamt") { aktuellesFach.schnittGrosse = nf.parse(wert).floatValue(); } // Rauskopieren daten_noten_liste = liste_Fachnoten; } /* Finde die Fächer mit 5ern und 6ern als Einzelnoten */ liste_PAN_faecher = []; for (i=0; i < daten_noten_liste.size(); i++){ kleineLN = daten_noten_liste[i].kleineLN; grosseLN = daten_noten_liste[i].grosseLN; PANFach = false; for (j=0; j 4.3) { PANFach = true; } if (daten_noten_liste[i].schnittGrosse > 4.3) { PANFach = true; } if (PANFach) { liste_PAN_faecher.add(daten_noten_liste[i]); } } //+++ //item.value=daten_alle_noten_original;