Timetable: Difference between revisions

From UmsWiki
Jump to navigation Jump to search
Khm (talk | contribs)
No edit summary
Cna (talk | contribs)
 
(42 intermediate revisions by 6 users not shown)
Line 1: Line 1:
Skemabrikker.exe is a small sync job that needs to run when timetables has to be created, updated or deleted.
Skemabrikker.exe is a small sync job that needs to run when timetables are created, updated, or deleted.


Example of timetable in UMS and Outlook:
[[File:Timetable in UMS and Outlook.png|none|thumb|600x600px]]


The following systems is supported


* Office 365
The following systems are supported:
* Exchange
* GSuite


<br />
*Office 365
*Exchange
*GSuite<br />
 
==Parameters==
 
===Usage===
> Skemabrikker.exe [<optional> System] [<optional> Action] [<optional> Mail] [<optional> StartDate] [<optional> EndDate] [<optional> Type [UMS | NonUMS | All]]
Eg.
> Skemabrikker.exe Office365 teachersonly
 
> Skemabrikker.exe Office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All
 
====Applyrights====
Only works for Exchange and Office365. Restores rights for a room if they have accidentally been deleted or changed.<br />
 
====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
 
Office365
 
GoogleApps
 
[[Timetable/itslearning|Itslearning]]<br />
 
=====Teachersonly=====
This parameter is used if the [action] parameter needs to affect only teachers.
 
=====Studentsonly=====
This parameter is used if the [action] parameter needs to affect only students.
 
=====Roomsonly=====
This parameter is used if the [action] parameter needs to affect only a given physical Classroom (When this parameter is used you need to add the ID for the given room ie. [Action] [Mail] 'Room_ID').
 
=====Activitiesonly=====
This parameter is used if the [action] parameter needs to only affect a given activity (When this parameter is used you need to add the ID for the given activity ie. [Action] [Mail] 'Activity_ID').
 
=====Coursesonly=====
This parameter is used if the [action] parameter needs to only affect a given course (When this parameter is used you need to add the ID for the given course ie. [Action] [Mail] 'Activity_ID_Course_ID').
 
====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 and are associated with the given [mail] parameter.
 
=====cleanup=====
Used to find UMS appointments in users calendars and delete them if they are not found in UMS database.
 
====Mail====
 
=====mail/UPN=====
This parameter is used if the [action] parameter needs to affect a specific user.
 
=====AllTimeTableStudents=====
This will delete timetable blocks from all known students
 
'''Works with'''
 
Office 365
 
Exchange
 
=====AllTimeTableEmployees=====
This will delete timetable blocks from all known employees
{| class="wikitable"
|+
!Eg : Skemabrikker.exe Office365 delete AllTimeTableEmployees 01-08-2022 31-09-2022 UMS
|}
'''Works with'''
 
Office 365
 
Exchange
 
=====AllTimeTableRooms=====
 
This will delete timetable blocks from all known rooms.
 
'''Works with'''
 
Office 365


=== Usage ===
====StartDate====
Skemabrikker.exe [<optional> System] [<optional> Action] [<optional> StartDate] [<optional> EndDate] [<optional> Type [UMS | NonUMS | All]]
This parameter is used 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.


== Parameters ==
====EndDate====
This parameter is used 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.<br />


== Get started with itslearning ==
====Type====
UMS - This parameter is used to define that the timetables that have been generated by UMS, will be effected.


=== You will need the following things in order to get a sync with itslearning started ===
NonUMS - This parameter is used to define that the timetables that have not been generated by UMS, will be effected.


* A Timetable user - this user holds all events
All - This parameter is used to define that timetables both from UMS and non UMS, will be effected.<br />
* Access to Organisation API at itslearning
* Valid itslearning sync from inLogic


=== Create Timetable user ===
==External systems==
For the purpose of syncing the timetable to itslearning, we need a UMSTimetableUser. The synckey for user object has to be the same as the username, UMSTimetableUser.


=== Access to Organisation API ===
===[[Timetable/itslearning|itslearning]]===
To get access to this API, you'll need to contact your local itslearning Services Team.


