1 Overview

Franzplan is a plain, very tiny solution for creating schedules for school use. The following pages are intended to support new users to become familiar with the application.

2 Setup

2.1 Installation

The Franzplan is available in different product versions. The appropriate installation steps depent on this version. The following explanation is based on version Franzplan-DT, which is running on a dedicated PC/MAC/LINUX-System. The software will be installed in a few steps.

2.1.1 Windows

2.1.1.1 Check browser configuration and correct them if necessary

It doesn’t matter wether the we work with Franzplan-WEB or using a local installation of Franzplan-DT, the user interface is always a standard-browser. Some browsers security configurations will block certain interactive content by default. This can lead in trouble if such content is needed for tha work. For example: Some menu items are not displayed in InternetExplorer if the security level is configured to ‘high’. The security level should be set to ‘standard’ than. Independent on it, there is recommended to use a modern browser which supports the current HTML standards, e.g. Mozilla Firefox or Chrome.

2.1.1.2 Check Java installation and correct them if necessary

The Franzplan needs ‘Java’ to run. Therefore, it must first be checked whether and which Java version is installed. For this please start the ‘Command prompt’ window, enter the command java -version and press Enter. The command contains spaces. The output looks like this if Java is installed:

c:\java -version
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)

The Java version must be at least 1.8 (e.g. “1.8.0_171”). in this case the job is done and the following steps can be skipped. Java have to be installed as soon as the version is lower than 1.8 or if the message is displayed:

"java" not recognized as an internal or external command.

There are two ways to install Java:

2.1.1.3 Setup of Franzplan-DT

There are also several methods for this.

Calling the installation programm

Simply download the file franzplan-DT-setup-<version>.jar from the page https://www.franzplan.de/produkte.html and start the installation by double-clicking on the file name in the Windows-Explorer. If that doesn’t work with a double click, the alternative method would be to start it from the command line using the command java -jar franzplan-DT-setup-<version>.jar.
The program guides you through the installation. The structure then looks something like this:

You can now pin the executable program to the taskbar if necessary. This is done simply with the right mouse button:

Finished!

Manually

Download the file franzplan_DT_<version>.zip. After you have downloaded the file to your PC, copy the contents of the ZIP file into the directory in which the Franzplan shall be executed. To do this, open the Explorer and right-click on the ZIP file and click on the Extract All ... menu item. In the following dialog click on Search ... and create a directory with New Folder in which the Franzplan should be installed, e.g. c:\Franzplan-DT.

Then click the Extract button. The files are now unpacked into the new directory.

The structure then looks like:

You can now pin the executable program to the taskbar if necessary. Again this is done simply with the right mouse button:

Finished!

2.1.1.4 Start program

