Seite 1 von 2

Altersangabe zu einem bestimmten Stichtag in einer Schild-Tabelle

Verfasst: Montag 27. Januar 2020, 06:15
von Christophorus
Hallo,

Die Bezirksregierung möchte eine Tabelle, in der u.a. das Alter von bestimmten Schüler*innen zum Stichtag 01.08.2019 aufgeführt ist. In Schild lässt sich das Alter für den gegenwärtigen Zeitpunkt abrufen. Anhand des Filters 2, der ja auch Programmierfunktionen enthält, ist es vielleicht möglich eine Routine einzuarbeiten, durch die das Alter durch Geburtsdatum und Bestimmungsdatum (z.B. 01.08.2019) ermittelt wird.

Ist das möglich und könnten Sie mir diesbezüglich behilflich sein ?

Die Datei habe ich angehängt

Mit freundlichen Grüßen


Dr. Burkhard Schwier

Re: Altersangabe zu einem bestimmten Stichtag in einer Schild-Tabelle

Verfasst: Montag 27. Januar 2020, 14:30
von Alexander Dedy
Als Quick & Dirty Lösung kann ich Ihnen anbieten:
Die gewünschten SuS in eine Exceltabelle exportieren (inkl. Geburtsdatum) und dann die Spalte mit dem gewünschten Stichtag füllen oder alternativ direkt in der Formel einfügen.
Bildschirmfoto 2020-01-27 um 14.26.28.png
Bildschirmfoto 2020-01-27 um 14.26.28.png (24.28 KiB) 1806 mal betrachtet

Re: Altersangabe zu einem bestimmten Stichtag in einer Schild-Tabelle

Verfasst: Montag 27. Januar 2020, 16:56
von wschrewe
Christophorus hat geschrieben: Montag 27. Januar 2020, 06:15ist es vielleicht möglich eine Routine einzuarbeiten, durch die das Alter durch Geburtsdatum und Bestimmungsdatum (z.B. 01.08.2019) ermittelt wird.
Das einfachste Verfahren dürfte sein,
  • Über den Gruppenprozess "Individualdaten ändern" bei allen Schülern die Volljährigkeit zurückzusetzen
  • die Systemzeit auf den gewünschten Stichttag zu stellen
  • dann die automatischen Prozesse zu starten (die u.a. Volljährigkeit überprüfen)
  • mit Filter 1 auf Volljährigkeit zu filtern
  • die Liste zu drucken
  • nach dem Druck die Systemzeit wieder zurück zu stellen
  • Die Gruppenprozesse erneut durchlaufen zu lassen

Re: Altersangabe zu einem bestimmten Stichtag in einer Schild-Tabelle

Verfasst: Montag 27. Januar 2020, 17:13
von Pfotenhauer
Hallo Walter.

Gibt es in der Reporting keine Möglichkeit Gebdatum - Stichtagdatum in Jahren auszugeben?
Ich habe es auch nicht gefunden, hatte aber gehofft, du wüsstest etwas, aber dann scheint es ja nicht zu gehen....

Re: Altersangabe zu einem bestimmten Stichtag in einer Schild-Tabelle

Verfasst: Montag 27. Januar 2020, 20:20
von W.Maßmann
Hallo Herr Schrewe, hallo Frank,
diese Programmierung liefert eine Jahreszahl:

procedure Label1OnPrint;
var
Jahr_1, Monat_1, Tag_1, Jahr_2, Monat_2, Tag_2 : Integer;
begin
DecodeDate(Schueler['Geburtsdatum'], Jahr_1, Monat_1, Tag_1);
DecodeDate(currentdate, Jahr_2, Monat_2, Tag_2);
Label1.text:=inttostr(Jahr_2-Jahr_1);
end;

Bisher ist es mir aber nicht gelungen, currentdate durch eine Variable mittels Pickdatum oder direkt durch das Stichtagsdatum zu ersetzen - ohne dass eine Fehlermeldung kommt.

Re: Altersangabe zu einem bestimmten Stichtag in einer Schild-Tabelle

Verfasst: Montag 27. Januar 2020, 20:25
von A.Löser
Der Report im Anhang liefert für die Schüler das Alter zu einem beliebigen Stichtag.
Liegt versehentlich der Stichtag vor dem Geburtstag, dann wird 999 ausgegeben.

Re: Altersangabe zu einem bestimmten Stichtag in einer Schild-Tabelle

Verfasst: Montag 27. Januar 2020, 20:34
von W.Maßmann
Dank des Reports von Herrn Löser weiß ich jetzt, was fehlte: Stichtag:=strToDate(StTag);

Re: Altersangabe zu einem bestimmten Stichtag in einer Schild-Tabelle

Verfasst: Montag 27. Januar 2020, 21:46
von A.Löser
Hallo Herr Maßmann,
Ihr oben geposteter Programmcode (Label1.text:=inttostr(Jahr_2-Jahr_1);) liefert aber nur die Differenz der Jahreszahlen von Geburtsdatum und Stichtag.
Beispiel:
Geburtstag Stichtag Alter
12.09.2010 13.09.2020 9
12.09.2010 11.09.2020 10

Die Jahresdifferenz ist in beiden Fällen 10.

Re: Altersangabe zu einem bestimmten Stichtag in einer Schild-Tabelle

Verfasst: Montag 27. Januar 2020, 22:50
von W.Maßmann
Hallo Herr Löser,
das stimmt natürlich. Mein Augenmerk galt zunächst noch den Fehlermeldungen.

Re: Altersangabe zu einem bestimmten Stichtag in einer Schild-Tabelle

Verfasst: Montag 27. Januar 2020, 23:46
von W.Maßmann
Hallo Herr Löser,
in der function Alter sollte m.E. in Zeile 10 stehen: ... if STag>=GTag then inc(Alter);