GetTimeTableText (Opus Funktion)
Beschreibung
Gibt einen Stundenplan im RTF Format unter Berücksichtigung der Einstellungen zurück. Es ist auch möglich, über eine Callback Funktion den Inhalt der Zellen zu steuern.
Argumente
Name | Typ | Beschreibung | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
TableType | integer |
je eins und dann zusammenrechnen Weitere Optionen: 0x200 (512): Gleiche Klassengruppen zusammenfassen 0x400 (1024): Gleiche Lehrer zusammenfassen 0x800 (2048): Gleiche Räume zusammenfassen 0x1000 (4096) RTF Texte für Anhang generieren (Siehe Argumente MarksList1, MarksList2, SubjectTable, SubjectList) 0x2000 (8192) Totale Lektionenzahl hinzufügen 0x4000 (16384): Lektionenzahl ausgeben (nur Lehrerplan) 0x8000 (32768): Raumplan als kleine Tabelle ausgeben (nur Raumplan) 0x20000 (131072): Nur die reine Tabelle ausgeben (alle Pläne) 0x40000 (262144): Callback Funktion für die Zellentexte verwenden. Dazu muss der Parameter CallbackFunction angegeben werden. 0x80000: Lektionen an Feiertagen sollen ausgeschlossen werden | ||||||||||||||||||||||
DatasetID | [integer] | TeacherID / ClassGroupID / RoomID / AddressRoleID / LessonID oder Array der entsprechenden IDs | ||||||||||||||||||||||
PlanningPeriodID | integer | PlanningPeriodID | ||||||||||||||||||||||
PrintableTable | integer | PrintableTable (0/1) 0 = schneller | ||||||||||||||||||||||
SeminarCenterID | integer | ID des Standortes | ||||||||||||||||||||||
ShowTeacherAvailability | integer | 1 = nicht verfügbare Lektionen werden grau hinterlegt. | ||||||||||||||||||||||
TeacherFlag | integer | Nur bei Wochenplan relevant 0 = nur Lehrerkürzel wird ausgegeben 1 = der volle Name der Lehrpersonen wird ausgegeben | ||||||||||||||||||||||
SubjectFlag | integer | Nur bei Wochenplan relevant 0 = nur der Fachname wird ausgegeben 1 = Fachname und Beschreibung wird ausgegeben | ||||||||||||||||||||||
SkipEmptyColumns | integer | (optional) (0/1) 1 = Leere Spalten im Stundenplan werden nicht ausgegeben | ||||||||||||||||||||||
DayIDList | [integer] | (optional) Liste von DayID, die maximal ausgegeben werden sollen. Ist das Array leer oder wird es weggelassen, dann werden alle Wochentage berücksichtigt. | ||||||||||||||||||||||
CallbackFunction | string | (optional) Name einer Callback Funktion, mit welcher der Zellentext bestimmt werden kann. Diese Funktion sollte im Minimum folgendermassen aussehen, wobei der Funktionsname beliebig sein kann: function TimeTableCallback(CellText, LessonID, LessonDate) { // Hier den CellText setzen oder verändern. return (CellText); }; Wird diese Funktion fehlerhaft definiert oder gibt sie einen falschen Datentyp zurück, wird der generierte Text verwendet. Die Argumente sind:
| ||||||||||||||||||||||
MarksList1 | &string | (optional) Zurügegebener RTF String mit einer zeilenweisen Liste von Datenserien, die verwendet wurden (mit Datumsangaben auf die Woche bezogen) | ||||||||||||||||||||||
MarksList2 | &string | (optional) Zurügegebener RTF String mit einer zeilenweisen Liste von Datenserien, die verwendet wurden (mit Datumsangaben auf den Tag bezogen) | ||||||||||||||||||||||
SubjectsTable | &string | (optional) Zurügegebener RTF String mit einer Tabelle der Fächer und Lehrpersonen, die verwendet wurden | ||||||||||||||||||||||
SubjectsList | &string | (optional) Zurügegebener RTF String mit einer zeilenweisen Liste der Fächer und Lehrpersonen, die verwendet wurden |
Rückgabewert  string
RTF String des Stundenplans
Beispiel
Result = GetTimeTableText(1+32+0x20000+0x40000, ID, GetSSB_Class_i_SSE_PlanningPeriodIDEntry( GetSSB_ClassGroup_i_SSB_ClassIDEntry(ID)), 1, 0, 0, 0, 0, 0, [1,2,3,4,5], "TableText"); |
---|
Callback Funktion:
function TableText(CellText, LessonID, LessonDate) {  Lo_ClassSubject = GetSSB_ClassSubjectObject(GetSSB_Lesson_i_SSB_ClassSubjectIDEntry(LessonID));  CellText = "\\fs16 " + "{\\b "+GetSSB_LessonType_s_PrefixEntry(Lo_ClassSubject.i_SSB_TypeID) + GetSSB_Subject_s_NameEntry(Lo_ClassSubject.i_SSB_SubjectID) + GetSSB_LessonType_s_SuffixEntry(Lo_ClassSubject.i_SSB_TypeID) +  "}\\par{\\i " +  GetSSB_Teacher_s_ShortEntry(Lo_ClassSubject.i_SSB_TeacherID) + "}\\~{\\i " +  GetSSB_Room_s_NameEntry(GetSSB_Lesson_i_SSB_RoomIDEntry(LessonID)) + "}";  // Hier den CellText setzen oder verändern.  CellText = StrReplace(CellText,"\\b (","(");  return (CellText); }; |
---|
Siehe auch
---