Beschluss der Zeugniskonferenz: Versetzt gemäß §22,3 bzw. "geht über" gemäß 25,4

Alles, was den Reportdesigner und Drucken betrifft. Fehlermeldungen, Fragen, Reports

Moderatoren: Raffenberg, A. Schüller, Pfotenhauer

Antworten
Kurosinski
Beiträge: 945
Registriert: Sonntag 19. Mai 2019, 19:53
Schulform: Gesamtschule

Beschluss der Zeugniskonferenz: Versetzt gemäß §22,3 bzw. "geht über" gemäß 25,4

Beitrag von Kurosinski »

Liebe Kolleginnen und Kollegen,

beim Druck der Zeugnisse sind heute doch noch ein paar Probleme aufgefallen, die ich derzeit händisch bzw. durch abweichende Zeugnis-Formulare gelöst habe.

Zu den Fällen:
Wir haben Schüler, die normal versetzt bzw. nicht versetzt werden. Das normale Zeugnisformular kann dies gut abbilden.
Es gibt jedoch auch einige Fälle, die nach
§22,3 in die nächste Klasse versetzt werden (pädagogisch besser gefördert, obwohl die Noten nicht reichen, z.B. DaZ-Schüler) oder
§25,4 in die nächste Klasse übergehen (weil bereits zweimal die Klasse wiederholt).

Der entsprechende Passus soll/muss auf dem Zeugnis vermerkt werden - ist zumindest unser Wunsch.

Wie kann ich eine Abfrage erstellen, die bei entsprechenden Schülern den passenden Hinweis im Feld "Beschluss der Klassenkonferenz - Vermerk" erscheinen lässt.
Ich weiß, dass ich das bei La_Versetzung möglicherweise programmieren kann.
Doch welche oder wo kann ich bei Schild entsprechende Vermerke setzen?
Im Prinzip fehlt mir diese Möglichkeit im Bereich "Vers-Vermerk" bei den Schülern.

Gibt es dazu Ideen?

Vielen Dank und beste Grüße
Micha Kurosinski
Kurosinski
Beiträge: 945
Registriert: Sonntag 19. Mai 2019, 19:53
Schulform: Gesamtschule

Re: Beschluss der Zeugniskonferenz: Versetzt gemäß §22,3 bzw. "geht über" gemäß 25,4

Beitrag von Kurosinski »

Ich habe nun eine Abfrage in den entsprechenden Zeugnisreport eingefügt.
So kann ich für die übersichtliche Anzahl an Schülern, die entweder
- nicht versetzt sind,
- versetzt gemäß §22,3 sind oder
- in die Folgeklasse gemäß §25,4 übergehen

einen passenden Text auf dem Zeugnis ausgeben.

Vorraussetzung: Der Schüler muss als nicht versetzt in Jahrgang 6-8 markiert sein.
Leider erscheint die Abfrage zweimal - woran liegt das?

Ich füge mal den entsprechenden Code hier ein und den Report als Anhang an:

Code: Alles auswählen

var
  folgestufe, folgeklasse: string;
  versetz_txt, versetz_krz_txt: string;
  versetzt: boolean;
  nv223254:integer;    //0=nicht versetzt, 1=versett §22,3, 2=geht über §25,4
  