Now the application can be started: Start program. A new [license information] (# license_manage) may be required. This can be requested at .

2.2 Update an existing version

2.2.1 Franzplan-DT

In order to be able to carry out an update on an already installed software, the application have to be stopped first. See also: Stop program.

It is also strongly recommended to perform a data backup, see Data backup

Now there is again the possibility to use the installation program or to proceed manually:

2.2.1.1 Update using installation program

Therefore download the newest version of franzplan-DT-setup-<version>.jar from website https://www.franzplan.de/produkte.html and start the installation process by double-clicking the file. Another method is starting the process out of the command line using command:

java -jar franzplan-DT-setup-<version>.jar

The program guides you through the installation process.

2.2.1.2 Update manually

In contrast to a new installation you don’t have to copy the entire contents of the zip file into the directory where the Franzplan shall be executed but, but certain files only:

  1. franzplan_DT_<version>.jar, e.g. franzplan_DT_1.2.21.jar
  2. Franzplan-DT.exe

After that you can start the program again: Start program.

2.3 Java

2.3.1 Installation of Oracle-Java

Therefore, the installation program for Java must be downloaded from the following page and executed: http://www.java.com

You have to decide whether the 32- or the 64-bit version of Java has to be installed. To find out, right-click on the Windows icon in the lower left corner and click on Type here to search. In the input field that appears, enter PC info and confirm withEnter. An information window opens. There the area System type exists. Here is the information you need, e.g.

64-Bit operating system, x64-based processor

After successful installation, the installation program says ’Java … successfully installed`. The Java version is checked again as previously done. The command line window may need to be closed and reopened.

2.3.2 Installation of OpenJDK

To do that the software is first downloaded from here:

http://jdk.java.net/

We decide for the packet ‘Windows / x64’ as ZIP format. After the download, the content of the ZIP file is copied into a directory on the PC,

e.g. c:\java

Then the program Java has to be included in the search path of Windows. This is done in the following steps:

  1. Open the Start Search, type in “env”
  2. Choose Edit the system environment variables
  3. Click Environment Variables button and find the PATH environment variable in the System Variables section, select it with the left mouse button
  4. Click on Edit
  5. In the Edit Environment Variable window, click New
  6. Specify the value for the PATH environment variable. Enter the directory where you unpacked the contents of the zip file and add the subdirectory bin, e.g. c:  java  bin
  7. Click OK.
  8. Close all remaining windows by clicking OK.
  9. Reopen the command prompt window and recheck the Java version with java -version

Now a java version should be displayed, e.g.

c:\Java>java -version
openjdk version "13" 2019-09-17
OpenJDK Runtime Environment (build 13+33)
OpenJDK 64-Bit Server VM (build 13+33, mixed mode, sharing)

2.4 Specifics Franzplan-DT

2.4.1 Start/Stop

2.4.1.1 Start program

Option 1 (preferred):
Double-click to franzplan_start.exe or click on the previously created shortcut in the start or task bar
Option 2:
Start out of the command line using command java -jar<archive-file>.jar, wobei ‘archive-file’ must be replaced with the name of the file with the file extension ‘.jar’, because it changes every time a new version of franzplan is available.
e.g. c:\franzplan\java -jar franzplan_1.2.6.jar

When the program starts, a console window opens, in which only logging output is written to. The window can be clicked in the background, but must not be closed, otherwise the program will be closed. After a successful start, the output looks something like this:

  ______                         _
 |  ____|                       | |
 | |__ _ __ __ _ _ __  _____ __ | | __ _ _ __
 |  __| '__/ _` | '_ \|_  / '_ \| |/ _` | '_ \
 | |  | | | (_| | | | |/ /| |_) | | (_| | | | |
 |_|  |_|  \__,_|_| |_/___| .__/|_|\__,_|_| |_|
                          |_|
  _© Peter Warncke 2019________________________
  _Version:_1.4.XX_____________________________

  _TRIAL

Application is started.
An Internetbrowser can be used for operating.
It is started automatic if default properties are taken.
If no browser window is started just put the following Url to the address field of your browser:

http://localhost:8080/SchulPlaner

Please do not close the console window as long as the application is running!
Enjoy!

In addition the Internet browser opens automatically conatining the graphical user interface. If the internet browser does not open automatically, start an internet browser and enter this link in the address bar: http://localhost:8080/SchulPlaner

Do not close the browser window as long the application is running! Closing the console window will stop the program immediately.

2.4.1.2 Stop program

2.4.2 Data backup

It is recommended to back up data from time to time. The Franzplan-DT can do this in the following ways:

2.4.2.1 Backup of the database in the web interface

This type of backup is intended for short-term purposes.

It is less suitable if the data should also be restored after a software update to newer versions of the Franzplan.

2.4.2.2 Backup of the complete database file

Therefore just copy the file franzplan-db.mv.db from the program directory of the Franzplan to a safe place. Following steps have to be performed if the database shall be restored later on:

  1. Stop the Franzplan Stop program
  2. Copy back the file which is saved earlierto the program directory.

2.5 Single Sign On

The Franzplan can use the credentials of other application servers to provide the login information, e.g. from IServ https://iserv.eu/. In this case, the user logs on to the corresponding application and the Franzplan accepts this information because he trusts it. From a technical point of view, the OAuth2 protocol is used for this. In this context, the Franzplan acts as a client. The external application server is both a resource server and an authorization server. ### IServ Now the configuration in hand of IServ (https://iserv.eu/) is described.
This requires configuration steps in IServ and in the Franzplan.

2.5.0.1 Configuration of Franzplan

The settings for SSO (Single Sign On) are made directly via configuration parameters. There are several ways to set these parameters. One way is to use the configuration file application.properties. This file can be found in the home directory of the installation.

Settings to register the clients

Parameter Description
spring.security.oauth2.client.registration.iserv.client-id An alphanumerical value which identifies the client.
It is assigned by IServ during configuration and must match with the correspondending entry in IServ.
spring.security.oauth2.client.registration.iserv.client-secret A secret, also assigned by IServ and have to match there.
spring.security.oauth2.client.registration.iserv.authorization-grant-type Grant type, fixed: authorization_code
spring.security.oauth2.client.registration.iserv.client-authentication-method Authentication methode, fixed: post
spring.security.oauth2.client.registration.iserv.redirect-uri Url for the redirect after successful authentication on IServ.
Example:
https://test.franzplan.net/SchulPlaner/login/oauth2/code/iserv
spring.security.oauth2.client.registration.iserv.scope List of rights which are set in IServ.
Example:
openid, profile, groups
spring.security.oauth2.client.registration.iserv.provider Name of the provider: iserv
spring.security.oauth2.client.registration.iserv.client-name Name of the client: iserv


Settings for the connection to the Ressource Server

Some settings for the connection to IServ depend on IServ installation and should be asked at the IServ erfragt werden administrator:

Parameter Example or fixed
spring.security.oauth2.client.provider.iserv.authorization-uri Example:
https://ggsmun.de/iserv/oauth/v2/auth
spring.security.oauth2.client.provider.iserv.token-uri Example:
https://ggsmun.de/iserv/oauth/v2/token
spring.security.oauth2.client.provider.iserv.user-info-uri Example:
https://ggsmun.de/iserv/public/oauth/userinfo
spring.security.oauth2.client.provider.iserv.jwk-set-uri Example:
https://ggsmun.de/iserv/public/jwk
spring.security.oauth2.client.provider.iserv.user-name-attribute fixed: preferred_username
spring.security.oauth2.client.provider.iserv.user-info-authentication-method fixed: header


Settings to control the Franzplan

Parameter Description
franzplan.oauth2.teacher If the user is known in IServ but not in Franzplan, the user data are taken out of IServ. But the user should have at least default rights in Franzplan to read the schedules.
Therefore, a default teacher is then assigned. The abbreviation can be set here.
Example : d.teacher
franzplan.oauth2.school Abbreviation of the school which should be taken as default school, if the user is known in IServ but not in Franzplan.
Example : GGSMUN
franzplan.oauth2.active Switches SSO on or off (true for on, false for off).
Fixed for SSO: true
franzplan.oauth2.id Die Id des SSO clientsThe id of the SSO-client: iserv
franzplan.oauth2.name Fiexed: family_name
franzplan.oauth2.givenName Fixed: given_name
franzplan.oauth2.logoutPage Web which is loaded after clicking the Logout Button in Franzplan.
Example: IServ website
https://ggsmun.de/iserv


The assignment to user roles in the Franzplan can be done via IServ groups. That enables the Franzplan to know which iServ groups correspond to the roles in the Franzplan. Therefore the following parameters are provided in the Franzplan configuration:

Parameter Description
franzplan.oauth2.role.schoolAdmin Group from IServ that is to be used to assign the role school administrator (SchulAdministrator).
franzplan.oauth2.role.teacher Group from IServ that is to be used to assign the role teacher (Lehrer).
franzplan.oauth2.role.schoolAssi Group from IServ that is to be used to assign the role school assistent (SchulAssisten)t.
franzplan.oauth2.role.student Group from IServ that is to be used to assign the role student (Schueler).
franzplan.oauth2.role.basisStudent Group from IServ that is to be used to assign the role basis student (BasisSchueler).

Example of settings in application.properties:

spring.security.oauth2.client.registration.iserv.client-id=XYZ
spring.security.oauth2.client.registration.iserv.client-secret=XYZ-12345
spring.security.oauth2.client.registration.iserv.authorization-grant-type=authorization_code
spring.security.oauth2.client.registration.iserv.client-authentication-method=post
spring.security.oauth2.client.registration.iserv.redirect-uri=http://localhost:8080/SchulPlaner/login/oauth2/code/iserv
spring.security.oauth2.client.registration.iserv.scope=openid, profile, email
spring.security.oauth2.client.registration.iserv.provider=iserv
spring.security.oauth2.client.registration.iserv.client-name=iserv

spring.security.oauth2.client.provider.iserv.authorization-uri=https://ggsmun.de/iserv/oauth/v2/auth
spring.security.oauth2.client.provider.iserv.token-uri=https://ggsmun.de/iserv/oauth/v2/token
spring.security.oauth2.client.provider.iserv.user-info-uri=https://ggsmun.de/iserv/public/oauth/userinfo
spring.security.oauth2.client.provider.iserv.jwk-set-uri=https://ggsmun.de/iserv/public/jwk
spring.security.oauth2.client.provider.iserv.user-name-attribute=preferred_username
spring.security.oauth2.client.provider.iserv.user-info-authentication-method=header

franzplan.oauth2.teacher=d.teacher
franzplan.oauth2.school=GGSMUN
franzplan.oauth2.active=true
franzplan.oauth2.id=iserv
franzplan.oauth2.name=family_name
franzplan.oauth2.givenName=given_name
franzplan.oauth2.logoutPage=https://ggsmun.de/iserv

2.5.0.2 Configuration entries in IServ

Administrator rights are required in IServ so thatto be able to carry out the configuration of Single Sign On (SSO). To do this, select the System menu item underAdministration and here again Single sign-on.
By clicking the + Add button, you can create a new entry for the Franzplan.
First enter a name for the entry, e.g. Franzplan.
Under Trustworthy, selectYes from the list.
The client ID and client secret are preassigned. Both entries must be adopted in the configuration from the Franzplan and each with the entries for spring.security.oauth2.client.registration.iserv.client-id and spring.security.oauth2.client.registration.iserv.client-secret have to match.
Example:

In section Restrictions click Permitted Grant-Types the checkbox for Authorization-Code
and
at Restrict scopes choose the checkbox for groups openid and profil.
Example:

And final in section Application add the redirect-Url. It corresponds to
http(s)://<Server-Address:Port>/SchulPlaner/login/oauth2/code/iserv.
where Server-Address and Port should be replaced by the appropriate values of the Franzplan configuration.
Example:

After confirm with Save the entry is created and ready for use.

2.5.1 Assigning roles with SSO

In Franzplan a user can own different roles. However, these roles can only be assigned if the users are known under the same user name both on the authentication server (e.g. IServ) and in the Franzplan.
As long as a user is successfully authenticated via SSO, but is not known in the Franzplan with the user name transmitted from the authentication server (e.g. IServ), the standard role is assigned and becomes BasisSchueler. Having this role the user may only read timetables for classes and years and in addition the corresponding SSO group must be configured for the class.

2.6 Language

The user interface of Franzplan is multilingual. English and German are currently supported.

There are the following rules when assigning the language:

  1. If the language in the browser is set to German, the interface appears in German.
  2. If the language in the browser is set to English, the interface appears in English.
  3. If the language of the browser is set to an unknown language, the interface appears in the standard language.

If the language has been changed in the browser, the browser usually has to be closed and restarted so that the change takes effect, depending on the browser used. The default language is assigned during installation. [Installationsprogramm]. In this case the language is taken which has been choosen during (#installation). It can be changed afterwards in the configuration file application.properties
by setting the parameter:

franzplan.locale=de

3 Initial setup of the database

If no database exists or the database has been deleted or renamed, the basic data for the school must be entered first. This is done via the Init button:

You will now be guided step by step through the initial setup to make the basic settings for the school. Such basic settings are e.g. school name, users, weekly schedule, teachers, years, subjects and classes. All data that you enter here can also be changed later. But they are necessary to be able to start wotrk with the Franzplan at all. The setup is done in the following steps:

3.1 Step 1: School

First the data for the school are entered. It should be noted here that the school abbreviation is a maximum of 10 characters long, contains no spaces. School is a key attribute and can only be changed later with great effort. The name of the school can be chosen freely and may be 256 characters long.

Then click on Next.

3.2 Step 2: Schedule

The schedule can be used to specify the days on which lessons are usually given and also the number of hours (maximum number per day).

To keep it simple, the standard setting can be adopted with Assign and everything can be changed afterwards.

Both are then confirmed with Next.

3.3 Step 3: Teacher

Every teacher who works with or looks into the Franzplan is a user with a user ID. Teachers in turn have teacher abbreviations, last names and first names. In this dialog here this information is entered for the teacher who creates the timetable. He has the role of “school administrator”.

After entering the information, click on Next again.

3.4 Step 4: User

To be able to work with the Franzplan, you have to log in with a user ID. While we entered the teacher in the previous step, the associated user is now configured. The user ID can correspond to the teacher code, but does not have to. In our example, the teacher Kalle Kulle has the teacher abbreviation Kul and the user IDKalle.Kulle. With this user ID he logs on to the Franzplan.
Importantz! The user ID is case sensitiv!
The user entered here automatically receives the role of school administrator. Users having this role can create and maintain the timetables, as well as do most of the other tasks that are required to create the timetables. This also includes creating subjects, classes, other teachers … In addition, another administrator is required who has additional rights. He has the user ID admin. This user ID cannot be changed here. He can carry out further maintenance work, e.g. Create backups, restore the database and also manage the license key. A password must also be assigned for the user admin. It should not be the same as the user’s password for the school administrator (i.e. the school planner).  

Then click on Next again.

3.5 Step 5: Years

At least one year must be created.

To do this, click on Add

and enters the years abbreviation and a description for the year, if necessary add also further years. This basic data can also be changed later.

Finally click on Next again.

3.6 Step 6: Summary

In the last step you can check the data again and confirm finally.

If everything is correct, click on Save school.
The school is set up now and you can get started by signing in:

4 Login

After successful Installation and initial setup you can start with the actual work. To do this, you first have to sign in on the Franzplan. The application can be reached via the homepage. Depending on whether it is a server-based variant or an installation of Franzplan on your own PC, Franzplan van be reached in different ways.

4.1 Browsers properties

Independend on whether you are working with Franzplan-WEB or the local installation Franzplan-DT, operation is always carried out via the browser. The security settings of certain browsers can lead to the blocking of certain interactive content, which however is necessary for the work. Z.B. ist bekannt, dass wenn der InternetExplorer die Sicherheitsstufe ‘hoch’ aktiviert hat, bestimmte Menüs nicht mehr dargestellt werden. In such case the security level should be set to Standard. In any case, it is recommended to use a more modern browser that supports the current HTML standards, e.g. Mozilla Firefox or Chrome.

4.2 Internet

The centrally hosted version of Franzpln (Franzplan-WEB) can be reached via the Internet using the URL https://www.franzplan.de. From here, the various options of the school planner are linked.

If the link to Franzplan (e.g. http://franzplan.de/SchulPlanerTest) is entered directly in the address line of the browser, the standard page appears:

To be able to use Franzplan, the user must authenticate himself there. To do this, he clicks the Login button. Usually you log in with your username and password. Each user have assigned a certain school. After registration, access to this school is granted. A user can have one or more roles.

4.3 Login via IServ

Depending on the installation, the Franzplan can use the credentials of IServ (https://iserv.eu/).
In this case, clicking the Login button will check whether the user is already logged in to IServ with the following options:

A logout in the Franzplan does not result in a logout in IServ. Usually the IServ page is loaded when you log out of the Franzplan. If you have registered in the Franzplan and are working in another tab in the IServ and logging off there, you can still continue working in the Franzplan, without having to log in again. After a certain period of time, however, this connection loses its validity and the Franzplan also jumps back to the registration page.

5 Basics

The following chapter provides information on the basic procedure for working with the Franzplan. After login, we will find the following menu items in the header:

5.1 Home

Link to the main page

5.2 Master data

Contains the submenus that are necessary to manage the data that are used as the basis for the lesson planning.

Specifically, these are:

Menu Item Explanation
Weekly schedule The times the timetable is based on are determined here.
School years/periods All plans relate to school years or periods.
Years The class levels or years are defined here.
Classes The classes themselves are managed here.
Subjects The classes themselves are managed here.
Teachers Every teacher must be known with an entry.
Rooms The rooms used for teaching must also be specified.
Couplings Subjects and classes can be taught together.
Students Students can also receive separate accesses and can therefore also be defined here.

5.3 Administration

The menu items for system administration and configuration are placed here.

Menu Item Explanation
Manage users The settings for the users are stored here. Password changes, for example, are possible here.
User settings Personal settings for color scheme and presentation.
System settings Settings for the configuration of the system behavior.

5.4 Planning

Alle Arbeiten, die zur Erstellung und Änderung des Stundenplans nötig sind, werden unter diesem Menüpunkt erledigt.

Menu Item Explanation
Timetable planning The timetable is changed / edited here.
Check timetable Here the current timetable can be checked with regard to the restrictions.
Timetable versions Different timetable versions can be managed. This makes it possible to create substitution plans and activate them if necessary. The actual timetable remains unchanged then.
Teachers allocation The teaching obligation is settled here.
Requirements Contains the menu items to set requirements for automatic planning.
Automatic planning The functions for the automatic creation of a timetable are included under this point.

5.5 Timetable view

Here are the different views of the finalized timetable with the following submenus:

Menu Item Explanation
View to years This view of the timetable is sorted by year.
Teachers view The current timetable is prepared here for each teacher and can be printed out.
Classes view The current timetable is shown here for each class and can be printed out.
Rooms view The current timetable is shown here for each room and can be printed out.


In addition to the information about the registered user, the school and the currently active timetable, the header also contains the following menu items

Help:
Link to the help pages
Logout:
Sign off the current user

There is also the option to change the version of the timetable: . However, the change here is only active until the end of the current session (session), i.e. until the logout or closing of the browser window. If the version is to be changed sustainably, this must be done via the menu [Versions] (#versions).

5.6 Subjects, Bars, Couplings

When planning the hours, a distinction is made between subjects, couplings and bars. The differences are clarified below.

5.6.1 Subjects

A subject is assigned to exactly one class in the timetable. One and the same subject can therefore be taught in several classes at the same time without conflict. A subject is identified by its abbreviation. A display name can also be assigned. Subjects with the same display name are displayed in the timetable together as one entry.

5.6.2 Couplings

The term ‘course’ is often used in lesson planning. Courses are subjects that are taught across classes. In other words, subjects are usually defined as courses if they are taught in several classes at the same time.
However, the term ‘course’ can also be found in other contexts. To be precise, the term ‘coupling’ is therefore used. A coupling is a combination of subjects that are taught in different classes at the same time. They are managed under a separate menu item: Manage couplings

5.6.3 Bars

Bars are a ‘simple’ way of presenting cross-class lessons in the timetable. Only the presentation of the timetable entries belonging to a bar is combined. Within a bar there is no check for colisions for teachers and rooms.

It is therefore recommended to use couplings whenever possible instead of using bars in the planning.

In the abbreviation, bars have to differ from a subject so that they can be represented in the timetable with their specifics and also do not cause any apparent conflicts in room planning and teacher assignment. It therefore makes sense to give a bar a unique name for each class level.
Example:

Ma
Abbreviation for the subject Mathematics; can be used for any class
Ma 8
Abbreviation for the 8th grade mathematics bar, in which several classes have lessons in the same rooms with the same teachers at the same time. The timetable check will not report an error to the teachers or rooms assigned to the Ma 8 bar, although the teachers / rooms are assigned to different classes at the same time. However, should such overlaps occur in subject Ma, this is a mistake for the timetable check and will be reported as error.

It makes sense for the subjects for meal or break supervision to be managed as a coupling, so that they are presented in a coherent, cross-class manner in the timetable.

Examples of subjects / bars:

Mathematics
Entries for a simple subject and a bar
Lunch
Entries for the definition of subjects for break supervision with time correction

There are bars in which teaching is carried out across all grades. In this case, a collision check should not result in an error. To do this, these bars must be marked as cross grades.

6 First steps

Before the timetable can be entered, the master data (weekly schedule, classes, subjects, rooms, graduation requirements …) must first be created. It takes time and should be done in a specific order to avoid overtime. The following explanations follow the recommended order.

6.1 Master data

First master data must be entered. The settings can be found under the menu item Master data:

6.1.1 School year/Period

Different timetables can exist for one school. These are differentiated as timetable versions or variants and these are in turn assigned to specific school years or periods. As soon as the school is initially set up, there is at least one school year / period. A weekly schedule version is also defined. First of all, you only have to check whether the start and end dates (from / to) are correct and correct them if necessary. In our example school, the school year starts on September 3, 2018 and ends on June 26, 2019:

6.1.2 Schedule (week)

The schedule for a school week forms the basis of the timetable. This must be created first. This can be done under the menu item Masterdata-Schedule. All hours or breaks with the respective times are listed here for each day. See Schedule (week)… An example of a schedule would look like this:

Hours 1 and 2 as well as hours 3 and 4 are marked as possible double hours and also marked as ‘high’ so that hard subjects are preferably taught there. Because the hour 6 was unlike, the machine will try to avoid placing the hours in this time when planning.

6.1.3 Years

The lessons in the Franzplan are organized on the basis of years or course levels. If there is no such structure in the respective school, at least a ‘pseudo’ year must be created. It can have any name. The school abbreviation is useful for such a ‘pseudo’ year. Years have also been created when the school is set up. More details can be found under Years. Usually there is nothing to configure here. An example:

6.1.4 Teachers

Ultimately, the master data of the teachers are also important for regular school operations. At least every user of the Franzplan must be assigned to a teacher. Explanations can be found here: Teacher. Initially, one teacher is set up for the school. All other teachers have to be added then.
Example:

6.1.5 Classes

The classes are entered under the menu item Masterdata-Classes. Classes are assigned to at least one year. Just like the initial schedule and the years, the classes have already been created, but can still be changed. Further explanations can be found under manage classes
Example:

In the example it can be seen that the school has three classes, because in class 1 three classes are taught. However, classes 2c, 3c and 4c do not exist. They are therefore deactivated so that they are not taken into account in the automatic lesson planning.

6.1.6 Subjects

Initially, a number of standard subjects are created. However, any additional subjects can also be defined. The administration is explained here: Manage Subjects.

6.1.7 Users

After the teachers have been defined, the users can also be entered. However, only your own user is required for planning. Please make sure that the users assign themselves a strong password. The password can be changed by the user at any time. Further information: Manage users….

6.1.8 Rooms

The definition of the rooms complete the picture. There are also no rooms initially. It is not absolutely necessary to define rooms from start. Often the classes have got there own rooms which are not used by any others. Further information is available at: Manage rooms.

6.1.9 Couplings

Lessons which are taught in cross-class or cross-year manner is combined in couplings. Further information: Manage Couplings

6.1.10 Students

Students only need to be maintained and managed in connection with learning development reports. Students are not required to create timetables.

6.2 Planning

Now you can start scheduling.

It must be decided whether it is sufficient to do the hourly planning by hand or whether the system should generate an automatic proposal. The further procedure depends on this:

  1. Manually
    Then you can start planning your lessons straight away.
  2. Automated
    Here you have to enter additional data as requirements for the machine.

7 Masterdata

7.1 Manage school years/periods

Different timetables can exist for a school, differentiated as timetable versions or variants and these are in turn assigned to specific school years or periods. The following hierarchy is used:

Timetable version
A specific timetable is available in a specific version or variant. You can switch between these versions at any time. The currently loaded version is edited. The header shows which version is loaded. A version or variant belongs to a specific school year or period.
school years/periods
One or more school years / periods can exist for one school. At least one timetable version is assigned to every school year or period. Rooms, classes, classes, subjects and teachers as well as the weekly schedules are assigned to the school years / periods. They can therefore be managed in such a way that changes (adding, removing) have no effect on the other school years / periods.

Changing a year or period is done implizitely by loading the version. Because a version is assigned to one year/period the change will happen automatically. The current school year or period is shown in the header:

All administrative activities / changes to rooms, classes, classes, subjects, teachers, weekly schedules refer to this school year.

By clicking the timetable version and thus the school year / period can be changed.

7.2 Manage weekly schedule

The timetable for the school is based on a weekly schedule. It can be created and changed by the school administrators. A school can work with multiple weekly schedules. For example, it may happen that the break and lesson times for the upper level are different from those for classes 5 to 10. For this reason, each weekly schedule entry has an abbreviation that is used to assign it to the relevant schedule. If it is necessary to work with different schedules (e.g. in schools with a separate upper level), additional boundary conditions must be observed. If more than one schedules are defined, each schedule is shown as a separate tab.

When defining the classes, the reference between the class and a specific weekly schedule is done via the abbreviation of the weekly schedule.

The table explains the attributes for the schedule:

Attribute Meaning
Sequence The order determines at which position in the timetable the respective entry should be taken into account. This is particularly important if different times for different grades have to be taken into account. In the simplest case, it is simply numbered from 1 for each day.
No The number of an entry appears in the printout of the timetable. It is part of the key for the unique identification of the entry.
Display number The identifier or display name that the entry should have in the timetables, e.g. Break 1', if not only the number of the entry should appear. | Type | Der Typ kann die Ausprägungen Stunde und Pause annehmen. Er erscheint ebenfalls im Ausdruck des Stundenplans und gehört zum Schlüssel für die eindeutige Identifikation des Eintrages. | Start | Defines the start time of the respective hour / break. The entry is made in the format <2-digit hour>: <2-digit minute>, example 06:25. | Ende | Defines the end time of the respective hour / break. The entry is made in the format <2-digit hour>: <2-digit minute>, example 07:10. | Placeholder | It may be necessary for certain entries to be listed in the schedule but not to appear in the schedule. This is particularly the case when working with multiple school schedules. Then such entries are marked as placeholders. Possible expressions for this areyesorno`.

Example for a schedule:

A priority can be assigned for each cell in the weekday column. This attribute is intended as a preparation for an optimization function, but is also used to indicate when the preferred hard subjects should be taught and also to show deviations from them. Hard subjects are marked with a flash in the timetable if they are scheduled in times that are not marked with the priority high or mandatory. Columns that only contain entries with Off are hidden in the timetables. To change the priority, the entries must be selected. To do this, click on them with the left mouse button and the CTRL key pressed. They are highlighted in color. A context menu opens with the right mouse button:

Possible priorities starting with the lowest:

Attribute Meaning
Off no lessons: there are no lessons. If this is entered in every line for a day of the week (e.g. Saturday), this day of the week is not shown in the timetable.
By default, Saturdays and Sundays are Off marked.
Unlike This teaching time should not be taken with ‘hard’ subjects.
Neutral This teaching time should not be taken with ‘hard’ subjects.
High This teaching time can be planned with ‘hard’ subjects.
Mandatory This teaching time can be planned with ‘hard’ subjects.

The symbol marks the entries that can be connected as double lessons. This marking can be made if both entries to be connected have been clicked while holding down the ‘CTRL’ key. Both entries that can be connected to each other are then highlighted in dark.

Either entire lines can be selected or individual cells in the columns for the days of the week. Depending on this, the menu items in the context menu (right mouse button) or the buttons from the header are active. Folding things are possible:  

Create new entry
Reload table
Delete marked entry
Copy selected entry
Change entry
Mark entry as double hour; This menu item is only active if both entries which shall be connected have been clicked while holding down the ‘CTRL’ key. Both entries that can be connected to each other are then marked in dark background color.
Example:
Unlink the existing connection as a double hour

7.2.1 Create a new entry

A schedule entry is clearly identified by the attributes day of the week, number, type and abbreviation. When creating an entry, make sure that a corresponding entry with the same attributes does not yet exist. Otherwise an error message is displayed. Entries are always accepted or overwritten for all the weekdays Monday to Friday.

7.2.2 Copy an entry

A marked entry can be used as a template and copied. The required attributes must then be adjusted. These entries are also always adopted or overwritten for all the weekdays Monday to Friday.

7.3 Manage years

The years are configured under this menu item. Each year is assigned to a specific weekly schedule. The following attributes are relevant:

Attribute Meaning
Abbreviation Short name of the year, e.g. 7, 8, 12 … The abbreviation is used to identify the year.
Description The description is just displayed on different places, but not used as identification.
Schule Abbreviation of the school
Weekly schedule abbreviation If it is a school that works with several weekly schedules, e.g. in schools with upper secondary level, the correct abbreviation must be selected here. See also Manage schedule
In most cases, however, this is not the case, i.e. there is exactly one weekly schedule for everyone and this column contains the standard schedule. Usually this is ‘SEK1’.
Additional information The additional information is a free text that is displayed below the timetable in the years view. This entry is optional.


The following activities can be carried out to manage the years:

Create new entry
Reload table
Delete marked entry
Change entry

7.4 Manage classes

The entries for the classes can be collected under this menu item. Each class is assigned to a year and a school year/period. The following attributes are relevant:

Attribute Meaning
Acronym Short name of the class, e.g. 7.1, 8.2, 12.4… Classes are identified via these acronym.
Year Each class is assigned to a year, the abbreviation of this year is shown here.
Year/period Assigned school year or period
Tutors List of tutors or class teachers assigned to this class.
These teachers are assigned by default as soon as a new schedule entry is created.
Room classroom
This room is assigned by default as soon as a new schedule entry is created.
Aktive Indicates whether the class is activated in the specified school year / period. This has an impact on lesson planning. Classes that are not activated getting not assigned lessons in the automatic lesson planning.
For example, a school can have assigned three classes per year by default. In some years, however, only two classes were set up. In this case, the superfluous classes will be deactivated in the years with fewer classes. So they are not planned.
SSO-group This attribute is only available if Single Sign On is possible and configured for the login.
Here the group is entered, whose users can access the timetables for the class or year.
Example with IServ:
A standard user is assigned to group class-1b in IServ. After login with IServ, he will be shown the class plan for class-1b and the class plan for year 1, because class 1b is assigned to this year in Franzplan.
All standard users who are not assigned to group class-1b in IServ cannot access neither the plan for year 1 nor the class plan of class 1b.


The following activities can be carried out to manage the classes:

Create new entry
Reload table
Delete marked entry
Change entry

7.5 Manage subjects

Subjects must already exist before they can be assigned to timetables. A teacher can only be entered in the timetable in connection with a subject. This means a subject must be defined even for supervision times ( e.g. a break, lunch time or at the beginning).
The following attributes are relevant:

Attribute Meaning
Acronym Short name of the subject, e.g. Ma, Deu, GL… The subject is identified using this acronym. If the subject is a bar, the abbreviation must be chosen that it differs from a ‘normal’ subject.
See also the explanations under Subjects, Bars, Couplings
Display name With this name the subject appears in the timetable if the change mode is not switched on. If the display name is empty, the abbreviation of the subject is displayed in the timetable. In the timetable for the individual teacher (teacher view, however, the abbreviation of the subject is listed always.
Description This column can include an additional description of the subject. It is only a comment and does not appear in the timetable view.
Bar This attributes indicates, whether it is a bar. The values Yes (bar) or No (no bar) can be assigned. The timetable entries belonging to a bar are displayed together.
There is no collision check for teachers and rooms within the bar. So the user must pay attention to this. An alternative to bars is the administration of timetable entries as coupling.
See also the explanations under Subjects, Bars, Couplings
Inter-year There are bars in which teaching is carried out across more than one year. In this case, a collision check should not result in an error. To do this, these bars must be marked accordingly. The values Yes (cross-year) or No can be assigned. This possibility is actually out of date. It is better to map cross-year classes with Couplings.
Hard Marks the ‘hard’ subjects. We call those subjects ‘hard’ that should be taught at preferred times in the weekly schedule. These times are marked with the corresponding priority in the weekly schedule. See also Manage weekly schedule
Color A color can be specified here with which the subject is to be highlighted in the timetable for better recognition. The color can be entered numerically or selected from the color palette. Colors can also be stored for teachers. As soon as a color is assigned for the subject, the color for the teachers is ignored in the presentation of the timetable.
Time correction Time correction compared to the actual timetable in minutes, see Time correction


The following activities can be carried out to manage the subjects:

Create new entry
Reload table
Delete marked entry
Change entry
Copy a marked entry
Delete a filter used in the header
Takeover entries from other school years/periods

7.6 Manage teachers

Teachers who are managed under this menu item are also mandatory for creating a timetable.
List of attributes:

Attribute Meaning
Acronym Teachers acronym. The teacher appears under this abbreviation in the timetable.
Name Surname
First name First name
Year Optionally, the teacher can be assigned to a year. The teacher can be filtered under this year. The assignment otherwise has implications for automatic lesson planning. Depending on the prioritization, lessons in the classes are preferably given to teachers from their own year.
School Acronym of the school
Color A color can be specified here, with which the teacher should be highlighted in the timetable for better recognition. The color can be entered numerically or selected from the color palette. Colors can also be stored for subjects. However, once a color is assigned to the subject, the color for the teacher is ignored in the presentation of the timetable. If several teachers are assigned to one class, several colors are displayed accordingly. This works up to a maximum of 10 teachers.
Example:  The color for the teacher is only used in the timetable for the year and in the planning view. The color of the teacher is irrelevant in the class, room and teacher plans.
Engagement This is the target value for the teacher’s planned weekly assignment. The entry is made in minutes or number of lessons. It depends on what settings have been made for the school. It is checked during accounting against the actual use according to the timetable and also evaluated / observed in the automatic planning.
Regular engagement This is specified by the school authority, For an IGS in Lower Saxony, for example 1,102.5 minutes. The value is stored for the school and only needs to be maintained by the teachers if it deviates from the standard value. E.g. it may be the case for trainee lawyers. If nothing is entered, i.e. 0 remains set, the school value is used.
Time correction Time correction compared to the regular engagement, see Time correction. This correction is initially calculated and shown based on the teaching obligation (engagement). For example, the teacher could start the school year with plus or minus hours. If this is the case the correction is needed and should be entered here. The result is listed in accounting in the column Corrected engagement.
Time correction for effort Time correction compared to the actual timetable, see Time correction. This correction is initially calculated based on the result of the accounting for the current assignment and is shown in accounting in the column Accounting corrected.
Subjects The optional list of assigned subjects has in the automatic planning. Depending on the prioritization, the teacher is preferably employed in the subjects specified.
Specialist teacher in This optional list of assigned years is taken into account when selecting the teachers in the automatic planning and for the suggestions for selecting teachers who are still free. Depending on the prioritization, the teacher is preferably assigned in the specified years.
From Operation from (date), Based on the from-to range, it is recognized whether a teacher is included in the account for the entire school year or only based on certain timetable versions. If the field is empty, the teacher will be considered for the entire period. This is particularly interresting in connection with teacher accounting if a teacher joins in half a year.
To Operation to (date), see `From’…


The following activities can be carried out to manage teachers:

Create new entry
Reload table
Delete marked entry
Change entry
Take over entries from other school years / periods
Take on teaching engagements from other school years / periods

7.6.1 Time correction

The times from the weekly schedule are used and summarized for the accounting of the teacher hours. The time taken into account may not correspond to the actual period from the timetable. This can be corrected by this time correction. For example, times can be credited to the teacher that are not included in the timetable.
There are two different correction values:

Example:
A teacher works in part time and has a regular engagment of 700 min per week. In the previous year, he was unable to take a few hours of replacement and therefore credited 90 minutes, which he had to work less this year. He gives 14 hours at all and 5 hours in sports. Because of the travel and clearing times, he will be credited with 25 minutes for this assignment.
Therefore the following entries are taken for the masterdata of this teacher:

Engagement: 700
Time correction: -90
Time correction for effort: +25


Result of the calculation:

Engagment Time correction Time correction for effort Engagement Corrected engagement Accounting corrected Difference
700.00 -90.00 25.00 630.00 610.00 655.00 45.00

7.7 Manage rooms

The rooms are configured under this menu item. A room can be assigned to one or more subjects. So far this is purely optional and is only for display.
The following attributes are available:

Attribute Meaning
Description The description of the room. The room appears in the timetable under this description.
School Abbreviation of the school, if there is sufficient authorization to see this column.
Subjects List of assigned subjects


The following activities can be carried out to manage the rooms:

Create new entry
Reload table
Delete marked entry
Change entry

7.8 Manage couplings

Lessons can be seen as coupling if they are taught cross-subject and/or cross-classes. Couplings are then assigned like subjects in the timetable with the advantage that a separate entry in the timetable does not have to be managed for each of these subjects or each class involved. The assignment of the teachers to the subjects contained in the coupling and in addition to rooms can be done when creating or changing the special timetable entries.

Example:

or in edit mode:

Here a coupling was defined for the subject of mathematics. Classes 1a, 1b and 1c are taught in parallel.
In addition, the teachers can already be assigned here. These are also adopted when the entry is entered in the timetable.
The following attributes are relevant:

Attribute Meaning
Acronym Abbreviation of the coupling, z.B. Ma 9 … The coupling is clearly identified via this abbreviation.
Display name Dieser Name erscheint im Ausdruck für den Stundenplan und in einigen Anzeigen.
Classes The list of classes that are taught together.
Subjects The list of subjects that are taught together.
Teachers The list of teachers for this lesson.
Color A color can be specified here, with which the coupling should be underlaid in the timetable for better recognition. The color can be entered numerically or selected from the color palette.
Time correction Time correction compared to the actual timetable in minutes, see Time correction.
Lessons The number of hours per week for this lesson.


The following activities can be carried out to manage the couplings:

Create new entry
Reload table
Delete marked entry
Deleting couplings only causes the couplings to be removed from the current school year / period. The associated subjects are not deleted.
Eintrag ändern
Delete a filter used in the header
Check couplings
Lists the inconsistent coupling entries: combinations of subject and class that occur in more than one coupling.
Export the view as a csv file
The file is downloaded and opened using Excel if the browser’s default settings are taken.

7.9 Manage students

Managing students is optional. They are not required for the planning but can have permissions to see the results.

8 Administration

All activities that are necessary for system administration are summarized under administration. The following data are affected:

Data type Description
School The basic data for schools are defined here (school abbreviation, schools name, …).
In the desktop version (Franzplan-DT) this is possible for exactly one school.
Users Here the users are set up with their user ID and the initial password.
User settings This point contains some settings for the current user.
System settings This point contains parameters that are valid system-wide.
Database The database can be backed up or restored from previously created backups.
License key Management of the license key.

8.1 Manage schools

This function is only available to users with the ‘Administrator’ role.

The basic data for the school are entered here.
There is only one school in the desktop version for the Franzplan available. Only the name of the school and the speed (maximum number of classes per year) can be changed here.
In addition, the basic values for teacher accounting can be entered:

8.2 Manage users

Under the menu item ‘Administration users’ it is regulated who can access the school with which role and therefore which data they can see and change.

You can also change the password here by marking the user’s data record and then clicking the button / menu item .

A user can have one or more roles. Known roles are:

Role Explanation
Lehrer (teacher) Users with this role can view and print timetables.
Users with this role can set a new password themselves.
SchulAssistent (school assistent) Holders of this role can view and print timetables.
However, users with this role cannot set a new password themselves. This role can be used if the teachers of a school should have read access to timetables, but the effort should be avoided to set up an individual user for each teacher for this purpose.
SchulAdministrator (school administrator) Owners of this role have the same rights as owners of the role Lehrer and can in addition also use the complete administration menu for their school:
Manage timetable
Manage classes
Manage subjects
Manage rooms
Manage teachers
Manage requirements
Check timetable
Schueler (student) Owners of this role can view and print out timetables for the classes and the timetables for years.
Users with this role can also set themselves a new password.
BasisSchueler (basic student) Holders of this role can view and print out timetables for the classes and the view to years.
However, users with this role cannot set a new password themselves. This role can be used when students in a school should have read access to timetables, but should avoid the hassle of setting up an individual user for each student.
Administrator This role does exist also in the version of Franzplan that runs on your own workstation (Franzplan-DT).
It includes extended rights for performing maintenance work, e.g. 
Creation of backups,
Restoring the database from previous backups,
managing the license key


List of attributes:

Attribute Meaning
User-id Die Benutzer-Id. Mit dieser Id meldet sich der Benutzer am Franzplan an, z.B. Markus.Specht. Groß- und Kleinschreibung wird unterschieden.
First name First name of the user
Name Surname of the user
Teachers acronym The short name of the teacher.
E-mail e-Mail address of the user (optional)
School The school is for information only, is predetermined.
Roles One or more roles, see above …


The following activities can be carried out to manage the classes:

Create new entry
Reload table
Delete marked entry
Change entry
Change password

8.3 User settings

Each user can make a few individual settings themselves and thus influence the presentation of the timetable on the website and in the Excel printout.

If no special settings are made, the standard settings are active. The following attributes can be set:

Attribute Meaning Standard
Border color between the days Sets the color of the border between the days of the week in the HTML view for the years. Black
Border width between the days Sets the width of the border between the days of the week in HTML view for the years in pixels. 1 px
Background color for breaks Sets the color of the cell background for breaks in the HTML view for the years. No difference to lessons
Background color for lessons Sets the color of the cell background for lessons in the HTML view for the years. White with slight shading between even and odd lines
Width of lesson columns Sets the width of the columns in the HTML view for the years in pixels. 40 px
Height of a row in vertical planning view Set the row height for the vertical view. 20 px
Excel background color for table header Sets the color for the background of the heading in Excel. Blue
Excel background color for lessons Sets the color for the background of the lesson rows white
Excel background color for coupplings Sets the color for the background of the coupling columns and cells No difference to breaks or hours
Excel background color for breaks Sets the color for the background of the rows containing breaks light green
Excel width for lesson columns Sets the width of the columns in the Excel view for the years in pixels. 30 px
Excel width of lesson columns in overall view Sets the width of the columns in the Excel overall view for the years in pixels. 30 px
Excel font size Sets the font size in Excel view. 14 px
Separate double lessons in Excel view Specifies whether the double hours should be separated in Excel view. Standard: no, i.e. are shown connected
Time interval for kiosk mode in years view [seconds] Time span in which a year is displayed if kiosk mode is set. After the time has elapsed, the next year is switched on. 60 seconds
Time interval for kiosk mode in classes view [seconds] Time span in which the timetable for a class is displayed if kiosk mode is set. After the time has elapsed, the system switches to the next class. 30 seconds
Appearance Appearance of the complete web interface Franzplan

8.4 System settings

The settings valid for each school are made here, which apply regardless of the user who is logged on. So far, these are the following parameters:

Attribute Meaning Standard
User for the kiosk mode User who is used when the timetable view starts in Kiosk mode with automatic login. In this mode there is no login with a password. Therefore, only users who have no rights other than the SchulAssistent role can be used here. The list contains all users who meet this criterion. The desired user must have been created beforehand. Empty
Address filter for kiosk mode If this parameter is set, automatic registration in kiosk mode is only possible if a connection is established from an IP address that corresponds to this filter. The information is given as a regular expression. Empty
Template for teachers accounting Here the template is stored the Word document for teacher accounting is based on. There are replacement patterns, see Replacement pattern for Word template empty
Current template for teachers accounting The current template for teacher accounting is displayed here. The current template can also be downloaded for further processing. After a change it has to be uploaded again. Empty

8.5 Manage database

This function is only available to users with the ‘Administrator’ role.

The data entered the timetable program by the timetable planner and used for timetable planning is stored in an internal database.
For the sake of simplicity, this can be thought of as a large file in which the data is stored in a structured manner and sorted in such a way that it can be quickly found and read in various contexts. So that these data, which have been painstakingly recorded by the time planner over time, can be saved against sudden incidents, there is the option of saving them separately. This is also called data backup. The data is written to a file. It makes sense to copy a backup to another, safe place. In an emergency (e.g. in the event of data loss), the data is then available for restoration (also known as ‘restore’).

8.5.1 Backup

To back up the database, simply click the ‘Execute’ button.
The system creates a new file with the backed up data in the ‘backup’ subdirectory and outputs the name of the newly created backup file on the user interface.

You can check this in the explorer. The output of the ‘backup’ directory contains all the backup file just created:

The recommendation is to copy this file and save it in a protected location (secured network drive or similar) that can be accessed in the event of a necessary recovery.

8.5.2 Restore

There are two ways to restore from previous backups.

8.5.2.1 Load directly from the backup directory

If the desired backup from which the database is to be restored is still in the backup directory of the Franzplan, it can be selected here from the list of available backups and loaded with the Execute button.

8.5.2.2 Upload a backup

Alternatively, a file can be uploaded that was previously saved. To do this, the file is selected and uploaded with Upload.

8.6 Manage license


This function is only available to users with the ‘Administrator’ role. By default, this is the user called admin, which is created when the database is initialized.

When delivered, Franzplan is provided with a test license, which must be replaced with a valid license key after the test phase.

You can enter the license information manually or upload the file with the license key. The file has the following format:

franzplan.key.value=4A24-B471-62D1-F545-0B94
franzplan.key.components=B
franzplan.key.name=Test Schule 1
franzplan.key.date=2019-05-30

When entering data manually, the fields are filled in with the license information as specified and confirmed with Save. A prerequisite for uploading a license file is that you have received the license key from Franzplan Support by email. Please contact Franzplan Support. If the license is not valid or is about to expire, the corresponding messages will be displayed at Login.

9 Planning

9.1 Timetable planning

The view to timetable planning shows the timetable for all classes and years and gives a complete overview. The header shows which timetable version it is inclusive its acronym and activation status. Here the timetables are also changed or created. Depending on your preference, you can choose between three different view types and switch between with the button .
The output in Excel then also changes according to the selected display type:

View to years
Years appear in separate tabs, days of the week are arranged in columns.
Weekday view
Years appear in separate tabs, days of the week are separated.
Complete view or overall view
All classes, teachers and rooms are visible on one page.

9.1.1 Planning view functions

The following functions can be performed. Some functions are only active in change mode and can also be accessed as a context menu with the right mouse button:

Switches to change mode or back again. Changes to the timetable can only be made in change mode. In doing so, contracted cells are separated.
More detailed explanations can be found in the section below.
Reload timetable
Delete marked entry
Copy marked timetable entry
Export timetable to Excel. It can then be printed from Excel.
Move timetable entry
Exchange marked timetable entries
Load another timetable version
Switch colors for the subjects on or off
Show hidden years again
Switch between different views: view to years, weekday view und overall view
Switch on or off timetable collisions
Switches synchronization off: Changes to the current timetable are then no longer automatically transferred to other timetable versions.
Activates the synchronization: This means that all changes to the timetable are automatically adopted in all timetable variants for the current period / school year.
Existing entries in the relevant timetable variants that are not currently displayed are overwritten.
Here you can take over the schedule entries for couplings and subjects from other school years / periods. All entries for the selected subjects and couplings are copied.
Additional information: Takeover timetable entries.
Circle change of merked timetable entries with checking of collisions

9.1.2 View to years

9.1.3 Weekday view

All classes can also be displayed in a tab in the view. You can switch between displaying all classes in one tab and separate tabs for each year.
To do this, simply click the button or in the top right corner of the view.
It is also possible to change the text height by clicking the button .

9.1.4 Overall view

The overview view shows the schedule entries for each resource (class, teacher, room) in a row with horizontal segmentation of the days of the week and hours.
This view is based on the system of a conventional timetable or room planning board.

In this view, you can filter the resources (teachers / classes / rooms) that are to be displayed together using check menus.

The following video shows the function for displaying and filtering in the overview view: Filter overall view

An additional entry is listed in the context menu off the overview view:

If this is clicked, only the teachers and rooms that are assigned to the selected entry are displayed.

9.1.5 The timetable entry

The single schedule entry contains the following data:

Attribute Meaning
Subject The acronym of the subject. Ist der change mode is switched off, the display name for the subject is shown here, if available.
Teacher The acronym of the teacher. More than one teacher can be assigned.
Room The room number in parentheses. Multiple rooms can also be assigned.
Additional information An additional piece of information that can be given when creating the timetable entry and is displayed directly in the cell.
Footnote You can also set footnotes when creating the entry. This is only given as a reference and appears as text under the timetable.
Link with which the entry can be changed, this is only active in change mode.

If you click on a cell, it appears with a thicker frame. With the right mouse button you can activate a context menu, via which some menu items can be reached directly.
Example:

9.1.6 Displaying collisions

As soon as a change to the timetable has been made, the complete timetable will be reloaded. A collision check is carried out when reloading. This is particularly advantageous if several users change the timetable at the same time. As a result, the cells in which collisions occurred are marked.
The following markings are used:

An affected teacher is scheduled several times. A tooltip provides more information about the timetable entry with which this conflict exists.
A room is planned several times. A tooltip provides more information about the timetable entry with which this conflict exists.
A teacher is scheduled at a time that is marked as ‘Can’t’ for him.
A teacher is scheduled at a time that has been marked as ‘Don’t want’ for him.
A ‘hard’ subject is scheduled at a time that is not designated for this lesson in the weekly schedule.
A double hour is scheduled at a time that is not provided for double hours in the weekly schedule.


All conflicts can also be listed under the menu item Check timetable.

9.1.7 Change timetable entries

9.1.7.1 Change mode

To be able to change timetable entries, the change mode must be activated. This is the default. If the change mode is not active, it must be switched on. To do this, click the button . Now the presentation of the timetable changes. If the change mode is already switched on, it can be switched off with the button . However, this is only necessary if the display does not appear in clear arrangement. Depending on the mode, the schedule entries are displayed differently.

Bars
Bars usually span several cells. These cells are usually displayed connected. Each cell is separated in change mode. See also the explanations under Subjects, Bars, Couplings.

Important! It is recommended to always use couplings instead of bars. See also Subjects, Bars, Couplings

Symbol for change entry
Cells that already have an entry have got a link for changing an entry.

9.1.7.2 Create new timetable entry

To create a schedule entry, click on the free cell. Now the cell is outlined. Press the right mouse button now. A context menu appears. Click on New entry.

A dialog appears for entering the values for a timetable entry. Depending on whether it’s a coupling or not, the attributes are distributed over several tabs.
The following attributes are available:

Coupling A course or a coupling is when different classes and subjects are taught at the same time. If this button is pressed, the entry Subject changes toCoupling or vice versa.
Subject All subjects or couplings can be selected that were previously created under Manage subjects or Manage couplings. It is possible to select exactly one subject or a coupling.
Class If the value for coupling is set to No, the class can be selected here. Otherwise the class was already assigned when the coupling was defined. Exactly one class can be selected.
Time correction The time correction affects the calculation of the teacher assignment. A lesson may not be fully taken into account.
In this case, a correction can be made here. The specification is optional and is done in minutes.
Teacher The list for selected teachers is automatically filled with the teachers who are permanently assigned to the respective class.
Rooms The list for selected rooms is automatically filled with the rooms that are permanently assigned to the respective class.
Teacher-subject-room There is an option to assign teachers to rooms and subjects for coupling. For this purpose, an extra tab appears for couplings. This allocation is observed in the timetables for the teachers and the rooms.
Additional information The additional information appears in the timetable in the respective cell in square brackets. The specification is optional.
Footnote Additional information can also be given as a footnote. It does not appear directly in the timetable cell, but is listed as a footnote. It can be determined in which timetables the information is to be displayed. To do this, the corresponding checkmark must be set for Year,Teacher, Class orRoom.


Example:

The result would be shown in the timetable as follows:

9.1.7.3 Change timetable entry

To change a timetable entry, click on the link in the respective cell that is to be changed. A dialog appears for entering the values for this schedule entry. The same attributes are available as for the Create new timetable entry.

9.1.7.4 Move timetable entry

A timetable entry can be easily moved. To do this, the cell to be moved is clicked on without clicking the link for changing. Now the cell is outlined. Next, repeat the process on the target cell. The first marked cell is now outlined in green, the target cell in red. The context menu (right mouse button) is also active.
Example:

Here the item Move entry is selected. The view then reloads. The entry has been moved. It does not matter whether the target cell already contained an entry. This will be overwritten.

9.1.7.5 Copy timetable entry

Copying a timetable entry is similar to moving it. The cell to be copied is clicked on again and then the target cell. The cell to be moved is now outlined in green, the target cell is outlined in red. In the context menu (right mouse button) the menu item Copy entry is clicked. As a result, both cells are identical. The cell to be copied can perform multiple copying operations at the same time. To do this, press the Ctrl key when you click on the target cell and every other cell to be copied into. Then several cells are outlined in red. Example:

Result:

9.1.7.6 Exchange timetable entry

If both marked cells contain an entry, they can also be interchanged. In this case, the menu item Exchange entries is also active in the context menu (right mouse button).

9.1.7.7 Delete timetable entry

One or more schedule entries can be deleted. These must be marked and the menu itemDelete is selected in the context menu (right mouse button). If there are several entries you do it with the help of the Ctrl key.
Important for couplings: The timetable entries for all classes defined in the coupling are moved / copied / deleted / exchanged simultaneously!

This also applies to the classes from other years.

9.1.7.8 Circle change

When a cicle change is done, the marked entries form a closed chain and are shifted by one step in the order of their marking. The last highlighted entry is put in the place of the first highlighted.
Example:

  1. Mark the entries
  2. Exchange will tale place in this manner
  3. Show collisions
  4. Finished

9.1.8 Takeover timetable entries from other years

The couplings and subjects are transferred to the current timetable with all positions that are available in the timetable version from which they are taken. The prerequisite is that the coupling or subject exists in the current timetable version with the abbreviation. If the abbreviation does not exist, the timetable entry will be ignored and not adopted. For subjects, you can also specify which years should be adopted. If no year is selected, the subjects are copied for all years.
The procedure is as follows:

  1. The planning view for the new timetable to be created is loaded. The timetable is still empty in the example
  2. In the dialog for transferring entries, you select the school year from which the entries are to be copied
  3. If desired, mark the transferring couplings
  4. In addition, you choose subjects and years
  5. After pressing the Takeover button, the entries are copied. The desired entries have now been transferred to the timetable

9.2 Find and list planned / free teachers and rooms

When planning a lesson, it is often necessary to answer the question of which teachers or rooms are actually vacant or already scheduled at a certain point in time. This can be easily determined by activating the context menu with the right mouse button for a specific entry in the Planning timetable view and one of the respective menu items or .
A dialog opens that lists the rooms or teachers depending on the selected checkbox according to various criteria.
Example:

Symbols have the following meaning:

Entry is scheduled or not available.
Entry is not yet scheduled.

9.3 Check timetable

A check of the timetable can be initiated under this menu item. The result is a table with all collisions. The result of the last test is displayed.

If the Start button is pressed, a new check is carried out.

9.4 Timetable versions

There can be several variants of timetables in parallel. This makes it possible to create substitution plans or to prepare a timetable change at certain times. However, only one version of a school’s various timetables is currently active. This active variant is loaded by default and is displayed in the various views of the timetable if no further details are given. When you click on the menu item ‘Versions’, the list of all timetable variants with the following attributes is displayed.

Attribute Meaning
Acronym A clear short description of the timetable variant. The variant is identified here. The abbreviation must not appear more than once.
Description The desfription of the version.
Time Der Zeitpunkt, zu dem die Variante erzeugt wurde.
erzeugt von User name of the user who created the timetable.
basiert auf Reference to the abbreviation of the timetable variant that was copied.
published Indicates whether this variant can be seen by users with the role of teacher. Such users see the timetables that are either ‘active’ or listed here with ‘Yes’.
Relevant for accounting Marks the version relevant for accounting of the teacher hours. A distinction can be made between timetables that are only created for testing or as substitute planning and those that should be included in the accounting.
From Valid from (date), based on the from-to range, it is recognized whether a teacher is included in the acconting for the entire school year or only on the basis of certain timetable versions.
To Valid until (date), based on the from-to range, it is recognized whether a teacher is included in the acconting for the entire school year or only on the basis of certain timetable versions.
Time period Period in weeks to be taken care for accounting. The corresponding teacher hours from this plan are taken into account proportionately.



The following activities can be carried out to manage the timetable variants:

Create new entry
Publish the marked entry
Reload table
Delete marked entry
Change marked entry
Copy marked entry
Load marked entry


The menu is also available with the right mouse button.

9.5 Teachers allocation

9.5.1 Accounting


For each teacher, a weekly target time is set in minutes in the master data. This is the teaching obligation that should be achieved in the planning.
Here, for each teacher, it is listed what their actual assignment based on the timetable looks like and which deviation (positive or negative) from the teaching obligation exist.
However, there are subjects that should not be counted against the time that is shown according to the timetable. Correction values can be specified for such subjects in the configuration (see Manage subjects)). Such a time correction is also possible for a teacher or at the level of an individual timetable entry.
There are two types of time correction that affect a teacher:

Time correction Time correction compared to the actual timetable in minutes, see also Manage teachers
This correction is initially calculated and shown based on the teaching obligation. For example, the teacher could start the school year with plus / minus hours. This correction would be used for this.
Corrected engagement Time correction compared to the actual timetable in minutes, see Time correction
This correction is initially calculated and shown based on the result of the accounting for the current assignment.


The header shows which timetable version it is with its abbreviation and activation status.
Example:


The column Corrected engagement contains the value that is used as the basis for calculating the deviation. This value is the sum of the Engagement and Time correction columns. Where Time correction is read exactly from the corresponding attribute in the configuration for the teacher. The exact details for accounting are then visible by marking the line and right-clicking on the menu item Show accounting details. The ‘Regular engagement’ is the obligation to teach, which is specified by the school authority, without taking account of crediting times or other deductions or surcharges. It is for information only, but can be used in the printout.
Example:


When the teacher hours are calculated, all timetable versions that are marked with ‘relevant to accounting’ in the current school year (period) are taken into account. When calculating the target and operating times, the average is formed across all appropriately marked versions. The time period (from-to) stored for the timetable version is also included. It is taken into account in weeks.
Example:

Timetable version 1 Timetable version 2 resulting value Calculation formula
Period [Wochen] 20 10
Engagement [min] 920 800 880 ((920 x 20)+(800 x 10))/(20+10)
Calculated time [min] 1000 700 900 ((1000 x 20)+(700 x 10))/(20+10)
Deviation [min] 20


If teachers starts during the year, they may not be considered in all timetable versions. For example, a teacher who starts at the end of the half year is not included in the timetable version for the first half of the year. This can be achieved by defining the period of use of the teacher (from-to) outside the validity period (from-to) of the timetable version.
Example:
Teacher 1: Operation period from 03/07/2017 to 12/31/2099
Teacher 2: Operation period from and to is empty
Teacher 3: Operation period from 10/10/2016 to 06/07/2017

From To Teacher 1 Teacher 2 Teacher 3
Timetable version 1 09/01/2016 01/30/2017 X
Timetable version 2 02/01/2017 06/30/2017 X X

In the tab Details for timetable only those versions of the timetable are shown for the teacher that match the period of the assignment and are therefore taken into account in the calculation.

9.5.2 Create accounting as Word template

The teacher’s calculation can be exported as a Word document. To do this, click on the link . The required template is uploaded under System settings. It can also be downloaded and modified again for further processing if it already exists. It can then be uploaded again. If several entries are selected, the settings for all of these entries are generated simultaneously in a Word document. They are separated by a form feed.

9.5.3 Replacement pattern for Word template

Die Word-Vorlage arbeitet mit Ersetzungsmustern. Diese werden beim Erzeugen des Word-Dokuments mit den tatsächlichen Werten ersetzt. Folgende Ersetzungsmuster werden verwendet. Sie können einfach ins Word-Dokument eingefügt werden:

Substitution pattern Meaning
${NAME} Surname of the teacher
${VORNAME} First name of the teacher
${KUERZEL} Acronym of the teacher
${VARIANTE} Timetable version
${PERIODE} School year / period
${JG} Teachers preferred year
${UNTPFLICHT} Engagement of the teacher
${REGPFLICHT} Regular engagement: Count of lessons defined by the school authority without taking account of crediting times or overtime
${ACTPFLICHT} Current engagement, is calculated from the regular engagement minus the deviation
${ZEITKORR} Time correction
${ZEITKORR_BEM} Remarks to time correction
${UNTPFLICHT_KORR} Corrected engagement
${EINSATZ} Accounting sum
${EINSATZ_KORR} Correction for engagement
${EINSATZ_RESULT} Accounting sum inclusive correction
${ABWEICHUNG} Deviation between calculated count of lessons and engagement

9.5.4 Statistics

This menu item lists various statistics that can be used to check the timetable or for the substitution plan.

9.5.4.1 Assignment per class

Shows the time spent by teachers for each individual class.

9.5.4.2 Assignment per subject

Shows the time spent by teachers for each individual subject.

9.5.4.3 Double occupancy

Shows all timetable entries in which more than one teacher is scheduled in a class or coupling.

9.6 Requirements

Before planning the timetable, it makes sense to define some border conditions. With automatic scheduling, this is urgently required in order to receive reasonably useful timetables. But manual planning is also made easier if previously defined constraints can be checked for compliance immediately during the planning and any deviations can be displayed.
The boundary conditions are entered here in the submenus:

  1. Graduation requirements
  2. Requirement settings
  3. Teacher-subjects
  4. Teacher-classes
  5. Cannot/don’t want
  6. Priorities

9.6.1 Graduation requirements

Entering graduation requirements also makes sense if only manual timetable planning is carried out, because compliance with the graduation requirements can be checked. The number of lessons that are assigned to the respective subjects in the various school types and classes or years is specified in the graduation requirement. The combination of subject and class determines how many hours a week the lessons take place. In addition, the teachers and rooms can also be assigned here. However, this is optional only.
As with most views, the content is presented in tabular form:


These attributes are relevant:

Attribute Meaning
Subject Acronym of the subject.
Year Each class is assigned to a year, the abbreviation of which is shown here.
Class Short designation of the classes, e.g. 7.1, 8.2, 12.4 … The class is identified via this number.
Teacher Abbreviation of the teacher. This is optional.
Room Acronym of the rooms. This is optional.
Lessons Number of hours per week to be given.


The list of entries can be reduced to a specific year via list box. Via the link you can create the graduation requirements from one of the already existing timetables. The respective timetable is selected from a list with the timetable versions. However, the new graduation requirements are only saved when the subsequent question regarding the acceptance of the graduation requirements has been confirmed. Die Liste der Einträge kann über die Listbox auf einen bestimmten Jahrgang reduziert werden.


The graduation requirements can be processed as follows:

Create new entry; graduation requirements can be entered for a complete year or for individual classes. But independent on that are they always saved for a class. So it is possible that e.g. Class 3a is taught in math at 4 hours, but class 3b is taught at 6 hours.
Reload table
Delete marked entries
Change entry
Delete filter


9.6.2 Requirement settings

Generally applicable settings are made here. The current values are:

Parameter Meaning Default
Lessons per day for a class and a subject Maximum number of hours a teacher teaches per day for a certain class in the same subject 2
Additional times for teachers Maximum number of hours that a teacher can be scheduled in addition to the target value. This information is checked if a lesson with the available teachers cannot be taken into account at a certain time without running into conflicts. 90
Fall below times for teachers Maximum number of hours that a teacher can be scheduled less than the target value. This information is taken into account when the conflict check is carried out. If this value is undershot, a conflict is reported. 90

9.6.3 Requirement teacher subject

Here you can determine whether a teacher would like to teach as much or as little time in a particular subject per year. By checking the box at the maximum number of hours it is determined that the number of hours should be as high as possible. Otherwise an attempt will be made to assign the smallest possible number of hours. By specifying the priority, an additional differentiation can be made within the list of entries.

9.6.4 Requirement teacher class

Control is possible here if a teacher wants to spend as many or as few hours in a class as possible. By checking the box at the maximum number of hours, it is determined that as many hours as possible are assigned. Otherwise an attempt will be made to assign the smallest possible number of hours. By specifying the priority, you can make an additional differentiation within the list of entries.

9.6.5 Cannot/don’t want

The temporal restrictions for teachers are managed on this page.
The following restrictions apply:

Cannot
This restriction specifies the time restrictions for which the corresponding colleague cannot work.
Don’t want
This is rather a wish of the colleague, which should be taken into account, but can also be violated if there is no other way, i.e. no other reasonable timetable can be achieved.
List of attributes:
Attribute Meaning
Acronym The short name of the teacher. The teacher appears under this abbreviation in the timetable.
Name Surname
First name First name
School Acronym of the school
Cannot Restriktionen ‘Cannot’
Don’t want Restriktionen ‘Don’t want’

The following activities can be carried out to manage the restrictions:

Create new entry
Reload table
Delete marked entries
Change entry

New creation or modification takes place in a dialog in which all restrictive time periods per teacher are specified.
Example of change:

The button Cannot orDon't want switches between the two restrictions. The button + Add leads to the transfer of the entry in the tables below. It is only when you click the Save button that the schedule is accepted and taken into account.

9.6.6 Priorities

In the case of automatic lesson planning, the machine processes the individual steps according to a predetermined system and carries out collision checks. It will rarely be the case that the timetable complies 100% with the specifications and no collisions occur. Priorities can be used to control how the machine evaluates the new timetable and decides in the event of a collision or if several options are available. The higher the priority of the respective criterion is choosen, the more important it is to comply with the criterion and the sooner the machine will take the criterion into account.

Example:

Selected criteria can be completely removed from consideration. Simply deactivate the corresponding line.

9.7 Automatic planning

All schedule entries, e.g. for couplings that should have a fixed place in the timetable, are entered before the automatic timetable planning. When all the fixed entries have been made and the other border conditions have been entered, the automatic lesson planning can be triggered. To do this, first select a timetable version with! [] (Variante.png), on the basis of which the new timetable should be calculated and a number of repetitions specified. The recommendation is to keep the number of repetitions as low as possible (e.g. 5). Good results are already achieved with a few repetitions.
Example:

The result of the calculation is displayed with a rating in the timetable view.
Example:

9.7.1 Functions of the timetable view

The following functions can be carried out:

Reload the timetable
Export timetable to Excel. It can then be printed from Excel.
Load a different timetable version
Switch colors for the subjects on or off
Switch the collision check on or off

You can immediately list the discrepancies with the corresponding button:


and if the result meets your wishes, take over the timetable with the button .
The result is saved as a new timetable version. Therefore, the abbreviation of the new timetable version and the designation must be entered.
The further processing of the timetable can then be done manually in the planning view.

10 Timetable view

10.1 View to years

The years view shows the timetable for all years and classes and gives a complete overview. The header shows which timetable version it is as well as the activation status.
Example:

The following functions can be carried out:

Reload the timetable
Export timetable to Excel. It can then be printed from Excel.
Load another timetable version
Switch colors for the subjects on or off
Switch the schedule collision check on or off
Turn kiosk-mode on or off.

10.2 Teachers view

The teacher view shows the timetable for a specific teacher, all teachers of one year or all teachers of the school. Switching between these options is done using the radio button and then pressing the button . If you specifically select a teacher, the timetable for all timetable versions of the current school year / period is shown in a tab.


With the button it can be downloaded in an Excel view and printed accordingly.
Conflicts are represented as follows:

An affected teacher is scheduled several times. The tooltip when hovering over the icon with the mouse provides more detailed information about the schedule entry with which this conflict exists.

10.3 Classes view

The timetable for each class can be displayed and printed here.

The class is selected in the list box. By pressing the button the timetable will be displayed. With the button it can be downloaded in an Excel view and printed accordingly.

10.4 Rooms view

The timetables for the occupancy of a room can be displayed and printed here.


To do this, the desired room is selected in the list and the button is clicked.

The list of rooms can be restricted using the search filter.
The room view shows the timetable for a specific room or all rooms of the school. Switching between these display options is done using the radio button. If you specifically select a room, the timetable for all timetable variants of the current school year or the current period is displayed in a tab.
With the button it can be downloaded in an Excel view and printed accordingly.

Conflicts are represented as follows:

A room is planned more than one times. The tooltip when hovering over the icon with the mouse provides more detailed information about the schedule entry with which this conflict exists.

10.5 Kiosk-mode

In kiosk-mode, the plans for the years are automatically displayed one after the other at defined time intervals. The time interval can be set under User settings.

The kiosk-mode for the display of timetable entries can easily be switched on or off under any user by clicking the button in the year or class view. The header then outputs the information that the kiosk-mode is activated.

In addition, the time interval can be changed by the parameters under User settings depending on the view

It is advisable to use the kiosk mode if the timetables are to be displayed automatically on a screen like on a scoreboard. To do this, the browser can be set to full screen mode. With Firefox, this is achieved by pressing the F11 key. Another way to set up such a scoreboard is to configure a small computer that is connected to a television or monitor. Here’s a quick guide on how to do this with a Raspberry Pi:
Setting up the kiosk-mode on Raspberry Pi.