Ausgangslage
...
Die Firma frentix mit dem Produkt “OpenOlat” ist unser Standardpartner im Bereich LMS (siehe Webseite OpenOlat – Infinite learning)
Aufgrund von zahlreichen erfolgreichen Kundenprojekten können wir eine standardisierte Integration der beiden Systeme
...
Auch für den Einsatz mit PerformX-Cloud besteht Bedarf
...
Neukunden, die OpenOlat bereits einsetzen - oder dessen Einsatz planen - haben das Bedürfnis nach einer effizienten und unkomplizierten Anbindung des LMS - Migrationskunden möchten bei bereits bestehender Anbindung via OData ihre Investition schützen
...
anbieten
Je nach Leistungsumfang, Lösungskonzept und führende Datenhaltung sind Umfang, Komplexität und entsprechend auch Kosten zu klären
Lösungskonzept
PerformX - Cloud bietet eine Standard-Schnittstelle via OData für OpenOlat
“Markierte” Daten stehen der OpenOlat somit online zur Verfügung
Synchronisiert werden nach Bedarf/Konzept beispielsweise
Benutzer
- Adressen
Die an OpenOlat zu übertragenden Daten können im PerformX markiert respektive terminiert werden
OpenOlat greift via fxsyncher auf die OData-Schnittstellen von PerformX zu und verarbeitet die Daten
Es werden keine Daten von OpenOlat nach PerformX übertragen
Die Filterung der zu synchronisierenden Daten wird kundenspezifisch angepasst
Optional ist eine SSO-Integration möglich und empfohlen
Integrationsumfang
Im Rahmen der Konzeption ist das Lösungskonzept und die Aufgabenteilung der beiden Systeme abschliessend zu definieren:
Mehrstufigkeit der Ereignisse
Abbilden curriculare Strukturen
Inhaltliche Abgrenzung
Kalenderansichten (Ressourcen) für alle Akteure
Präsenzerfassung und -auswertungen
Evaluation
Notenverwaltung
Dokumentenverwaltung
Je nach Lösungskonzept und Aufgabenteilung der beiden Systeme werden unter anderem die folgenden Daten synchronisiert:
Benutzer/Adressen wie Teilnehmende, Referierende etc.
Organisationsstrukturen (Geschäftsbereiche)
Ereignisse und Ereignisstrukturen
Ereignisbuchungen und -rollen
Diverse Status
Anstellungsinformationen werden nicht übertragen
Schnittstelle
Mittels OData-Aufruf werden die Daten zwischen PerformX-Cloud und OpenOlat synchronisiert
Synchronisationsrichtung: PerformX-Cloud → OpenOlat
PerformX-Cloud ist Datenführendes System
Die Selektion der zu synchronisierenden Daten wird kundenspezifisch angepasst
Ereignis
...
Entität
Ressourceninformationen
Technische Schnittstelle
Ereignis
Bezeichner | Feld PerformX-Cloud | Beschreibung | Typ | Länge | Beispiel |
---|---|---|---|---|---|
ID | PK, technische Identifikation des Datensatzes | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f | |
Nummer | Ereignis.Nummer | Kontextbasierte Identifikation des Ereignisses (gemäss spezifiziertem Nummernkreis) | Text | 20 | 100-1, 100-2, 100-3,… K1000, K1001, K1003,… |
StatusID | Ereignis.EreignisStatusId | FK, Status als GUID | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f |
BereichID | Ereignis.GeschaeftsbereichId | FK, Bereich als GUID | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f |
EreignisTypID | Ereignis.EreignisTypId | FK, Ereignistyp als GUID | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f |
Bezeichnung | Ereignis.Bezeichnung | Bezeichnung, Name des Ereignisses | Text | 100 | “Leistungskurs 1”, “ÜK-3”,… |
Bezeichnung Vorlage | Ereignis.BezeichnungVorlage | Bezeichnung, Name des Ereignisses für Vorlage | Text | 100 | “Leistungskurs 1”, “ÜK-3”,… |
Bezeichnung deutsch | Ereignis.Bezeichnung_de | Bezeichnung, Name des Ereignisses deutsch | Text | 100 | “Leistungskurs 1”, “ÜK-3”,… |
Bezeichnung französisch | Ereignis.Bezeichnung_fr | Bezeichnung, Name des Ereignisses französisch | Text | 100 | “Leistungskurs 1”, “ÜK-3”,… |
Bezeichnung italienisch | Ereignis.Bezeichnung_it | Bezeichnung, Name des Ereignisses italienisch | Text | 100 | “Leistungskurs 1”, “ÜK-3”,… |
Beginn | Ereignis.Start | Beginndatum | DateTime | 2024-07-18 16:00:00.0000000 | |
Ende | Ereignis.Ende | Enddatum | DateTime | 2024-07-18 16:00:00.0000000 | |
LMSBereit | Aktivitätsstatus | boolean | true, false | ||
LMSDatumPublikationVon | Beginn E-Learning Zugriff | date | 01.01.1970 | ||
LMSDatumPublikationBis | Ende E-Learning Zugriff | date | 01.01.1970 | ||
LMSVorlagenNummer | Vorlagennummer | string | 100 | 1, 2, 3,… | |
LMSPublikation | Publikation E-Learning | boolean | true, false |
Ereignisbuchung
Entität | Bezeichner | Feld PerformX-Cloud | Beschreibung | Typ | Länge | Beispiel |
---|---|---|---|---|---|---|
ID | FK, Status als GUID | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f | ||
Adresse | EreignisBuchung.TeilnehmerAdresseId | FK, Adresse als GUID | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f | |
Ereignis | EreignisBuchung.EreignisId | FK, Ereignis als GUID | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f | |
Buchungsstatus | EreignisBuchung.BuchungsStatusValue | Buchungsstatus als Ganzzahl | Int | 4 bytes | 1, 2, 3,… | |
Rolle | EreignisBuchung.BuchungsRolleId | FK, Rolle als GUID | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f |
Adresse
...
Bezeichner | Feld PerformX-Cloud | Beschreibung | Typ | Länge | Beispiel |
---|---|---|---|---|---|
ID | PK, technische Identifikation des Datensatzes | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f | |
Nummer | Adresse.Nummer | Kontextbasierte Identifikation der Adresse (gemäss spezifiziertem Nummernkreis) | Text | 20 | 1, A1-B, 3cf |
AnredeID | Adresse.AnredeId | FK, Anrede als ID | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f |
Name | Adresse.Nachname | Nachname | Text | 40 | Muster |
Vorname | Adresse.Vorname | Vorname | Text | 40 | Hans |
AktuelleEMail.Wert | Aktuelle E-Mail-Adresse | ||||
Benutzername | QuinoIdentityUser.UnserName | Benutzername Portalbenutzer | Text | 200 | “hans@muster.ch” |
Geburtsdatum | Adresse.Geburtsdatum | Geburtsdatum | date | 01.01.1970 | |
Adresse aktiv | Adresse.Status | Adressstatus | Boolean | true, false |
Geschäftsbereich
Entität | Bezeichner | Feld PerformX-Cloud | Beschreibung | Typ | Länge | Beispiel |
---|---|---|---|---|---|---|
ID | PK, technische Identifikation des Datensatzes | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f | ||
Bezeichnung | Geschaeftsbereich.Bezeichnung | Bezeichnung des Geschäftsbereichs für Auswertungen | Text | 50 | “Geschäftsbereich 1”, “Geschäftsbereich 2”,… | |
Kürzel | Geschaeftsbereich.KurzZeichen | Kürzel des Geschäftsbereichs | Text | 20 | “GB1”, “GB2”,… |
Ereignisart
...
Bezeichner | Feld PerformX-Cloud | Beschreibung | Typ | Länge | Beispiel |
---|---|---|---|---|---|
ID | PK, technische Identifikation des Datensatzes | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f | |
Bezeichnung deutsch | EreignisArt.Bezeichnung_de | Name des Ereignistyps in deutsch | Text | 40 | “Kurs”, “Lehrgang”,… |
Bezeichnung französisch | EreignisArt.Bezeichnung_fr | Name des Ereignistyps in französisch | Text | 40 | “Cours”,… |
Bezeichnung italienisch | EreignisArt.Bezeichnung_it | Name des Ereignistyps in italienisch | Text | 40 | “Corso”,… |
Buchungsrolle
...
Bezeichner | Feld PerformX-Cloud | Beschreibung | Typ | Länge | Beispiel |
---|---|---|---|---|---|
ID | PK, technische Identifikation des Datensatzes | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f | |
Bezeichnung deutsch | BuchungsRolle.Bezeichnung_de | Name des Ereignistyps in deutsch | Text | 40 | “Student”, “Teilnehmerin”,… |
Bezeichnung französisch | BuchungsRolle.Bezeichnung_fr | Name des Ereignistyps in französisch | Text | 40 | “Etudiant”, “Participant”,… |
Bezeichnung italienisch | BuchungsRolle.Bezeichnung_it | Name des Ereignistyps in italienisch | Text | 40 | “Studente/Studentessa”, “Partecipante”,… |
Ereignisstatus
Entität | Bezeichner | Feld PerformX-Cloud | Beschreibung | Typ | Länge | Beispiel |
---|---|---|---|---|---|---|
ID | PK, technische Identifikation des Datensatzes | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f | ||
Bezeichnung deutsch | EreignisStatus.Bezeichnung_de | Name des Ereignisstatus in deutsch | Text | 40 | “Aktiv”, “Abgeschlossen”,… | |
Bezeichnung französisch | EreignisStatus.Bezeichnung_fr | Name des Ereignisstatus in französisch | Text | 40 | “Actif”, “Clôturé”,… | |
Bezeichnung italienisch | EreignisStatus.Bezeichnung_it | Name des Ereignisstatus in italienisch | Text | 40 | “Attivo”, “Concluso”,… |
Buchungsstatus
...
Bezeichner | Feld PerformX-Cloud | Beschreibung | Typ | Länge | Beispiel |
---|---|---|---|---|---|
ID | PK, technische Identifikation des Datensatzes | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f | |
Bezeichnung | BuchungsStatus.Name | Name des Buchungsstatus | Text | 255 | “Angemeldet”, “Abgemeldet”,… |
Bezeichnung deutsch | EreignisStatus.Caption_de | Name des Buchungsstatus in deutsch | Text | 40 | “Angemeldet”, “Abgemeldet”,… |
Bezeichnung französisch | EreignisStatus.Caption_fr | Name des Buchungsstatus in französisch | Text | 40 | “Actif”, “Clôturé”,… |
Bezeichnung italienisch | EreignisStatus.Caption_it | Name des Buchungsstatus in italienisch | Text | 40 | “Attivo”, “Concluso”,… |
Anrede
Entität | Bezeichner | Feld PerformX-Cloud | Beschreibung | Typ | Länge | Beispiel |
---|---|---|---|---|---|---|
ID | PK, technische Identifikation des Datensatzes | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f | ||
GeschlechtID | Anrede.GeschlechtId | FK, Geschlecht als ID | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f | |
Anrede deutsch | Anrede.Bezeichnung_de | Anrede in Textform deutsch | Text | 20 | “Herr”, “Frau”,… | |
Anrede französisch | Anrede.Bezeichnung_fr | Anrede in Textform französisch | Text | 20 | “Monsieur”, “Madame”,… | |
Anrede italienisch | Anrede.Bezeichnung_it | Anrede in Textform italienisch | Text | 20 | “Signor”, “Signora”,… |
Tags
...
Bezeichner | Feld PerformX-Cloud | Beschreibung | Typ | Länge | Beispiel |
---|---|---|---|---|---|
ID | PK, technische Identifikation des Datensatzes | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f | |
Tag-Kategorie | QuinoTag.CategoryId | FK, Tag-Kategorie als ID | Guid | 36 | 62963bae-5bd7-44ac-8250-5ebdd245af1f |
Bezeichnung | QuinoTag.Bezeichnung | Bezeichnung des Tags | Text | “OpenOlat”, “LMS”,… |
...