TimeEdit: Difference between revisions

From UmsWiki
Jump to navigation Jump to search
Sva (talk | contribs)
Kia (talk | contribs)
 
(19 intermediate revisions by the same user not shown)
Line 11: Line 11:
Upload of courses fails if no courses are imported on GetStudents. Verify this with SQL  
Upload of courses fails if no courses are imported on GetStudents. Verify this with SQL  
{| class="wikitable"
{| class="wikitable"
|select distinct Skolefag from  ImportFromDB
|Select Distinct Aktivitet, Skolefag From Students
|}
|}
<br />[[File:TimeEdit Settings.jpg|none|thumb|728x728px]]
<br />[[File:TimeEdit Settings.jpg|none|thumb|849x849px]]


===Description===
===Description===
Enter a name for this setting.
Enter a name for this setting.
===Upload groups===
Upload employee groups from UMS to TimeEdit.
=== Use Activity ID ===
When this is disabled UMS will use the activity field instead of Activity ID. Make sure the field you choose is unique if you have more than 1 administrative system.
===Keep classes alive===
This controls how many days classes are kept in TimeEdit after they have ended.


===Upload courses===
===Upload courses===
Line 22: Line 31:


Activities/groups upload can not be disabled.
Activities/groups upload can not be disabled.
===Upload course memberships===
Enable this to add students to the courses being uploaded.
===Keep courses alive===
This controls how many days courses are kept in TimeEdit after they have ended.


===TimeEdit Server connection===
===TimeEdit Server connection===
Line 56: Line 71:
Users will still be uploaded to TimeEdit.[[File:TimeEdit Settings Exclude Students.jpg|none|thumb|447x447px]]
Users will still be uploaded to TimeEdit.[[File:TimeEdit Settings Exclude Students.jpg|none|thumb|447x447px]]


==Metadata configuration==
==Use SQL to control data from UMS==
{| class="wikitable"
This allows you to enter extra criteria on data extracted from UMS for each object type sent to TimeEdit
|'''Important information'''


TimeEdit has a limit in the database, a maximum of 20 data fields on a timeblock  can be returned. If you map too many metadata the integration will fail.
===Employees===
|}
This relates to data found in this SQL statement
This lets you define which fields in UMS are sent to corresponding fields in TimeEdit.
Select *
 
From Students
Create 4 metadata configurations for
Where
 
(UserTypes_ID = 0)
*employees
*activities
*courses
*students
 
Students are predefined by UMS, no setup is needed.
 
Some fields are predefined for the metadata settings while other are required if you are extracting [[GetTimetable/TimeEdit|Timetable blocks]].
 
All fields are from the '''Students''' table.[[File:TimeEdit Settings Metadata.jpg|none|thumb|902x902px]]
 
===Key name===
The name of the field in TimeEdit.
 
===Static text before database field===
The text you write in this field will be suffixed to the UMS database field value.
 
===UMS database field===
The database field in the UMS table Students.
 
===Static text after database field===
The text you write in this field will be postfixed to the UMS database field value.
 
===Required===
UMS will not send the record to TimeEdit If this field is empty when it generates the data to send. This will also be logged in to TimeEdit.Log file.
 
==TimeEdit field information==
'''Predefined fields''' are done by UMS and can not be changed and are needed to enter into Configurator.
 
'''Required fields''' has to be setup in the Configurator program. They have to be setup with the as described below. The UMS field can be changed but it is not recommended.
 
All predefined and required fields has to be there for the extraction of [[GetTimetable/TimeEdit|Timetable blocks]] to work correctly.
 
All fields in TimeEdit are case sensitive.


