Reportbaukasten: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
(51 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
[[Image:RepBau01.jpg|rechts]] | |||
Der Reportbaukasten soll Usern dabei behilflich sein, eigene Formulare nach einem Vorbild für bestimmte Zwecke erstellen zu können. | |||
Die Formulare können in einem ZIP-Archiv hier herunter geladen werden. '''[[File:Report-Baukasten.zip]]''' | |||
Zeile 29: | Zeile 28: | ||
Zeile 49: | Zeile 41: | ||
[[Image:RepBau05.jpg|links]]Subreport = Unterbericht, hier können Datenfelder aus Schild | [[Image:RepBau05.jpg|links]]Subreport = Unterbericht, hier können Datenfelder aus Schild wiedergegeben werden, die u.U. mehrere Datensätze enthalten | ||
Zeile 60: | Zeile 52: | ||
[[Image:RepBau08.jpg|links]]DBImage = Bild aus der Datenbank, rechte Maustaste auf den | [[Image:RepBau08.jpg|links]]DBImage = Bild aus der Datenbank, rechte Maustaste auf den Rahmen öffnet ein Kontextmenü (existiert auch ohne DB) | ||
Zeile 81: | Zeile 73: | ||
zur Verfügung und können Programmierungen enthalten | zur Verfügung und können Programmierungen enthalten | ||
Das am häufigsten genutzte Ereignis ist sicherlich ReportBeforePrint mit dem man etwas vor dem Druck ablaufen lassen kann. | Das am häufigsten genutzte Ereignis ist sicherlich ReportBeforePrint, mit dem man etwas vor dem Druck ablaufen lassen kann. | ||
Beim Einfügen von Funktionen und Proceduren | Beim Einfügen von Funktionen und Proceduren sollte man sich die vorhandenen Ereignisse in anderen Reports einmal ansehen. | ||
Zeile 95: | Zeile 87: | ||
[[Image:RepBau12.jpg|links|200px]] | [[Image:RepBau12.jpg|links|200px]] | ||
Funktionen = Programmteile, die ohne bestimmtes Ereignis jederzeit im | Funktionen = Programmteile, die ohne bestimmtes Ereignis jederzeit im Prozedurenteil des Programms aufgerufen werden können | ||
Zeile 102: | Zeile 94: | ||
---- | ---- | ||
= Beispiel 1: 01_Stammblatt.rtm = | = Beispiel 1: 01_Stammblatt.rtm = | ||
Das Stammblatt dient als Beispiel für einige Elemente, die häufig im Zusammenhang mit Individualdaten verwendet werden. | Das Stammblatt dient als Beispiel für einige Elemente, die häufig im Zusammenhang mit Individualdaten verwendet werden. | ||
'''Barcode:''' | '''Barcode:'''[[Image:RepBau13.jpg|rechts|200px]] | ||
So befindet sich im Kopf links oben das Element DBBarCode1, welchem das Datenfeld für den Schülernamen zugewiesen ist. | So befindet sich im Kopf links oben das Element DBBarCode1, welchem das Datenfeld für den Schülernamen zugewiesen ist. | ||
Weitere Einstellungen zu diesem Element finden Sie, wenn Sie mit der rechten Maustaste darauf klicken und dann ''Konfigurieren'' wählen. | Weitere Einstellungen zu diesem Element finden Sie, wenn Sie mit der rechten Maustaste darauf klicken und dann ''Konfigurieren'' wählen. | ||
Zeile 118: | Zeile 113: | ||
'''Schülerfoto:''' | '''Schülerfoto:'''[[Image:RepBau14.jpg|rechts|200px]] | ||
Das Element ''DBImage1'' bedient sich aus der Datenquelle ''SchuelerFotos'' und zeigt dort das Datenfeld Foto an. Wenn ein Bild beim Schüler in der Datenbank hinterlegt ist, dann wird dieses nun auf dem Stammblatt angezeigt. Auch hier stehen wieder einige Auswahlmöglichkeiten zur Verfügung, wenn man das Element mit der rechten Maustaste anklickt. | Das Element ''DBImage1'' bedient sich aus der Datenquelle ''SchuelerFotos'' und zeigt dort das Datenfeld Foto an. Wenn ein Bild beim Schüler in der Datenbank hinterlegt ist, dann wird dieses nun auf dem Stammblatt angezeigt. Auch hier stehen wieder einige Auswahlmöglichkeiten zur Verfügung, wenn man das Element mit der rechten Maustaste anklickt. | ||
Eine häufige Fehlermeldung bei Bildern aus der Datenbank lautet „''Ungültige Grafik''“. | Eine häufige Fehlermeldung bei Bildern aus der Datenbank lautet „''Ungültige Grafik''“. | ||
Zeile 132: | Zeile 127: | ||
Die Erziehernamen setzen sich oft aus Anrede, Titel, Vorname und Nachname zusammen, so dass das Zusammenrücken der Elemente notwendig ist, wenn man keine unnötigen Leerstellen haben möchte.[[Image:]] | Die Erziehernamen setzen sich oft aus Anrede, Titel, Vorname und Nachname zusammen, so dass das Zusammenrücken der Elemente notwendig ist, wenn man keine unnötigen Leerstellen haben möchte. | ||
[[Image:RepBau15.jpg|Center|600px]] | |||
Dies ist im ''Label6'' realisiert. Beim Ereignis ''OnGetText'' werden dem Text des Labels einfach die geforderten Datenelemente samt Leerzeichen zugewiesen. | Dies ist im ''Label6'' realisiert. Beim Ereignis ''OnGetText'' werden dem Text des Labels einfach die geforderten Datenelemente samt Leerzeichen zugewiesen. | ||
Zeile 138: | Zeile 135: | ||
Das Gleiche ist im Subreport Telefone hinterlegt, auch dort ist eine automatische Anpassung an die Länge wünschenswert, da Telefonnummern ja sehr unterschiedlich lang sein können. | Das Gleiche ist im Subreport Telefone hinterlegt, auch dort ist eine automatische Anpassung an die Länge wünschenswert, da Telefonnummern ja sehr unterschiedlich lang sein können. | ||
Hierbei ist noch zu berücksichtigen, dass der Subreport ''SchuelerTelefone'' eine besondere Seiteneinrichtung hat. Wenn Sie den Subreport im Berichtsbaum markieren und dann im Menü ''Datei --> Seite einrichten ...'' auswählen, sehen Sie die zugrunde liegenden Seiteneinstellungen. | |||
[[Datei:Reportbaukasten-02.png|400px]] | |||
Die vier definierten Spalten werden von links nach rechts durchlaufen. | |||
'''Schülerlaufbahn''' | '''Schülerlaufbahn''' | ||
Auf diesem Stammblatt soll eine Übersicht aller Abschnitte gedruckt werden, die der Schüler an der Schule durchlaufen hat. Dazu reicht ein Subreport mit der Datenquelle ''SchuelerLaufbahn'', der im ''ReportBeforePrint'' Ereignis mit dem Befehl ''SetUebersicht(True);'' initialisiert wird. Im Ereignis ''ReportAfterPrint'' wird diese Setzung dann mit ''SetUebersicht(False)'' | [[Image:RepBau16.jpg|rechts|150px]] | ||
Auf diesem Stammblatt soll eine Übersicht aller Abschnitte gedruckt werden, die der Schüler an der Schule durchlaufen hat. Dazu reicht ein Subreport mit der Datenquelle ''SchuelerLaufbahn'', der im ''ReportBeforePrint'' Ereignis mit dem Befehl ''SetUebersicht(True);'' initialisiert wird. Im Ereignis ''ReportAfterPrint'' wird diese Setzung dann mit ''SetUebersicht(False);'' wieder zurückgesetzt. | |||
[[Image:RepBau17.jpg|rechts|150px]] | |||
Die Berechnungen für das ''DBText5''-Label sollen ein Beispiel geben, wie man in Abhängigkeit von den in der Datenbank hinterlegten Bezeichnungen auch eigene Texte generieren kann. So ist der Versetzungsvermerk hier nur als Kürzel hinterlegt, kann aber mit Hilfe einer kleinen Programmierung auch in Textform auf dem Report ausgegeben werden. | |||
Zeile 155: | Zeile 164: | ||
Dabei steht LS für ''letzte Schule'' und ZS für ''zukünftige Schule''. Alle Datenfelder, die mit diesen Präfixen beginnen, gehören hier dazu. | Dabei steht LS für ''letzte Schule'' und ZS für ''zukünftige Schule''. Alle Datenfelder, die mit diesen Präfixen beginnen, gehören hier dazu. | ||
---- | |||
[[#top|Zum Seitenanfang]] | |||
[[Reporting|Zurück zu Reporting]] | |||
= Beispiel 2: 02_Input_Laufzeit.rtm = | = Beispiel 2: 02_Input_Laufzeit.rtm = | ||
Dieses Formular soll eine kurze Einführung in die Möglichkeit der Dateneingabe zur Laufzeit des Reports bieten. | |||
[[Image:RepBau18.jpg|rechts|300px]] | |||
Dieses Formular soll eine kurze Einführung in die Möglichkeit der Dateneingabe zur Laufzeit des Reports bieten. | |||
Dies findet im Ereignis ''ReportBeforePrint'' statt. | Dies findet im Ereignis ''ReportBeforePrint'' statt. | ||
Die Funktionen sind alle auch | Die Funktionen sind alle auch im WIKI beschrieben. | ||
[ | '''[[RAP-Funktionen]]''' | ||
Zeile 169: | Zeile 189: | ||
In diesem Formular werden erstmalig Variablen benötigt, in die die Inhalte aus den Abfragen eingelesen werden. Diese Variablen müssen vor der Nutzung global deklariert werden, wenn sie in allen Prozeduren und Ereignissen zur Verfügung stehen sollen. Sehen Sie sich dazu bitte den Bereich Deklarationen in „Global“ an. Dieses Menü erreichen Sie, wenn Sie mit der rechten Maustaste in den Bereich der linken oberen Ecke klicken. [[Image:]] | [[Image:RepBau19.jpg|rechts|200px]] | ||
In diesem Formular werden erstmalig Variablen benötigt, in die die Inhalte aus den Abfragen eingelesen werden. Diese Variablen müssen vor der Nutzung global deklariert werden, wenn sie in allen Prozeduren und Ereignissen zur Verfügung stehen sollen. Sehen Sie sich dazu bitte den Bereich Deklarationen in „Global“ an. Dieses Menü erreichen Sie, wenn Sie mit der rechten Maustaste in den Bereich der linken oberen Ecke klicken. | |||
[[Image:RepBau20.jpg|rechts|200px]] | |||
Die Inhalte der Variablen werden den Labels dann „einfach“ zugewiesen. Bitte sehen Sie dazu in die jeweiligen ''OnGetText''-Ereignisse der jeweiligen Labels. | |||
Zeile 178: | Zeile 204: | ||
Bestimmte Ersetzungen sind damit aber nicht möglich, dazu können feste Platzhalter, wie hier im Beispiel $Schuljahr$, verwendet werden. | Bestimmte Ersetzungen sind damit aber nicht möglich, dazu können feste Platzhalter, wie hier im Beispiel $Schuljahr$, verwendet werden. | ||
[[Image:RepBau21.jpg|rechts|200px]] | |||
Dort wird der Platzhalter dann durch eine entsprechende Programmierung im ''OnPrint''-Ereignis des ''Richtext1'' ersetzt. | |||
---- | |||
[[#top|Zum Seitenanfang]] | |||
[[Reporting|Zurück zu Reporting]] | |||
= Beispiel 3: 03_Lehrerdaten.rtm = | = Beispiel 3: 03_Lehrerdaten.rtm = | ||
[[Image:RepBau22.jpg|rechts|300px]] | |||
Prinzipiell bedient sich dieser Report aus der Datenquelle Lehrer. Alle Stamminformationen zu den Lehrkräften sind hier enthalten. | Prinzipiell bedient sich dieser Report aus der Datenquelle Lehrer. Alle Stamminformationen zu den Lehrkräften sind hier enthalten. | ||
Damit zu Beginn des Reports eine Auswahlliste der zu druckenden Lehrer erscheint, ist im Ereignis ''BeforeOpenDataPipelines'' der Befehl ''LehrerAuswaehlen(True)'' hinterlegt. Der Auswahlmodus wird im ''AfterPrint''-Ereignis wieder zurückgesetzt. Werden diese Befehle nicht gesetzt, werden immer alle Lehrerdaten in die Datenquelle gefüllt. | Damit zu Beginn des Reports eine Auswahlliste der zu druckenden Lehrer erscheint, ist im Ereignis ''BeforeOpenDataPipelines'' der Befehl ''LehrerAuswaehlen(True)'' hinterlegt. Der Auswahlmodus wird im ''AfterPrint''-Ereignis wieder zurückgesetzt. Werden diese Befehle nicht gesetzt, werden immer alle Lehrerdaten in die Datenquelle gefüllt. | ||
Zeile 198: | Zeile 240: | ||
Das ist der Grund dafür, dass im Report ein Unterbericht mit der Datenquelle ''LehrerAktuellerAbschnitt'' eingefügt ist, weil die ''LehrerFunktionen'' sonst u.U. nicht gefüllt werden. | Das ist der Grund dafür, dass im Report ein Unterbericht mit der Datenquelle ''LehrerAktuellerAbschnitt'' eingefügt ist, weil die ''LehrerFunktionen'' sonst u.U. nicht gefüllt werden. | ||
[[Image:]] | [[Image:RepBau23.jpg|links]] | ||
Eine Übersicht über die Abhängigkeit der Datenquellen finden Sie in der Reportverwaltung, wenn Sie auf das rote Fragezeichensymbol klicken. | |||
[[Image:RepBau24.jpg|center]] | |||
---- | |||
[[#top|Zum Seitenanfang]] | |||
[[Reporting|Zurück zu Reporting]] | |||
= Beispiel 4: 04_Konferenz.rtm = | = Beispiel 4: 04_Konferenz.rtm = | ||
Dieser Report soll eine Übersichtsliste z.B. für Konferenzen bieten, die alle Schüler einer Klasse / eines Jahrgangs mit ihren Fächern auflistet. Der Report druckt lediglich den aktuellen Abschnitt. | |||
[[Image:RepBau25.jpg|rechts|400px]] | |||
Dieser Report soll eine Übersichtsliste z.B. für Konferenzen bieten, die alle Schüler einer Klasse / eines Jahrgangs mit ihren Fächern auflistet. Der Report druckt lediglich den aktuellen Abschnitt. | |||
Zeile 211: | Zeile 266: | ||
[[Image:RepBau26.jpg|rechts|400px]] | |||
Der Subreport ''FachUebersichtHeader'' erzeugt eine Kopfzeile für die Übersichtsliste, die alle bei der ausgewählten Schülermenge enthaltenen Fächer in der Sortierungsreihenfolge auflistet. Aus diesem Grund ist es auch sinnvoll, vor dem Druck klassenweise oder jahrgangsweise zu filtern, da alle auftretenden Fächer sonst in den Header wandern. | Der Subreport ''FachUebersichtHeader'' erzeugt eine Kopfzeile für die Übersichtsliste, die alle bei der ausgewählten Schülermenge enthaltenen Fächer in der Sortierungsreihenfolge auflistet. Aus diesem Grund ist es auch sinnvoll, vor dem Druck klassenweise oder jahrgangsweise zu filtern, da alle auftretenden Fächer sonst in den Header wandern. | ||
Im Ereignis ''BeforePrint'' benötigen die beiden Datenquellen den Aufruf '''''Faechervorbelegen''''' und im ''AfterPrint ''Ereignis den Befehl '''''ResetFaechervorbelegen'''''. | |||
Im Ereignis ''BeforePrint'' benötigen die beiden Datenquellen den Aufruf '''''Faechervorbelegen''''' und im ''AfterPrint ''Ereignis den Befehl '''''ResetFaechervorbelegen'''''. | |||
Mit diesen Befehlen werden die Erzeugung des Notenheaders und die Einsortierung der fachspezifischen Daten in die Übersicht erzeugt. | Mit diesen Befehlen werden die Erzeugung des Notenheaders und die Einsortierung der fachspezifischen Daten in die Übersicht erzeugt. | ||
Der Bericht enthält zwei Gruppierungen. Die Gruppe[0]:Klasse erzeugt eine neue Seite, wenn die Klasse des Schülers wechselt. Die Gruppe[1]:ID sorgt dafür, dass die einzelnen Schülerdaten auf einer Seite zusammengehalten werden. | |||
---- | |||
[[#top|Zum Seitenanfang]] | |||
[[Reporting|Zurück zu Reporting]] | |||
= Beispiel 5: 05_Konferenz.rtm = | = Beispiel 5: 05_Konferenz.rtm = | ||
[[Image:RepBau27.jpg|rechts|400px]] | |||
Dieser Report druckt eine Leistungsübersicht der ausgewählten Schülermenge für den aktuellen Lernabschnitt. Dieses Mal wird aber in jeder Schülerzeile eine eigene Kopfzeile für die Fächer erzeugt, die dieser Schüler hat. | Dieser Report druckt eine Leistungsübersicht der ausgewählten Schülermenge für den aktuellen Lernabschnitt. Dieses Mal wird aber in jeder Schülerzeile eine eigene Kopfzeile für die Fächer erzeugt, die dieser Schüler hat. | ||
Dazu wird die Datenquelle Lernabschnitte verwendet, die ohne weitere Programmierung den aktuellen Abschnitt des Schülers liefert. | Dazu wird die Datenquelle Lernabschnitte verwendet, die ohne weitere Programmierung den aktuellen Abschnitt des Schülers liefert. | ||
[[Image:RepBau28.jpg|rechts|300px]] | |||
In diesem Subreport befindet sich dann ein Unterbericht mit der Datenquelle ''SchuelerLeistungen'', der die Leistungsdaten liefert. | In diesem Subreport befindet sich dann ein Unterbericht mit der Datenquelle ''SchuelerLeistungen'', der die Leistungsdaten liefert. | ||
Unter Berechnungen findet sich lediglich eine Ersetzung für das Label1, das den aktuellen Abschnitt ausgeben soll. | Unter Berechnungen findet sich lediglich eine Ersetzung für das Label1, das den aktuellen Abschnitt ausgeben soll. | ||
Hier wird die Funktion ''SchuljahrToStr'' verwendet, die eingeführt wurde, um komplizierte Abfragen zum aktuellen Abschnitt zu vereinfachen. | Hier wird die Funktion ''SchuljahrToStr'' verwendet, die eingeführt wurde, um komplizierte Abfragen zum aktuellen Abschnitt zu vereinfachen. | ||
Zeile 237: | Zeile 306: | ||
Die Gruppe[0]: ID sorgt im Bericht lediglich dafür, dass ein Schülerdatensatz auf einer Seite zusammengehalten wird. | |||
---- | |||
[[#top|Zum Seitenanfang]] | |||
[[Reporting|Zurück zu Reporting]] | |||
= Beispiel 6: 06_Laufbahnuebersicht.rtm = | = Beispiel 6: 06_Laufbahnuebersicht.rtm = | ||
[[Image:RepBau30.jpg|rechts|300px]] | |||
Dieser Report druckt zu jedem Schüler die gesamte in Schild-NRW hinterlegte Laufbahn mit allen Abschnitten. | Dieser Report druckt zu jedem Schüler die gesamte in Schild-NRW hinterlegte Laufbahn mit allen Abschnitten. | ||
Dazu werden die Datenquellen ''Leistungsuebersicht'' (zur Erzeugung des Headers) und ''Schuelerlaufbahn'' verwendet. | Dazu werden die Datenquellen ''Leistungsuebersicht'' (zur Erzeugung des Headers) und ''Schuelerlaufbahn'' verwendet. | ||
Zeile 248: | Zeile 330: | ||
Damit der Report die Kopfzeile für die Fächer und die Laufbahn über alle Abschnitte erzeugen kann, benötigt er im ''BeforePrint''-Ereignis den Aufruf ''SetUebersicht(True)''. | Damit der Report die Kopfzeile für die Fächer und die Laufbahn über alle Abschnitte erzeugen kann, benötigt er im ''BeforePrint''-Ereignis den Aufruf ''SetUebersicht(True)''. | ||
[[Image:RepBau31.jpg|rechts|200px]] | |||
Dies wird dann im ''AfterPrint''-Ereignis mit ''SetUebersicht(False)'' wieder aufgehoben. | Dies wird dann im ''AfterPrint''-Ereignis mit ''SetUebersicht(False)'' wieder aufgehoben. | ||
Die Gruppe[0]: ID dient lediglich dazu, dass die Schüler auf einer Seite zusammengehalten werden. Außerdem ist in allen Subreports darauf geachtet worden, dass die Seitenränder auf Null stehen, damit möglichst wenig Verschiebungen stattfinden. | |||
---- | |||
[[#top|Zum Seitenanfang]] | |||
[[Reporting|Zurück zu Reporting]] | |||
= Beispiel 7: 07_Laufbahnuebersicht.rtm = | = Beispiel 7: 07_Laufbahnuebersicht.rtm = | ||
Dieser Bericht ist lediglich eine Abwandlung von Beispiel | [[Image:RepBau32.jpg|rechts|300px]] | ||
Dieser Bericht ist lediglich eine Abwandlung von Beispiel 6, in dem einige Ergänzungen gemacht wurden. | |||
Der Report soll nur bestimmte, aufeinander folgende Abschnitte einer Schülerlaufbahn drucken. Hier in diesem Beispiel von EF bis Q1. | Der Report soll nur bestimmte, aufeinander folgende Abschnitte einer Schülerlaufbahn drucken. Hier in diesem Beispiel von EF bis Q1. | ||
Zeile 270: | Zeile 366: | ||
Zusätzlich wird aber im ''ReportBeforePrint'' Ereignis der Übersichtsmodus geändert. | Zusätzlich wird aber im ''ReportBeforePrint'' Ereignis der Übersichtsmodus geändert. | ||
Wie im Screenshot zu sehen, wird dort auf die Kursart umgestellt, da der Übersichtsmodus standardmäßig auf „NurFach“ steht und dann gleiche Fächer nicht nach Kursarten unterschieden werden und in die gleiche Spalte einsortiert werden. | [[Image:RepBau33.jpg|rechts|300px]] | ||
Wie im Screenshot zu sehen, wird dort auf die Kursart umgestellt, da der Übersichtsmodus standardmäßig auf „NurFach“ steht und dann gleiche Fächer nicht nach Kursarten unterschieden werden und in die gleiche Spalte einsortiert werden. | |||
Dies wird im ''AfterPrint ''Ereignis zusammen mit ''FilterLaufbahnJahrgangASD(“)'' wieder zurückgesetzt. | Dies wird im ''AfterPrint ''Ereignis zusammen mit ''FilterLaufbahnJahrgangASD(“)'' wieder zurückgesetzt. | ||
Zeile 277: | Zeile 374: | ||
Zusätzlich wurde in ''OnGetText'' des ''DBText4''-Labels eine Abfrage eingebaut, die bei den Notenpunkten 0 bis 4 eine gelbe Farbe in das Element Shape1 setzt. | Zusätzlich wurde in ''OnGetText'' des ''DBText4''-Labels eine Abfrage eingebaut, die bei den Notenpunkten 0 bis 4 eine gelbe Farbe in das Element Shape1 setzt. | ||
---- | |||
[[#top|Zum Seitenanfang]] | |||
[[Reporting|Zurück zu Reporting]] | |||
= Beispiel 8: 08_Zeugnisbemerkungen_AUE_ASV.rtm = | = Beispiel 8: 08_Zeugnisbemerkungen_AUE_ASV.rtm = | ||
Die Felder für die Bemerkungen auf den Zeugnissen wurden vor einigen Versionen in der Datenbank in Memo-Felder umgewandelt. Das bedeutet, dass dort nun nur noch die eigentlichen Texte ohne jegliche Formatierung in der Datenbank liegen. | Die Felder für die Bemerkungen auf den Zeugnissen wurden vor einigen Versionen in der Datenbank in Memo-Felder umgewandelt. Das bedeutet, dass dort nun nur noch die eigentlichen Texte ohne jegliche Formatierung in der Datenbank liegen. | ||
[[Image:]] | [[Image:RepBau34.jpg|rechts|300px]] | ||
Früher waren dort Richttextinformationen mit Textformatierungen enthalten, weswegen u.U. manche Zeugnisbemerkungen in einer anderen Schrift erscheinen konnten. | Früher waren dort Richttextinformationen mit Textformatierungen enthalten, weswegen u.U. manche Zeugnisbemerkungen in einer anderen Schrift erscheinen konnten. | ||
Zeile 295: | Zeile 400: | ||
Diese Unterberichte könnten so z.B. auch auf einer Konferenzliste eingefügt werden, um die eingetragenen Daten zu kontrollieren. | Diese Unterberichte könnten so z.B. auch auf einer Konferenzliste eingefügt werden, um die eingetragenen Daten zu kontrollieren. | ||
---- | |||
[[#top|Zum Seitenanfang]] | |||
[[Reporting|Zurück zu Reporting]] | |||
= Beispiel 9: 09_Zuweisungen.rtm = | = Beispiel 9: 09_Zuweisungen.rtm = | ||
Dieser Report soll kurz ein Beispiel für die Verwendung der an den Gesamtschulen benötigten Zuweisungen zu den Kursarten der Folgeschuljahre geben. | Dieser Report soll kurz ein Beispiel für die Verwendung der an den Gesamtschulen benötigten Zuweisungen zu den Kursarten der Folgeschuljahre geben. | ||
Diese werden an Gesamtschulen auf Zeugnissen und Übersichten benötigt. | Diese werden an Gesamtschulen auf Zeugnissen und Übersichten benötigt. | ||
---- | |||
[[#top|Zum Seitenanfang]] | |||
[[Reporting|Zurück zu Reporting]] | |||
= Beispiel 10: 10_Zeugnis.rtm = | = Beispiel 10: 10_Zeugnis.rtm = | ||
Das Zeugnisformular soll alle Benutzer unterstützen, die eigene Zeugnisse für besonders spezielle Verhältnisse an ihren Schulen erzeugen wollen. | Das Zeugnisformular soll alle Benutzer unterstützen, die eigene Zeugnisse für besonders spezielle Verhältnisse an ihren Schulen erzeugen wollen. | ||
[[Image:RepBau35.jpg|rechts|300px]] | |||
Auch in diesem Formular wurden keine überflüssigen Programmierungen eingesetzt. | Auch in diesem Formular wurden keine überflüssigen Programmierungen eingesetzt. | ||
Zeile 311: | Zeile 433: | ||
Das Formular bedient sich aus den Datenquellen der Fächergruppen und der Lernabschnitte, damit das im Reportexplorer eingestellte Schuljahr gedruckt wird. | Das Formular bedient sich aus den Datenquellen der Fächergruppen und der Lernabschnitte, damit das im Reportexplorer eingestellte Schuljahr gedruckt wird. | ||
[[Image:RepBau36.jpg|rechts|300px]] | |||
Aus diesem Grund befindet sich im Ereignis ''ReportBeforeOpenDataPipelines'' auch der Befehl ''MitLernabschnitten(True).'' Dadurch wird das Befüllen der Fächergruppen-Quellen angestoßen. | Aus diesem Grund befindet sich im Ereignis ''ReportBeforeOpenDataPipelines'' auch der Befehl ''MitLernabschnitten(True).'' Dadurch wird das Befüllen der Fächergruppen-Quellen angestoßen. | ||
Zeile 318: | Zeile 440: | ||
In den Unterberichten der Fächergruppen werden einige Programmierungen vorgenommen, die je nach Fach oder nach Kursart die Detailbereiche unsichtbar schalten. Dies ist notwendig, wenn entweder Fächer in der Datenquelle vorkommen, die nicht gedruckt werden sollen (hier am Beispiel der Fremdsprachen E und F, die getrennt ausgewiesen werden), oder aber auch im Beispiel der weiteren Unterrichte, wo die Kursarten ZUV und KMFÖ in einer Datenquelle ankommen. | [[Image:RepBau37.jpg|rechts|300px]] | ||
In den Unterberichten der Fächergruppen werden einige Programmierungen vorgenommen, die je nach Fach oder nach Kursart die Detailbereiche unsichtbar schalten. Dies ist notwendig, wenn entweder Fächer in der Datenquelle vorkommen, die nicht gedruckt werden sollen (hier am Beispiel der Fremdsprachen E und F, die getrennt ausgewiesen werden), oder aber auch im Beispiel der weiteren Unterrichte, wo die Kursarten ZUV und KMFÖ in einer Datenquelle ankommen. | |||
Weitere Unterberichte zu anderen Fächergruppen, wie z.B. Naturwissenschaften oder Gesellschaftslehre, müssen für ergänzt werden, um die entsprechenden Fächer im Zeugnis auszudrucken. Die Fächergruppen der Berufskollegs beginnen mit BK. Dazu gehören beispielsweise die Fächergruppen BKBerufsuebergreifend, BKBerufsbezogen und BKDifferenzierung. | |||
Die Zeugnisbemerkungen sind nicht wie im Beispielreport_08 aufgebaut, hier können Sie sehen, dass die Angaben in der Datenquelle ''ASVSek_I'' enthalten sind. | |||
Die Zeugnisbemerkungen sind nicht wie im Beispielreport_08 aufgebaut, hier können Sie sehen, dass die Angaben in der Datenquelle ''ASVSek_I'' enthalten sind. | |||
Bitte beachten Sie, dass dieses im ''ReportBeforeOpenDatenPipellines'' Ereignis bisher nur den Befehl ''MitLernabschnitten(true)'' enthält. | Bitte beachten Sie, dass dieses im ''ReportBeforeOpenDatenPipellines'' Ereignis bisher nur den Befehl ''MitLernabschnitten(true)'' enthält. | ||
Für Zeugnisse oder Übersichten, die auf Abiturdaten, Sprachenfolge oder die Daten auf dem Karteireiter ZP10 zugreifen wollen, sind die Befehle ''SetAbitur(true)'' und ''SetBKAbschluss(true)'' notwendig! | Für Zeugnisse oder Übersichten, die auf Abiturdaten, Sprachenfolge oder die Daten auf dem Karteireiter ZP10 zugreifen wollen, sind die Befehle ''SetAbitur(true)'' und ''SetBKAbschluss(true)'' notwendig! | ||
(Der ZP10-Reiter hat an BKs den Namen ''BK-Abschluss''.) | (Der ZP10-Reiter hat an BKs den Namen ''BK-Abschluss''.) | ||
---- | |||
[[#top|Zum Seitenanfang]] | |||
[[Reporting|Zurück zu Reporting]] | |||
= Beispiel 11: 11_Laufbahnuebersicht_mit_QT.rtm = | |||
[[Datei:Reportbaukasten-03.png|rechts|300px]] | |||
Diese Laufbahnübersicht zeigt die Noten eines jeden Quartales (QT) an. Sie entspricht ansonsten der Laufbahnübersicht in Beispiel 7. | |||
Im Ereignis ''ReportBeforePrint'' wird dafür ''SetQuartalsnotenInUebersicht(true)'' gesetzt. | |||
---- | |||
[[#top|Zum Seitenanfang]] | |||
[[Reporting|Zurück zu Reporting]] |
Aktuelle Version vom 21. Juni 2021, 14:55 Uhr
Der Reportbaukasten soll Usern dabei behilflich sein, eigene Formulare nach einem Vorbild für bestimmte Zwecke erstellen zu können.
Die Formulare können in einem ZIP-Archiv hier herunter geladen werden. Datei:Report-Baukasten.zip
Dabei werden Themengruppen herausgesucht und einige Beispielreports erstellt. Diese Reports sind möglichst einfach gehalten und enthalten auch sehr wenig Layout-Elemente. Sie sollen lediglich als Beispiele für die gewünschte Funktion dienen.
Wenn Sie einen Report zur Bearbeitung geöffnet haben, dann öffnet sich die Ansicht des Reportdesigners. Üblicherweise befindet sich der Report dann im Entwurfsmodus.
Darüber befinden sich vier Karteireiter:
- Daten: Hier können Sie eigene Datenquellen mit Hilfe eines Assistenten zusammenstellen. In der Regel sollten Sie hier einige SQL-Kenntnisse mitbringen.
- Berechnungen: Unter diesem Karteireiter finden Sie alle Programmierungen, die sich im Report verbergen. Dies ist die Stelle, wo Sie mit einem Code zu bestimmten Zeitpunkten Berechnungen, Ersetzungen oder Ähnliches durchführen lassen können.
- Entwurf: Hier können Sie durch Drag&Drop die Elemente des Reports bestimmen und positionieren.
- Vorschau: Liefert die Voransicht des Reports.
Text = freies Textfeld (Label) ohne Datenhintergrund
Diese Labels können aber unter Berechnungen per Programm verändert werden.
DBText = Textfeld, das sich aus der Datenbank einen Wert holt
Dieser Wert wird über Datenquelle und Datenfeld gesteuert
Subreport = Unterbericht, hier können Datenfelder aus Schild wiedergegeben werden, die u.U. mehrere Datensätze enthalten
Richtext = hier können formatierte Texte eingebunden werden
(existiert auch als DBRichtext)
Memo = unformatierter mehrzeiliger Text
(existiert auch als DBMemo)
DBImage = Bild aus der Datenbank, rechte Maustaste auf den Rahmen öffnet ein Kontextmenü (existiert auch ohne DB)
Shapes = Formen die mit Linien und Farbe versehen werden können
(gut geeignet für Gitterstrukturen im PDF-Druck)
Systemvarialble = kann bestimmte Umgebungsvarialblen drucken
(Datum, Zeit, Seitenzahl, Reportname usw.)
Ereignisse = diese Ereignisse stehen im Reportdesigner unter Berechnungen
zur Verfügung und können Programmierungen enthalten
Das am häufigsten genutzte Ereignis ist sicherlich ReportBeforePrint, mit dem man etwas vor dem Druck ablaufen lassen kann.
Beim Einfügen von Funktionen und Proceduren sollte man sich die vorhandenen Ereignisse in anderen Reports einmal ansehen.
Funktionen = Programmteile, die ohne bestimmtes Ereignis jederzeit im Prozedurenteil des Programms aufgerufen werden können
Beispiel 1: 01_Stammblatt.rtm
Das Stammblatt dient als Beispiel für einige Elemente, die häufig im Zusammenhang mit Individualdaten verwendet werden.
Barcode:
So befindet sich im Kopf links oben das Element DBBarCode1, welchem das Datenfeld für den Schülernamen zugewiesen ist.
Weitere Einstellungen zu diesem Element finden Sie, wenn Sie mit der rechten Maustaste darauf klicken und dann Konfigurieren wählen.
Dort stehen Ihnen dann auch die Auswahl des Barcode-Typs und einige andere Einstellungen zur Verfügung.
Schülerfoto:
Das Element DBImage1 bedient sich aus der Datenquelle SchuelerFotos und zeigt dort das Datenfeld Foto an. Wenn ein Bild beim Schüler in der Datenbank hinterlegt ist, dann wird dieses nun auf dem Stammblatt angezeigt. Auch hier stehen wieder einige Auswahlmöglichkeiten zur Verfügung, wenn man das Element mit der rechten Maustaste anklickt.
Eine häufige Fehlermeldung bei Bildern aus der Datenbank lautet „Ungültige Grafik“.
Hier hilft die Einstellung Grafikart, die standardmäßig auf Autodetect steht.Grundsätzlich gilt der Tipp, dass Sie möglichst mit einem Grafikformat in der gesamten Datenbank arbeiten. JPG-Bilder verhalten sich in der Regel am unproblematischsten. Der Menüpunkt Dehnen kann dazu verwendet werden, das Bild an die Größe des vorgegebenen Rahmens anzupassen (vergrößern oder verkleinern).
Subreport Erzieherdaten
Die Angaben zu den Erziehungsberechtigten werden aus einem Subreport gedruckt, weil es hier unter Umständen vorkommen kann, dass ein Schüler dort mehrere Datensätze besitzt. Diese sollen natürlich alle untereinander auf das Stammblatt gedruckt werden. Dazu werden die Datenfelder in einen Unterbericht mit der Datenquelle Erzieher gelegt, der dann so lange durchlaufen wird, wie Datensätze vorhanden sind.
Die Erziehernamen setzen sich oft aus Anrede, Titel, Vorname und Nachname zusammen, so dass das Zusammenrücken der Elemente notwendig ist, wenn man keine unnötigen Leerstellen haben möchte.
Dies ist im Label6 realisiert. Beim Ereignis OnGetText werden dem Text des Labels einfach die geforderten Datenelemente samt Leerzeichen zugewiesen.
Das Gleiche ist im Subreport Telefone hinterlegt, auch dort ist eine automatische Anpassung an die Länge wünschenswert, da Telefonnummern ja sehr unterschiedlich lang sein können.
Hierbei ist noch zu berücksichtigen, dass der Subreport SchuelerTelefone eine besondere Seiteneinrichtung hat. Wenn Sie den Subreport im Berichtsbaum markieren und dann im Menü Datei --> Seite einrichten ... auswählen, sehen Sie die zugrunde liegenden Seiteneinstellungen.
Die vier definierten Spalten werden von links nach rechts durchlaufen.
Schülerlaufbahn
Auf diesem Stammblatt soll eine Übersicht aller Abschnitte gedruckt werden, die der Schüler an der Schule durchlaufen hat. Dazu reicht ein Subreport mit der Datenquelle SchuelerLaufbahn, der im ReportBeforePrint Ereignis mit dem Befehl SetUebersicht(True); initialisiert wird. Im Ereignis ReportAfterPrint wird diese Setzung dann mit SetUebersicht(False); wieder zurückgesetzt.
Die Berechnungen für das DBText5-Label sollen ein Beispiel geben, wie man in Abhängigkeit von den in der Datenbank hinterlegten Bezeichnungen auch eigene Texte generieren kann. So ist der Versetzungsvermerk hier nur als Kürzel hinterlegt, kann aber mit Hilfe einer kleinen Programmierung auch in Textform auf dem Report ausgegeben werden.
Schulbesuch
Die Datenfelder zur vorherigen Schule und zur aufnehmenden Schule können Sie aus dem Beispiel ersehen.
Dabei steht LS für letzte Schule und ZS für zukünftige Schule. Alle Datenfelder, die mit diesen Präfixen beginnen, gehören hier dazu.
Beispiel 2: 02_Input_Laufzeit.rtm
Dieses Formular soll eine kurze Einführung in die Möglichkeit der Dateneingabe zur Laufzeit des Reports bieten.
Dies findet im Ereignis ReportBeforePrint statt.
Die Funktionen sind alle auch im WIKI beschrieben.
Dort gibt es zahlreiche Funktionen, die dem Ersteller von Reports helfen sollen, bestimmte Dinge in der Reporting umzusetzen, die von der Programmierung nicht unterstützt werden oder nur sehr schwer umzusetzen sind.
In diesem Formular werden erstmalig Variablen benötigt, in die die Inhalte aus den Abfragen eingelesen werden. Diese Variablen müssen vor der Nutzung global deklariert werden, wenn sie in allen Prozeduren und Ereignissen zur Verfügung stehen sollen. Sehen Sie sich dazu bitte den Bereich Deklarationen in „Global“ an. Dieses Menü erreichen Sie, wenn Sie mit der rechten Maustaste in den Bereich der linken oberen Ecke klicken.
Die Inhalte der Variablen werden den Labels dann „einfach“ zugewiesen. Bitte sehen Sie dazu in die jeweiligen OnGetText-Ereignisse der jeweiligen Labels.
Im RichtText1 finden Sie ein Beispiel, wie Ersetzungen in größeren Textfeldern realisiert werden können. Öffnen Sie dazu das Richtextfeld mit der rechten Maustaste „Bearbeiten“. Setzen Sie den Haken bei Mail Merge. Jetzt können Sie durch Auswählen des Datenfeldes mit Add Field ein Datenbankfeld im Richtext hinzufügen.
Bestimmte Ersetzungen sind damit aber nicht möglich, dazu können feste Platzhalter, wie hier im Beispiel $Schuljahr$, verwendet werden.
Dort wird der Platzhalter dann durch eine entsprechende Programmierung im OnPrint-Ereignis des Richtext1 ersetzt.
Beispiel 3: 03_Lehrerdaten.rtm
Prinzipiell bedient sich dieser Report aus der Datenquelle Lehrer. Alle Stamminformationen zu den Lehrkräften sind hier enthalten.
Damit zu Beginn des Reports eine Auswahlliste der zu druckenden Lehrer erscheint, ist im Ereignis BeforeOpenDataPipelines der Befehl LehrerAuswaehlen(True) hinterlegt. Der Auswahlmodus wird im AfterPrint-Ereignis wieder zurückgesetzt. Werden diese Befehle nicht gesetzt, werden immer alle Lehrerdaten in die Datenquelle gefüllt.
Die Lehrämter, Lehrbefähigungen und Lehrerfunktionen werden in Subreports ausgegeben, da sich dort unter einem Lehrer mehrere Angaben befinden können. Die Lehrerfunktionen befinden sich auf dem Karteireiter „zeitabhängige Daten“ im Lehrerbereich von Schild-NRW.
Die Lehrbefähigungen werden als Unterdatenquelle der Lehrämter gefüllt.
Das ist der Grund dafür, dass im Report ein Unterbericht mit der Datenquelle LehrerAktuellerAbschnitt eingefügt ist, weil die LehrerFunktionen sonst u.U. nicht gefüllt werden.
Eine Übersicht über die Abhängigkeit der Datenquellen finden Sie in der Reportverwaltung, wenn Sie auf das rote Fragezeichensymbol klicken.
Beispiel 4: 04_Konferenz.rtm
Dieser Report soll eine Übersichtsliste z.B. für Konferenzen bieten, die alle Schüler einer Klasse / eines Jahrgangs mit ihren Fächern auflistet. Der Report druckt lediglich den aktuellen Abschnitt.
Dazu werden die Datenquellen FachUebersichtHeader und Fachuebersicht verwendet.
Der Subreport FachUebersichtHeader erzeugt eine Kopfzeile für die Übersichtsliste, die alle bei der ausgewählten Schülermenge enthaltenen Fächer in der Sortierungsreihenfolge auflistet. Aus diesem Grund ist es auch sinnvoll, vor dem Druck klassenweise oder jahrgangsweise zu filtern, da alle auftretenden Fächer sonst in den Header wandern.
Im Ereignis BeforePrint benötigen die beiden Datenquellen den Aufruf Faechervorbelegen und im AfterPrint Ereignis den Befehl ResetFaechervorbelegen.
Mit diesen Befehlen werden die Erzeugung des Notenheaders und die Einsortierung der fachspezifischen Daten in die Übersicht erzeugt.
Der Bericht enthält zwei Gruppierungen. Die Gruppe[0]:Klasse erzeugt eine neue Seite, wenn die Klasse des Schülers wechselt. Die Gruppe[1]:ID sorgt dafür, dass die einzelnen Schülerdaten auf einer Seite zusammengehalten werden.
Beispiel 5: 05_Konferenz.rtm
Dieser Report druckt eine Leistungsübersicht der ausgewählten Schülermenge für den aktuellen Lernabschnitt. Dieses Mal wird aber in jeder Schülerzeile eine eigene Kopfzeile für die Fächer erzeugt, die dieser Schüler hat.
Dazu wird die Datenquelle Lernabschnitte verwendet, die ohne weitere Programmierung den aktuellen Abschnitt des Schülers liefert.
In diesem Subreport befindet sich dann ein Unterbericht mit der Datenquelle SchuelerLeistungen, der die Leistungsdaten liefert.
Unter Berechnungen findet sich lediglich eine Ersetzung für das Label1, das den aktuellen Abschnitt ausgeben soll.
Hier wird die Funktion SchuljahrToStr verwendet, die eingeführt wurde, um komplizierte Abfragen zum aktuellen Abschnitt zu vereinfachen.
Dieser Report druckt auch zurückliegende Abschnitte, wenn dies im Report-Explorer vor dem Druckaufruf eingestellt wird!
Die Gruppe[0]: ID sorgt im Bericht lediglich dafür, dass ein Schülerdatensatz auf einer Seite zusammengehalten wird.
Beispiel 6: 06_Laufbahnuebersicht.rtm
Dieser Report druckt zu jedem Schüler die gesamte in Schild-NRW hinterlegte Laufbahn mit allen Abschnitten.
Dazu werden die Datenquellen Leistungsuebersicht (zur Erzeugung des Headers) und Schuelerlaufbahn verwendet.
Damit der Report die Kopfzeile für die Fächer und die Laufbahn über alle Abschnitte erzeugen kann, benötigt er im BeforePrint-Ereignis den Aufruf SetUebersicht(True).
Dies wird dann im AfterPrint-Ereignis mit SetUebersicht(False) wieder aufgehoben.
Die Gruppe[0]: ID dient lediglich dazu, dass die Schüler auf einer Seite zusammengehalten werden. Außerdem ist in allen Subreports darauf geachtet worden, dass die Seitenränder auf Null stehen, damit möglichst wenig Verschiebungen stattfinden.
Beispiel 7: 07_Laufbahnuebersicht.rtm
Dieser Bericht ist lediglich eine Abwandlung von Beispiel 6, in dem einige Ergänzungen gemacht wurden.
Der Report soll nur bestimmte, aufeinander folgende Abschnitte einer Schülerlaufbahn drucken. Hier in diesem Beispiel von EF bis Q1.
Dazu wird zusätzlich im Ereignis ReportOpenDataPipelines der Befehl FilterLaufbahnJahrgangASD(‘EF,Q1,Q2‘) aufgerufen.
Dass hier nicht ReportBeforePrint genommen wird, hat den Grund, dass u.U. dann der erste Schülerdatensatz nach dem Öffnen der Datenquelle erstellt wird und evtl. der Fachheader dann nicht korrekt ausgegeben wird.
Zusätzlich wird aber im ReportBeforePrint Ereignis der Übersichtsmodus geändert.
Wie im Screenshot zu sehen, wird dort auf die Kursart umgestellt, da der Übersichtsmodus standardmäßig auf „NurFach“ steht und dann gleiche Fächer nicht nach Kursarten unterschieden werden und in die gleiche Spalte einsortiert werden.
Dies wird im AfterPrint Ereignis zusammen mit FilterLaufbahnJahrgangASD(“) wieder zurückgesetzt.
Zusätzlich wurde in OnGetText des DBText4-Labels eine Abfrage eingebaut, die bei den Notenpunkten 0 bis 4 eine gelbe Farbe in das Element Shape1 setzt.
Beispiel 8: 08_Zeugnisbemerkungen_AUE_ASV.rtm
Die Felder für die Bemerkungen auf den Zeugnissen wurden vor einigen Versionen in der Datenbank in Memo-Felder umgewandelt. Das bedeutet, dass dort nun nur noch die eigentlichen Texte ohne jegliche Formatierung in der Datenbank liegen.
Früher waren dort Richttextinformationen mit Textformatierungen enthalten, weswegen u.U. manche Zeugnisbemerkungen in einer anderen Schrift erscheinen konnten.
Um an die Informationen der Bemerkungen zu gelangen, benötigen wir die Subreports zu Lernabschnitte sowie einen mit der Datenquelle SchuelerLaufbahnBem.
In diesen Subreports werden dann DBMemo-Felder mit den jeweiligen Angaben gefüllt. Die Abhängigkeiten können Sie wieder im Menü „Infos über Datenquellen“ ersehen.
Der Report gibt eine Übersicht über die Eintragungen des aktuellen Abschnittes.
Diese Unterberichte könnten so z.B. auch auf einer Konferenzliste eingefügt werden, um die eingetragenen Daten zu kontrollieren.
Beispiel 9: 09_Zuweisungen.rtm
Dieser Report soll kurz ein Beispiel für die Verwendung der an den Gesamtschulen benötigten Zuweisungen zu den Kursarten der Folgeschuljahre geben.
Diese werden an Gesamtschulen auf Zeugnissen und Übersichten benötigt.
Beispiel 10: 10_Zeugnis.rtm
Das Zeugnisformular soll alle Benutzer unterstützen, die eigene Zeugnisse für besonders spezielle Verhältnisse an ihren Schulen erzeugen wollen.
Auch in diesem Formular wurden keine überflüssigen Programmierungen eingesetzt.
Das Formular bedient sich aus den Datenquellen der Fächergruppen und der Lernabschnitte, damit das im Reportexplorer eingestellte Schuljahr gedruckt wird.
Aus diesem Grund befindet sich im Ereignis ReportBeforeOpenDataPipelines auch der Befehl MitLernabschnitten(True). Dadurch wird das Befüllen der Fächergruppen-Quellen angestoßen.
Das Schuljahr und die Klassenbezeichnung steuert die Datenquelle Lernabschnitte.
In den Unterberichten der Fächergruppen werden einige Programmierungen vorgenommen, die je nach Fach oder nach Kursart die Detailbereiche unsichtbar schalten. Dies ist notwendig, wenn entweder Fächer in der Datenquelle vorkommen, die nicht gedruckt werden sollen (hier am Beispiel der Fremdsprachen E und F, die getrennt ausgewiesen werden), oder aber auch im Beispiel der weiteren Unterrichte, wo die Kursarten ZUV und KMFÖ in einer Datenquelle ankommen.
Weitere Unterberichte zu anderen Fächergruppen, wie z.B. Naturwissenschaften oder Gesellschaftslehre, müssen für ergänzt werden, um die entsprechenden Fächer im Zeugnis auszudrucken. Die Fächergruppen der Berufskollegs beginnen mit BK. Dazu gehören beispielsweise die Fächergruppen BKBerufsuebergreifend, BKBerufsbezogen und BKDifferenzierung.
Die Zeugnisbemerkungen sind nicht wie im Beispielreport_08 aufgebaut, hier können Sie sehen, dass die Angaben in der Datenquelle ASVSek_I enthalten sind.
Bitte beachten Sie, dass dieses im ReportBeforeOpenDatenPipellines Ereignis bisher nur den Befehl MitLernabschnitten(true) enthält.
Für Zeugnisse oder Übersichten, die auf Abiturdaten, Sprachenfolge oder die Daten auf dem Karteireiter ZP10 zugreifen wollen, sind die Befehle SetAbitur(true) und SetBKAbschluss(true) notwendig!
(Der ZP10-Reiter hat an BKs den Namen BK-Abschluss.)
Beispiel 11: 11_Laufbahnuebersicht_mit_QT.rtm
Diese Laufbahnübersicht zeigt die Noten eines jeden Quartales (QT) an. Sie entspricht ansonsten der Laufbahnübersicht in Beispiel 7.
Im Ereignis ReportBeforePrint wird dafür SetQuartalsnotenInUebersicht(true) gesetzt.