Schedule of multiple resources and days

    The drop down list of resources above the main schedule view allows multiple selections. To select several resources you can click inside the check-box next to each resource's name. The same applies to the drop down list of days and weeks. This way you can have the program lay out a schedule of multiple days and multiple resources on one screen.

    Where can a cell be moved to?

    When you start to drag a cell, the program highlights with green stripes all the timeslots in which all the cell's resources are available. If any of the resources is unavailable (already booked somewhere else), the stripe will have a yellow color. If any resource is blocked, the stripe will be red.

    Resolving conflicts

    The conflicts window, which appears whenever a conflict (clash) is detected, does not merely show the conflicts, but also allows you to resolve them. Each pair of conflicting activities has two check-boxes next to each activity. Selecting a check-box marks the activity to be deleted. This is a quick and comfortable way to resolve a conflict in case you prefer one activity to be scheduled instead of the other.

    Groups of students or instructors

    If the same group of students participates in multiple activities, you can create a group for them and associate that group with all their activities (instead of selecting students individually for each activity). Whenever an activity of the group is scheduled, all the students who participate in the group are scheduled too. The same thing can be done with instructors because a group can include both students and instructors.


    Groups can be arranged in a hierarchy. The rule is that all the activities appearing in a sub group's schedule automatically appear in the parent group's schedule (as well as in the parent's parent groups and so on). A group can have subgroups while being a subgroup itself. It can even be a subgroup of multiple parent groups. Two subgroups are not considered as conflicting with each other unless they have at least one participant in common.

    Subjects and sub-subjects

    Subjects can also be organized in a hierarchy of top level subjects (themes) with sub-subjects. This way, while looking at the schedule of Mathematics, for example, you can be looking at the schedule of Algebra, Trigonometry and Calculus at the same time.

    Simultaneous and consecutive sets

    A set unites multiple activities into a single unit. A set can be either simultaneous or consecutive. A simultaneous set means that all the activities that belong to it are to be scheduled at the same time. A consecutive set means that all the activities that belong to it are scheduled one after the other.

    Room capacity

    A room has 4 types of capacities which you can define: maximal number of students, maximal number of instructors, maximal number of groups and maximal number of activities. The defaults are that the capacity of groups and activities is set to 1. This means that if you schedule more than 1 group or more than 1 activity in the same room at the same time, a conflict is created. The default capacity of students and instructors is unlimited. You can change all these capacities in the properties of the room.

    Distances between rooms and buildings

    You can define distances between rooms and buildings and have the program warn you if a person has two activities scheduled so that the time between them is not enough for him/her to travel from the first room/building to the second.

    Flexible timescale of periods or times

    A timescale defines the layout of the schedule. It can be divided to equal length periods, variable length periods or simply to hours, half hours, quarter hours or discrete minutes.

    Different timescales for different resources

    Different resources can have different timescales. For example, if the same schedule database includes two groups, one of which has 45 minute periods and another 30 minute periods, with a shared instructor who teaches in both groups, the program perfectly supports this scenario. The instructor's timescale will be in absolute hours and minutes and show the activities of both groups on that timescale.

    Different timescales for different days

    Even different days of the week can have different timescales. For example, you can define that on Monday, Wednesday and Friday one set of periods is used and on Tuesday and Thursday another. When you display a schedule for the full week, the program will lay out the periods inside the table and show a common timescale in the axis column.

    Generic days or calendar dates

    A schedule which repeats itself every week or every two weeks or any other period of time is considered to be created for generic days because they do not represent specific dates but a range of possible dates. In contrast, a schedule that is constructed for a specific date in the calendar, e.g. September 1st 2017, is tied specifically to that date. The program supports both modes of scheduling, and even a mix of them both.

    Display students and instructors by groups

    Because students and instructors can be assigned to groups, the program allows you to list them not only alphabetically by name but in a hierarchical view of groups. At the top level a group's name is displayed, underneath it all its sub-groups and under each sub-group the students and instructors who are enrolled to it.

    Custom order of resources

    By default, a list of resources is sorted alphabetically. However, you can sort it by any other property (column) displayed in the list. Moreover, you can define a custom order of resources by rearranging them as you like. This order is then maintained in every list throughout the program.

    Very large databases

    The program is built in such way, that it loads the resources only once when you open the scheduling workspace. It does not refill popup lists later on. This means that even if you have 100,000 students in your database, opening a popup list with all these students takes only one millisecond.

    Looking up resources

    Instead of scrolling a long list to find a resource, you can start typing its name and the program will find it for you. This applies for any popup list of resources. If there are several resources whose names start with what you typed, the first match is highlighted. The program uses a smart in-built sorted dictionary so that highlighting the resource is instantaneous.

    Student elective subjects

    Instead of enrolling students directly to groups or activities, you can enroll them to subjects (courses/themes). In that case the program will help you choose for each student the matching activities with these subjects. If a student can be enrolled to such an activity without causing a conflict in the student's schedule, the program will highlight it for you.

    Quantities of equipment

    For each type of equipment it is possible to define the quantity of items of that equipment in stock. When you try to schedule a quantity that is larger than what you have in stock at the same timeslot, the program will warn you.

    Assign colors to resources

    In order to make it easier to distinguish between resources, each resource can be associated with a color. All the cells in which a resource is scheduled will have the assigned color as the background color. It is even possible to define that in instructors' schedules (for example) all the cells will have the background colors of the groups, but in the groups' schedules the cells will have the background colors of the instructors.

    Blocked cells

    The ability to block cells allows you to mark the non-availability of resources on certain days and times. An activity is not allowed to be scheduled at a time in which one of the resources participating in the activity is blocked. You will be warned by the program if you try to schedule an activity at such a time.

    Planned quantity for activities

    For each activity it is possible to define the weekly planned quantity. This quantity can be defined in periods, e.g. total quantity of 5 periods a week; or in exact hours and minutes, e.g. total quantity of 4:30 hours. Based on how you have defined the planned quantity, the program will calculate the actually scheduled quantity. If you defined the planned quantity in periods, the program will sum up the periods (according to the timescale) and show you the number of scheduled periods. If you have defined the planned quantity in hours and minutes, the program will sum up the lengths of scheduled cells in hours and minutes.

    Notes for cells

    You can add a custom textual note to any cell. A note can be added and edited using the Properties window at the bottom right corner of the workspace.

    Flipped axes

    You can flip the axes of the timetable. By default, the days are in the X-axis and the timescale is in the Y-axis. By flipping the axes you can have it go the other way round. Some institutions are accustomed to such a view of their schedule.

    Abbreviated names

    Each resource can have a full name as well as an abbreviated name. If you are used to short code names for classes or courses (for example), you can tell the program to display the abbreviated names in the schedule instead of the full names.

    Custom columns

    By default, a list of resources has two columns: the resource's name and the associated color. But you can change this. You can tell the program to display other properties of resources in additional columns and also specify the columns' order and widths. This allows you to personalize the layout of resource lists and match it to what you are used to in your institution.

    Different resources for different cells of the same activity

    As you know, each activity can include multiple resources of the same type. The default type of inclusion is "All" - meaning that all the selected resources will be scheduled whenever the activity is scheduled. However, there are two additional types of inclusion. "Any" - meaning that any of the selected resources can be scheduled in any of the activity's cells. For example, If you select several rooms for an activity and select the "Any" inclusion type, each cell of the activity can have a different room (remember that if you leave the default "All" inclusion, all the selected rooms will be booked when the activity is scheduled). Another option is the "One" inclusion. It means that exactly one resource out of the selected resources is to be used for the activity, and only that resource will be scheduled whenever the activity is scheduled. For example, if you select several optional instructors for an activity and use the "One" inclusion, selecting a chosen instructor out of these optional instructor schedules that exact one instructor in all the occurrences of the activity.

    Variable student participation

    If you leave the "Students" field of an activity empty, you can select different students for each cell of an activity. So by not selecting students for an activity (in the activity entry phase), you are allowed you to select variable groups of students for the activity's cells in the scheduling phase. As before, different cells can have different students. The same is applicable to rooms and instructors.

    Assign students either to groups or to activities

    Students can participate directly or indirectly in activities. Directly: students can be assigned to an activity simply by selecting them in the Students property of the activity. This is common for higher education institutions in which students are enrolled to discrete classes (activities). Indirectly: when a group of students participates in multiple activities it is easier to give a name to that group, enroll the students to the group and then simply select that group for the activity instead of re-selecting discrete students for each activity.

    Not necessary to enter student names

    It is perfectly possible to create a schedule without entering any student names at all. In such case, only groups and subgroups are created and the schedule is constructed assuming that no two activities of the same group can be scheduled at the same time. If two subgroups of a group do conflict with each other (have students in common), it is only necessary to create one symbolic student who participates in both of these subgroups in order for the program to warn you in case you schedule them at the same time. It is also possible to enter the total number of students in the group in order for the program to validate room capacity when groups are scheduled.

    Length of activities

    Each activity can have a length. In a timescale of periods, the default length is 1 period. If you set the length to 2, for example, the activity will span over two consecutive periods when you drag and drop it into the schedule. In a timescale of hours/minutes, the default length is 1 hour. You can change this by typing the exact length in time, e.g. "2:30".

    Custom phrases

    The phrases and terms that are used for the types of resources throughout the program's user interface are customizable. For example, you can rename "Teacher" to "Instructor", "Supervisor", "Doctor", "Nurse" or "Employee" and so on. You can even select an icon of each type of resource. This allows our software to be completely generic without compromising the feeling that it was made especially for you.

    Rooms' pane

    Moving an activity from one room to another is easy using the "Rooms" pane at the bottom of the scheduling workspace. The "Rooms" pane displays the schedules of all the rooms in which the activity can be scheduled and allows you to conveniently drag and drop the activity between rooms.

    Which activity is free?

    If you have a vacant cell in the schedule and you are wondering which activity can be scheduled in that cell, the program will help you. By clicking on the "Time Tab" at the top of the activities list, a colored stripe will be added to each activity. The color of the stripe determines the availability of the activity. A green color means that the activity is free to be scheduled at the selected time (none of its resources is either scheduled or blocked). A yellow stripe means that at least one of the participating resources is already busy at the time. A red stripe means that one of the resources is blocked.

    Which cell is free?

    In the same manner that you can see which activity is free to be scheduled in an empty cell, you can also see which other already scheduled cells can be moved to that empty cell. This is done by clicking in the top left corner of the empty cell (on the tab). The program will then highlight in green all the cells which can be moved to it. Cells which would create a conflict if moved to the selected empty cell will be highlighted in yellow.

    Focus on the selected resource's activities

    The activities list is usually a long list. It contains all the activities of all the resources. While working with the schedule, it is often comfortable to narrow down this list to show the activities belonging only to the resource whose schedule you are currently viewing. This is easily possible using a tab at the top of the activities list. Selecting this tab shows only the activities of the resource whose name appears on the tab (and this name switches when you switch between schedules).

    Properties window

    The properties window at the bottom right corner of the screen allows you to modify many resources', activities' and cells' characteristics. Whatever object you click on - its properties are displayed in the "Properties" window. There are no popup windows, dialogs or complicated entry forms anywhere in the program. All the data that you enter is entered in this window.

    Time markers

    When you select a cell in the schedule, you will see the time markers appear at the top and bottom corners of the cell. These time markers allow flexible selection of any time range in the schedule. For example, by dragging the top marker down, you can select only the second half of the cell. Once you do that, if you press the Delete key for instance, only half of the cell will be deleted. You can also use the up and down arrows on each marker for higher precision selection (down to 1 minute precision).

    Activity's schedule

    The main schedule view allows you to view the schedule of any resource. For example, a schedule of a room or a participant. But what if you need know on which dates and times a specific activity is scheduled? This is also possible using the dedicated "Schedule" pane below the list of activities. That pane shows the schedule of the currently selected activity. First click on an activity in the list and then click on "Schedule" next to the "Properties" pane. You will see the schedule of the activity you clicked on, across all weeks.

    Involved resources' schedules

    The "Schedule" pane at the bottom right corner of the screen is also used for displaying the schedules of resources who are part of the cell that you last clicked on. For example, suppose you are viewing the schedule of a group and you click on a cell. That cell has an instructor, a room, a subject and perhaps other resources. You will see the schedules of each of these resources without leaving the group's schedule inside the "Schedule" pane.

    Which resources are free?

    Just like you can know which activities are free to be scheduled in a vacant cell, you can know which distinct resources are free. By selecting any cell in the schedule (free or not free), and then clicking on the time tab at the top of the Resources list, the program will display a status stripe next to each resource in the list. As before, a green stripe means that the resource is free. A blue stripe means that the resource is scheduled. A red stripe means that the resource is blocked.

    Total scheduled quantity

    The program collects scheduling statistics for each resource. You can view these statistics by clicking on the "Total" tab above the list of resources. This will display two additional columns in the list of resources: "Total" and "Scheduled". The "Total" column sums up the planned quantities of all the activities in which the resource participates. The "Scheduled" column sums up the actual number of hours (or periods) that a resource is scheduled.

    Smart conflict prediction

    When you are constructing your schedule, you often get into a situation in which there are no free cells left to schedule a certain activity because in each cell one of the activity's resources is already booked somewhere else. To avoid reaching this situation, the program calculates the number of non-conflicting cells left for each activity and sorts the activities according to that number. What you get is that the activities which have the fewest number of vacant possibilities are placed at the top because they need to be scheduled first to avoid conflicts later. The ratio between the planned quantity and the number of vacant cells is depicted by a small pie-chart at the left of each activity. The fuller the circle is, the more critical it is to schedule the activity now, and not wait for later.

    Combinations Engine

    The program's "Combinations Engine" is a powerful feature which calculates possible moves in the schedule just like in a chess game. It can calculate complex options for you to move a cell, schedule a new activity or move an already scheduled activity into an empty cell. These options are not only simple 1-step movements, but rather multi-depth combinations of several steps. Naturally, they take under account conflicts and resource availability and do the "math" for you. When the "Combinations" tab at the bottom of the workspace is selected, clicking on a cell or on an activity presents the relevant combinations in that tab. Double clicking on a combination applies it.

    "Changes" mode

    Institutions which construct their schedule in advance, often need to make daily changes to resolve various cases of absences, unplanned events, holiday activities and so on. To address this problem, the program has a special "Changes" mode which takes as basis the planned schedule and allows you to make changes to it on specific calendar dates. The program keeps track of the changed cells, logs them and allows you to generate various reports depicting these changes.

    View settings

    The view settings allow you to customize many aspects of how the schedule is presented on screen. First, it allows you to select which properties of each resource are shown in the cells. For example, you can choose to display a resource's name, ID and some other custom property like salutation. For each property you can choose the font, size, horizontal and vertical alignment, angle and word wrapping. You can also set the order in which these properties are displayed.

    Undo and redo

    Having the ability to revert any change you made both in the database of resources and in the schedule itself is extremely useful. You needn't worry about making a mistake. The "Undo" option allows you to go back to the previous state with a single mouse click.

    In-place editing mode

    Although it is perfectly possible to edit all the resources', activities' and cells' properties in the Properties window, there is also an option to edit the displayed properties inside the lists themselves by activating the "Editing" mode. When this mode is active, clicking on any resource or activity allows you to edit its name, color and other properties right there where you clicked, without having to use the Properties window. You can use the Tab key to navigate between fields and the Enter key to open drop down lists. This is extremely convenient in large scale editing scenarios.

    Reports module

    The program is packed with an abundance of reports which you can generate, customize, print and export. You can control which resources are included in a report and which days and times a report should cover. You can also control various display properties such as font, size, word wrapping, splitting of multiple values into separate rows, sorting of columns and many more. Reports contain a summary line and also allow you to manually exclude certain rows from that summary, if required.

    Importing data

    If you have already prepared a database of resources and/or activities, you can easily import it into the program without having to re-enter it manually. You just need to make sure the data is either in text format or in a web-page format. The program has a very powerful import mechanism which allows you to map columns in the input format to the data types familiar to the program and then import all the data appropriately.