===Students===
===Students===
TimeEdit's extid for this object type is "student.<SLI_ID>". SLI ID is from the internal UMS table called SLI and column ID.
This relates to data found in this SQL statement
{| class="wikitable"
Select *
|+Predefined fields
From Students
!UMS
Where
!TimeEdit
(UserTypes_ID = 1)
!Description
|-
|ForNavne
|person.first_name
|First name
|-
|Efternavn
|person.last_name
|Last name
|-
|StudieNr
|student.init
|
|-
|StudieNr
|student.username
|
|-
|
|general.email
|UMS will fill this field with <Username@Students mail domain>
This can be overwritten by manual configuration.
|}
{| class="wikitable"
|+Required fields
!UMS
!TimeEdit
!Description
|-
|
|person.name
|Is a concatenation of first_name and last_name
Is only used when fetching data in timetable blocks


Do no set this up when creating meta data
===Activities===
This relates to data found in this SQL statement
Select *
From Students
Where
(UserTypes_ID = 1)
And (Aktivitet Is Not Null)
And (Aktivitet <> <nowiki>''</nowiki>'')''
===Courses===
This relates to data found in this SQL statement
Select *
From Students
Where
(UserTypes_ID = 1)
And (Aktivitet Is Not Null)
And (Aktivitet <> <nowiki>''</nowiki>'')''
And (Skolefag Is Not Null)
And (Skolefag <> <nowiki>''</nowiki>'')''
===Groups===
This relates to data found in this SQL statement
Select *
From Students
Where
(UserTypes_ID = 0)
And (AktivitetsID Is Not Null)
And (AktivitetsID <> <nowiki>''</nowiki>'')''
===Admin Activities===
This relates to data found in this SQL statement
Select * From AdminSystems_Activities
===Admin Courses===
This relates to data found in this SQL statement
Select *
From AdminSystems_Activities
Join AdminSystems_Activities_Courses On (AdminSystems_Activities_Courses.Activity = AdminSystems_Activities.Activity) And (AdminSystems_Activities_Courses.Adminserver_ID = AdminSystems_Activities.Adminserver_ID)
Join AdminSystems_Courses On (AdminSystems_Courses.Course = AdminSystems_Activities_Courses.Course) And (AdminSystems_Courses.Adminserver_ID = AdminSystems_Activities_Courses.Adminserver_ID)


This has to be setup in TimeEdit
==[[TimeEditFields|TimeEdit field information]]==
|}<br />
===Employees===
TimeEdit's extid for this object type is "teacher.<SLI_ID>". SLI ID is from the internal UMS table called SLI and column ID.
{| class="wikitable"
|+Predefined fields
!UMS
!TimeEdit
!Description
|-
|ForNavne
|person.first_name
|First name
|-
|Efternavn
|person.last_name
|Last name
|-
|
|general.email
|UMS will fill this field with <Username@Employee mail domain>
This can be overwritten by manual configuration.
|}
{| class="wikitable"
|+Required fields
!UMS
!TimeEdit
!Description
|-
|
|person.name
|Is a concatenation of first_name and last_name
Is only used when fetching data in timetable blocks


Do no set this up when creating meta data
==Configure Modules > Timetable >Datasource==
Create a new datasource in order to get timetable blocks in return from TimeEdit
[[File:Modules Timetable Datasource Add new.png|none|thumb|818x818px]]


This has to be setup in TimeEdit
==Parameters==
|-
|
|person.init
|Username for TimeEdit
|}
{| class="wikitable"
{| class="wikitable"
|+Best practice fields
|+
!UMS
!Parameter
!TimeEdit
|-
|MobilePhone
|general.phone
|-
|WorkMail
|general.email
|}
 
=====Example=====
[[File:Map metadatafields Employees.png|none|thumb|915x915px]]
<br />
===Activity===
TimeEdit's extid for this object type is "studentclass.<Aktivitet>"
{| class="wikitable"
|+Predefined fields
!UMS
!TimeEdit
|-
|Aktivitet
|studentclass.code
|-
|Aktivitet
|studentclass.name
|-
|Aktivitet
|studentclass.no_of_students
|}
{| class="wikitable"
|+Required fields
!UMS
!TimeEdit
!Description
!Description
|-
|-
|ActivityDescription
|Debug
|studentclass.longdescript
|Show XML that is uploaded in log file
|Long description
|-
|Kort_Betegnelse
|studentclass.shortname
|Short description
|}<br />
 
=====Example=====
[[File:Map metadatafields Activity.png|none|thumb|915x915px]]
<br />
 
===Courses===
TimeEdit's extid for this object type is "course.<Aktivitet>_<Skolefag>"
{| class="wikitable"
|+Predefined fields
!UMS
!TimeEdit
|-
|-
|Aktivitet_Skolefag
|Employees
|course.code
|Upload employees
|-
|-
|Aktivitet_Skolefag
|Students
|course.name
|Upload students
|}
{| class="wikitable"
|+Required fields
!UMS
!TimeEdit
!Description
|-
|-
|SkoleFag_Kort_Betegnelse
|Activities
|course.shortname
|Upload activites/classes
|Short description
|-
|-
|SkoleFag_betegnelse
|Courses
|course.LongDescript
|Upload courses
|Long description
|}
|}
=====Example=====
==Configure Modules > Timetable >Datasource==
Create a new datasource in order to get timetable blocks in return from TimeEdit
[[File:Modules Timetable Datasource Add new.png|none|thumb|818x818px]]
==FAQ==
==FAQ==


