Timetable

From UmsWiki
Revision as of 09:45, 13 May 2019 by Mej (talk | contribs) (→‎Usage)
Jump to navigation Jump to search

Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.


The following systems is supported

  • Office 365
  • Exchange
  • GSuite


Parameters

Usage

Skemabrikker.exe [<optional> System] [<optional> Action] [<optional> Mail] [<optional> StartDate] [<optional> EndDate] [<optional> Type [UMS | NonUMS | All]]
Help:

Displays a microsoft forms with the different parameters.

Applyrights:

Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.


Systems:

This parameter is used to define what system Skemabrikker.exe will populate the Timetables to. We currently support Timetable integration to these systems:

Exchange

Office 365

Google Apps(Gsuite)

Itslearning


Action:

find - Used to display the Timetables associated with the given [mail] parameter.

delete - Used to delete the Timetables associated with the given [mail] parameter.

update - Used to update the Timetables that needs to be updated that are associated with the given [mail] parameter.


Mail:

mail/UPN - This parameter used if the [action] parameter needs to affect a specific user.

Teachersonly - This parameter used if the [action] parameter needs to only affect teachers.

Studentsonly - This parameter used if the [action] parameter needs to only affect students.

Roomsonly - This parameter is used if the [action] parameter needs to only affect a given physical classroom.

Activitiesonly - This parameter is used if the [action] parameter needs to only affect a given activity.

StartDate:

This parameter is used in to define the start date in which the find, delete or update parameter will affect the timetables. The format for this parameter is dd-mm-yyyy.


EndDate:

This parameter is used in to define the end date in which the find, delete or update parameter will affect the timetables The format for this parameter is dd-mm-yyyy.


Type:

UMS - This parameter is used to define that the timetables has to have been generated by UMS will be affected.

NonUMS - This parameter is used to define that the timetables has to have not been generated by UMS will be affected.

All - This parameter is used to define that timetables both from UMS and non UMS will be affected.

External systems

itslearning

FAQ

How do I find timetable blocks with skemabrikker.exe ?

To find all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.

   Skemabrikker.exe office365 find <mail> <StartDate> <EndDate> [UMS | NonUMS | All]

Example:

skemabrikker.exe office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All

Inspect the skemabrikker.log. The long string value in the logfile refers to the ID in the table SkemaBrikkerSavedEntries


By default the UMS parameter is selected, since there is generally no need to affect and look for items that wasn't generated by UMS. Instead of the <mail> parameter you can use AllTimeTableEmployees and AllTimeTableStudents to select either employees or students respectively.

To delete all timetables generated by UMS for a user or for ie. every student use the following parameters with the skemabrikker.exe command.

   Skemabrikker.exe office365 delete <mail> <StartDate> <EndDate> [UMS | NonUMS | All]

By default the UMS parameter is selected, since there is generally no need to affect and look for items that wasn't generated by UMS. Instead of the <mail> parameter you can use AllTimeTableEmployees and AllTimeTableStudents to select either employees or students respectively.

It is not recommended to run the office365 delete parameter with the All parameter since it will delete everything in the affected users calender's in the given time frame.

How do I find timetable blocks with SQL statements ?

select SkemaBrikkerNewEntries.*

From SkemaBrikkerNewEntries

Join SkemaBrikker_Students On SkemaBrikkerNewEntries.SkemaBegivenhed_ID = SkemaBrikker_Students.SkemaBegivenhed_ID And SkemaBrikkerNewEntries.SkemaBrikkerAdminServers_ID = SkemaBrikker_Students.SkemaBrikkerAdminServers_ID

And SkemaBrikkerNewEntries.Activity = SkemaBrikker_Students.Activity


Where

SkemaBrikker_Students.cpr In (Select Cpr from Students where studienr= '159873')

and SkemaBrikkerNewEntries.Dato = '28-11-2018'

Order By RealStartDateTime