/// <summary> /// Führt den Check durch. /// </summary> /// <param name="schueler">Der Schüler.</param> public override void Check(Schueler schueler) { SeminarfachnoteTableAdapter seminarfachAdapter = new SeminarfachnoteTableAdapter(); var seminarfachnoten = seminarfachAdapter.GetDataBySchuelerId(schueler.Id); if (seminarfachnoten.Count == 0) { contr.Add(null,"Es liegt keine Seminarfachnote vor."); } else { if (seminarfachnoten[0].IsGesamtnoteNull()) { contr.Add(null, "Es liegt keine Seminarfachnote vor."); } else { /* s. UnterpunktungsChecker var note = seminarfachnoten[0].Gesamtnote; if (note < 4) { contr.Add(null, "Im Seminarfach wurden " + note + " Punkte erzielt."); } */ if (seminarfachnoten[0].IsThemaLangNull() && seminarfachnoten[0].IsThemaKurzNull()) { contr.Add(null, "Es liegt kein Seminarfachthema vor."); } } } }
/// <summary> /// Konstruktor. /// </summary> /// <param name="schuelerId">Die Id des anzuzeigenden Schülers.</param> public Notenbogen(int schuelerId) { log.Debug("Öffne Notenbogen SchülerId=" + schuelerId); InitializeComponent(); schueler = new Schueler(schuelerId); nameTextBox.Text = schueler.NameVorname; klasseTextBox.Text = schueler.getKlasse.Data.Bezeichnung; textBoxAdresse.Text = schueler.Data.AnschriftStrasse + "\n" + schueler.Data.AnschriftPLZ + " " + schueler.Data.AnschriftOrt + "\n Tel.:" + schueler.Data.AnschriftTelefonnummer; SchuelerNoten noten = schueler.getNoten; // Row[lineCount] für schriftliche und Row[lineCount+1] für mündliche Noten int lineCount = 0; foreach(var kursNoten in noten.alleFaecher) { dataGridNoten.Rows.Add(2); dataGridNoten.Rows[lineCount + 1].Height += 2; dataGridNoten.Rows[lineCount + 1].DividerHeight = 2; dataGridNoten.Rows[lineCount].Cells[0].Value = kursNoten.getFach.Bezeichnung; InsertNoten(1, lineCount, kursNoten.getNoten(Halbjahr.Erstes, Notentyp.Schulaufgabe)); InsertNoten(1, lineCount+1, kursNoten.sonstigeLeistungen(Halbjahr.Erstes)); InsertNoten(10, lineCount, kursNoten.getNoten(Halbjahr.Zweites, Notentyp.Schulaufgabe)); InsertNoten(10, lineCount+1, kursNoten.sonstigeLeistungen(Halbjahr.Zweites)); InsertSchnitt(8,lineCount,kursNoten.getSchnitt(Halbjahr.Erstes)); BerechneteNote zeugnis = kursNoten.getSchnitt(Halbjahr.Zweites); InsertSchnitt(18,lineCount, zeugnis); InsertNoten(20, lineCount, kursNoten.getNoten(Halbjahr.Zweites, Notentyp.APSchriftlich)); InsertNoten(20, lineCount + 1, kursNoten.getNoten(Halbjahr.Zweites, Notentyp.APMuendlich)); if (zeugnis != null) { if (zeugnis.PruefungGesamt != null) { dataGridNoten.Rows[lineCount].Cells[21].Value = zeugnis.PruefungGesamt; dataGridNoten.Rows[lineCount].Cells[22].Value = zeugnis.SchnittFortgangUndPruefung; dataGridNoten.Rows[lineCount].Cells[23].Value = zeugnis.Abschlusszeugnis; } else dataGridNoten.Rows[lineCount].Cells[23].Value = zeugnis.JahresfortgangGanzzahlig; } lineCount = lineCount + 2; } if (schueler.getKlasse.Jahrgangsstufe == Jahrgangsstufe.Elf) { FpANotenTableAdapter fpAAdapter = new FpANotenTableAdapter(); var fpANoten = fpAAdapter.GetDataBySchuelerId(schueler.Id); if (fpANoten.Count == 1) { textBoxFpABemerkung.Text = fpANoten[0].Bemerkung; listBoxFpA.SelectedIndex = fpANoten[0].Note; } } if (schueler.getKlasse.Jahrgangsstufe == Jahrgangsstufe.Dreizehn) { SeminarfachnoteTableAdapter seminarfachAdapter = new SeminarfachnoteTableAdapter(); var seminarfachnoten = seminarfachAdapter.GetDataBySchuelerId(schueler.Id); if (seminarfachnoten.Count == 1) { numericUpDownSeminarfach.Value = seminarfachnoten[0].Gesamtnote; textBoxSeminarfachthemaKurz.Text = seminarfachnoten[0].ThemaKurz; textBoxSeminarfachthemaLang.Text = seminarfachnoten[0].ThemaLang; } } }
/// <summary> /// Führt den Check durch. /// </summary> /// <param name="schueler">Der Schüler.</param> /// <param name="reason">Die Art der Prüfung.</param> /// <returns>Array mit Fehler- oder Problemmeldungen. Kann auch leer sein.</returns> public override void Check(Schueler schueler, Zeitpunkt reason, NotenCheckResults res) { SeminarfachnoteTableAdapter seminarfachAdapter = new SeminarfachnoteTableAdapter(); var seminarfachnoten = seminarfachAdapter.GetDataBySchuelerId(schueler.Id); if (seminarfachnoten.Count == 0) { res.Add(schueler, null,"Es liegt keine Seminarfachnote vor."); } else { var note = seminarfachnoten[0].Gesamtnote; var thema = seminarfachnoten[0].ThemaLang; if (note < 4) { res.Add(schueler, null, "Im Seminarfach wurden " +note+" Punkte erzielt."); } if (string.IsNullOrEmpty(thema)) { res.Add(schueler, null, "Es liegt kein Seminarfachthema vor."); } } }
private void buttonSpeichern_Click(object sender, EventArgs e) { if (schueler != null && schueler.getKlasse.Jahrgangsstufe == Jahrgangsstufe.Elf) { FpANotenTableAdapter fpAAdapter = new FpANotenTableAdapter(); var fpANoten = fpAAdapter.GetDataBySchuelerId(schueler.Id); if (fpANoten.Count == 1) { fpAAdapter.Update(listBoxFpA.SelectedIndex, textBoxFpABemerkung.Text, schueler.Id); } else { fpAAdapter.Insert(schueler.Id, listBoxFpA.SelectedIndex, textBoxFpABemerkung.Text); } } if (schueler != null && schueler.getKlasse.Jahrgangsstufe == Jahrgangsstufe.Dreizehn) { SeminarfachnoteTableAdapter seminarfachAdapter = new SeminarfachnoteTableAdapter(); var seminarfachnoten = seminarfachAdapter.GetDataBySchuelerId(schueler.Id); if (seminarfachnoten.Count == 1) { seminarfachAdapter.Update((int)numericUpDownSeminarfach.Value, textBoxSeminarfachthemaLang.Text, textBoxSeminarfachthemaKurz.Text, schueler.Id); } else { seminarfachAdapter.Insert(schueler.Id, (int)numericUpDownSeminarfach.Value, textBoxSeminarfachthemaLang.Text, textBoxSeminarfachthemaKurz.Text); } } }