=== Missing subject / title ===
===Missing subject / title===
Titles in timetable are based on ActivityDescription in UMS (TimeEdit key: studentclass.longdecript).
Titles in timetable are based on ActivityDescription in UMS (TimeEdit key: studentclass.longdecript).



Latest revision as of 07:30, 29 August 2022

Prerequisites

Module requirements

  • UMS
  • TimeEdit account

Create TimeEdit settings on templates

Edit a template and apply settings for TimeEdit in order to send data from UMS to TimeEdit

Upload of courses fails if no courses are imported on GetStudents. Verify this with SQL

Select Distinct Aktivitet, Skolefag From Students


Description

Enter a name for this setting.

Upload groups

Upload employee groups from UMS to TimeEdit.

Use Activity ID

When this is disabled UMS will use the activity field instead of Activity ID. Make sure the field you choose is unique if you have more than 1 administrative system.

Keep classes alive

This controls how many days classes are kept in TimeEdit after they have ended.

Upload courses

Upload courses from UMS to TimeEdit. This is courses as defined by UMS

Activities/groups upload can not be disabled.

Upload course memberships

Enable this to add students to the courses being uploaded.

Keep courses alive

This controls how many days courses are kept in TimeEdit after they have ended.

TimeEdit Server connection

All connection information is provided by TimeEdit support.

All information is specific to a customer.

URL (Endpoint)

This URL specifies the endpoint that UMS connects to.

Certificate path

Then XML file you receive from TimeEdit. The certificate must be issued to your school, else you will get this error

Username

Username to access the Webservice URL.

Password

Password to access the Webservice URL.

Employee mail domain

This will be appended to the username to complete a mail address that TimeEdit can use.Example: @inlogic.dk

Students mail domain

This will be appended to the username to complete a mail address that TimeEdit can use. Example: @inlogic.dk

If students are using private mails then leave the field blank and configure metadata where you map general.email with UMS field PrivateMail


Exclude students from classes

Username entered here will prevent them from being member of any activities.

Users will still be uploaded to TimeEdit.

Use SQL to control data from UMS

This allows you to enter extra criteria on data extracted from UMS for each object type sent to TimeEdit

Employees

This relates to data found in this SQL statement

Select *
From Students
Where
(UserTypes_ID = 0)

Students

This relates to data found in this SQL statement

Select *
From Students
Where
(UserTypes_ID = 1)

Activities

This relates to data found in this SQL statement

Select *
From Students
Where
(UserTypes_ID = 1)
And (Aktivitet Is Not Null)
And (Aktivitet <> '')

Courses

This relates to data found in this SQL statement

Select *
From Students
Where
(UserTypes_ID = 1)
And (Aktivitet Is Not Null)
And (Aktivitet <> '')
And (Skolefag Is Not Null)
And (Skolefag <> '')

Groups

This relates to data found in this SQL statement

Select *
From Students
Where
(UserTypes_ID = 0)
And (AktivitetsID Is Not Null)
And (AktivitetsID <> '')

Admin Activities

This relates to data found in this SQL statement

Select * From AdminSystems_Activities

Admin Courses

This relates to data found in this SQL statement

Select *
From AdminSystems_Activities
Join AdminSystems_Activities_Courses On (AdminSystems_Activities_Courses.Activity = AdminSystems_Activities.Activity) And (AdminSystems_Activities_Courses.Adminserver_ID = AdminSystems_Activities.Adminserver_ID) 
Join AdminSystems_Courses On (AdminSystems_Courses.Course = AdminSystems_Activities_Courses.Course) And (AdminSystems_Courses.Adminserver_ID = AdminSystems_Activities_Courses.Adminserver_ID)

TimeEdit field information

Configure Modules > Timetable >Datasource

Create a new datasource in order to get timetable blocks in return from TimeEdit

Parameters

Parameter Description
Debug Show XML that is uploaded in log file
Employees Upload employees
Students Upload students
Activities Upload activites/classes
Courses Upload courses

FAQ

Missing subject / title

Titles in timetable are based on ActivityDescription in UMS (TimeEdit key: studentclass.longdecript).

If bookings are not bound to activities then fill out the comments field in TimeEdit. The Comment field is also displayed on the body text of the booking.


There is no field with ext.id "person.first_name" , "general.email" etc

The missing fields must be configured in the TimeEdit database. You can do this either by making a supportrequest to TimeEdit or download a an administrative tool from TimeEdit, please contact TimeEdit for further information.

How can I test a TimeEdit certificate ?

Download the SoapUI tool and send a soap register-request as shown in the screenshot. If the certificate is registreret correctly at TimeEdit the response will be the key used for 2 factor authentication.