See [https://developer.itslearning.com/Organisation_API.html#3801600 this] for more information
===[[Timetable/Office365|Office 365]]===


=== Valid itslearning sync from inLogic ===
===[[Timetable/GoogleGSuite|Google GSuite]]===
A valid sync of the users from UMS to itslearning is needed - this ensures our timetable information is matched correctly with student, activities and course information.


==FAQ==
==FAQ==
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]
====How do I find timetable blocks with skemabrikker.exe ?====
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.
Example following the general parameters:
Instead of the '''<mail>''' parameter you can use '''AllTimeTableEmployees''' and '''AllTimeTableStudents''' to select either employees or students respectively.
{| class="wikitable"
|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 log file refers to the ID in the table '''SkemaBrikkerSavedEntries_Students, SkemaBrikkerSavedEntries_Teachers, SkemaBrikkerSavedEntries_Rooms, SkemaBrikkerSavedEntries_Activities'''.
[[File:Skemabrikkerlog.png|none|thumb|864x864px]]
 
====How do I find timetable blocks with SQL statements?====
{| class="wikitable"
|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= 'xxxxxx')
 
and SkemaBrikkerNewEntries.Dato = '28-11-2018'
 
Order By  RealStartDateTime
|}
 
====How do I change format and content of timetable blocks in Outlook?====
Open UMS Configurator, select Modules "TimeTable" and select your datasource, then edit Format And Content
 
Variables can be replaced as pictured below.
[[File:Timetable format and content.png|none|thumb|1152x1152px]]
<br />


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


    Skemabrikker.exe office365 delete <mail> <StartDate> <EndDate> [UMS | NonUMS | All]
====Students====
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.
Skemabrikker.exe studentsonly <username>
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.
====Teachers====
Skemabrikker.exe teachersonly <username><br />

Latest revision as of 13:19, 29 August 2022

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

Example of timetable in UMS and Outlook:


The following systems are supported:

  • Office 365
  • Exchange
  • GSuite

Parameters

Usage

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

Eg.

> Skemabrikker.exe Office365 teachersonly
> Skemabrikker.exe Office365 find tea@umsacademic.onmicrosoft.com 12-05-2019 13-05-2019 All

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

Office365

GoogleApps

Itslearning

Teachersonly

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

Studentsonly

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

Roomsonly

This parameter is used if the [action] parameter needs to affect only a given physical Classroom (When this parameter is used you need to add the ID for the given room ie. [Action] [Mail] 'Room_ID').

Activitiesonly

This parameter is used if the [action] parameter needs to only affect a given activity (When this parameter is used you need to add the ID for the given activity ie. [Action] [Mail] 'Activity_ID').

Coursesonly

This parameter is used if the [action] parameter needs to only affect a given course (When this parameter is used you need to add the ID for the given course ie. [Action] [Mail] 'Activity_ID_Course_ID').

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 and are associated with the given [mail] parameter.

cleanup

Used to find UMS appointments in users calendars and delete them if they are not found in UMS database.

Mail

mail/UPN

This parameter is used if the [action] parameter needs to affect a specific user.

AllTimeTableStudents

This will delete timetable blocks from all known students

Works with

Office 365

Exchange

AllTimeTableEmployees

This will delete timetable blocks from all known employees

Eg : Skemabrikker.exe Office365 delete AllTimeTableEmployees 01-08-2022 31-09-2022 UMS

Works with

Office 365

Exchange

AllTimeTableRooms

This will delete timetable blocks from all known rooms.

Works with

Office 365

StartDate

This parameter is used 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 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 that have been generated by UMS, will be effected.

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

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

External systems

itslearning

Office 365

Google GSuite

FAQ

How do I find timetable blocks with skemabrikker.exe ?

Example following the general parameters:

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 log file refers to the ID in the table SkemaBrikkerSavedEntries_Students, SkemaBrikkerSavedEntries_Teachers, SkemaBrikkerSavedEntries_Rooms, SkemaBrikkerSavedEntries_Activities.

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= 'xxxxxx')

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

Order By RealStartDateTime

How do I change format and content of timetable blocks in Outlook?

Open UMS Configurator, select Modules "TimeTable" and select your datasource, then edit Format And Content

Variables can be replaced as pictured below.


Run only for one user

Students

Skemabrikker.exe studentsonly <username>

Teachers

Skemabrikker.exe teachersonly <username>