begin

  nv223254 := 0;        
  Text := '';
  if Lernabschnitte['Abschnitt'] = ES_AnzAb
  then begin
    folgeklasse := Lernabschnitte ['Folgeklasse'];
    folgestufe := ofN(Copy(folgeklasse, 1, 2));
    Delete (folgeklasse, 1, 2);
    versetz_krz_txt := Lernabschnitte ['VersetzungKrz'];
    versetzt := (versetz_krz_txt = 'V') or (versetz_krz_txt = 'VV');
    versetz_txt := ' versetzt.';
    if versetz_krz_txt = 'VV'
    then begin
      folgestufe := IntToStr(StrToInt(folgestufe) + 1);
      folgeklasse := ''
    end;
   
    if Lernabschnitte ['ASDJahrgang'] = '05'
    then begin
      if versetzt
      then versetz_txt := Schueler['Vorname'] + ' geht in die Klasse ' + folgestufe + ' über.'              //+ folgeklasse, wenn man auch a,b,c angeben möchte
      else versetz_txt := Schueler['Vorname'] + ' geht nicht in die Klasse ' + folgestufe + ' über.';
    end
    else if Lernabschnitte['ASDJahrgang'] = '09'
    then begin
      if versetzt 
      then begin
        if (Pos('10A', Lernabschnitte['Abschluss']) > 0)
        then versetz_txt := Schueler['Vorname'] + ' wird in Klasse 10, Typ A,' +  versetz_txt
        else versetz_txt := Schueler['Vorname'] + ' wird in Klasse 10, Typ B,' +  versetz_txt; 
      end  
      else versetz_txt := Schueler['Vorname'] + ' wird nicht in die Klasse 10' + versetz_txt;
    end
    else begin
      if versetzt
      then versetz_txt := Schueler['Vorname'] + ' wird in die Klasse ' + folgestufe + versetz_txt               //+ folgeklasse 
      else begin
        nv223254 := SelectOption(Schueler['Vorname'] + ' ist ...', 
                           'nicht versetzt;'
                           + 'versetzt nach §22(3) APO-SI (pädagogisch);'
                           + 'geht über nach §25(4) APO-SI (2 Wiederholungen);', ';');
        if nv223254 = 0 then versetz_txt := Schueler['Vorname'] + ' wird nicht in die Klasse ' + folgestufe + versetz_txt;
        if nv223254 = 1 then versetz_txt := Schueler['Vorname'] + ' wird nach § 22 (3) APO – SI in die Klasse ' + folgestufe + ' versetzt. ';
        if nv223254 = 2 then versetz_txt := Schueler['Vorname'] + ' nimmt nach § 25 (4) APO – SI am Unterricht der Klasse ' + folgestufe + ' teil. ';
      end;
  end;
end;
Text := versetz_txt; 
end;
Danke für die Hilfe, um die doppelte Erscheinung los zu werden.
Hängt dies mit einem "single pass / double pass" in einem bestimmten Feld zusammen?

Grüße
Micha Kurosinski
Kurosinski
Beiträge: 945
Registriert: Sonntag 19. Mai 2019, 19:53
Schulform: Gesamtschule

Re: Beschluss der Zeugniskonferenz: Versetzt gemäß §22,3 bzw. "geht über" gemäß 25,4

Beitrag von Kurosinski »

Ich habe meine Abfrage noch einmal überarbeitet und bin nun recht zufrieden mit der Lösung
(, auch wenn sie leider nicht ganz objektorientiert im entsprechenden Feld berechnet bzw. abgefragt wird):

Im Subreport Versetzung -> before print
habe ich die Abfrage eingefügt:

Code: Alles auswählen

var
  versetz_krz_txt : string;
  versetzt : boolean;

begin
    //nicht versetzt, §22,3 oder §25,4:
  versetzt:= true;
  versetz_krz_txt := Lernabschnitte ['VersetzungKrz'];
  versetzt := (versetz_krz_txt = 'V') or (versetz_krz_txt = 'VV');

  if versetzt = false then begin
    nv223254 := SelectOption(Schueler['Vorname'] + ' ist ...', 
                           'nicht versetzt;'
                           + 'versetzt nach §22(3) APO-SI (pädagogisch);'
                           + 'geht über nach §25(4) APO-SI (2 Wiederholungen);', ';');
  end;
end;
DIe notwendige Variabele bei den Deklarationen -> Variablen ergänzt

Code: Alles auswählen

  nv223254: integer;  //0=nicht versetzt, 1=versetzt §22,3, 2=geht über §25,4
Dieser Teil bleibt bzw. wird am Ende bei La_Versetzung ergänzt/geändert
(dort wo der Beschluss der Klassenkonferenz erscheint)

Code: Alles auswählen

    else begin
      if versetzt
      then versetz_txt := Schueler['Vorname'] + ' wird in die Klasse ' + folgestufe + versetz_txt               //+ folgeklasse 
      else begin

// Abfrage Optionsfeld im Bereich Detail dieses Subreports 
        if nv223254 = 0 then versetz_txt := Schueler['Vorname'] + ' wird nicht in die Klasse ' + folgestufe + versetz_txt;
        if nv223254 = 1 then versetz_txt := Schueler['Vorname'] + ' wird nach § 22 (3) APO – SI in die Klasse ' + folgestufe + ' versetzt. ';
        if nv223254 = 2 then versetz_txt := Schueler['Vorname'] + ' nimmt nach § 25 (4) APO – SI am Unterricht der Klasse ' + folgestufe + ' teil. ';
      end;
Grüße
Micha Kurosinski
Antworten