Skip to main content

Opleidingen

Opleidingen in Pynter zijn modulair opgebouwd. Aan een opleiding (LearningModule) kunnen modules (LearningTasks) worden gekoppeld middels de koppeltabel LearningModuleTasks. Modules bevatten de verschillende soorten leeraanbod die op Pynter gevolgd kunnen worden, zoals LTI, SCORM en Pynter's eigen e-learning. Daarnaast kunnen modules ook gebruikt worden om andere gegevens bij te houden. Je kunt bijvoorbeeld een module maken waar een formulier moet worden ingevuld, of waarmee aanwezigheid kan worden geregistreerd.

Binnen Pynter is er onderscheid tussen opleidingen mét en zonder fysieke bijeenkomst. Wanneer een opleiding (deels) op locatie is, kunnen deze fysieke bijeenkomsten in Pynter worden geregistreerd. Pynter gebruikt hiervoor lichtingen (GroupClasses). Een lichting is een groep mensen die allemaal aanwezig is bij dezelfde trainingsmomenten. Per lichting kunnen een of meerdere trainingsdagen (GroupClassDates) worden toegevoegd, waarop kan worden aangegeven wanneer dit trainingsmoment plaatsvindt. Ook kan er per trainingsdag aangegeven worden wie die dag de opleiding verzorgt.

Voor het inschrijven voor een training gebruikt Pynter op de achtergrond groepen (Groups). Elke opleiding is gekoppeld aan een groep, en wanneer iemand zich inschrijft voor een opleiding wordt deze persoon ook automatisch lid van de groep (GroupMember). Wanneer iemand zich inschrijft voor een lichting, wordt naast de GroupId ook de GroupClassId vastgelegd.

Verder is het ook nog mogelijk om beheerders en trainers voor de gehele opleiding aan te wijzen. Dit gebeurt door mensen lid te maken van de groep met een specifieke rol (GroupMember.Role).

Untitled(4).png

Broncode diagram

Dit is de broncode van het diagram hierboven. Dit kun je gebruiken om het diagram te bewerken op dbdiagram.io.

table Person {
  Id int [pk]
}

table LearningModule {
  Id int [pk]
  GroupId int [ref: - Group.Id, not null]
  Type int
}

table LearningModuleTasks {
  LearningModuleId int [ref: - LearningModule.Id, not null]
  TaskId int [ref: - LearningTask.Id, not null]
}

table LearningTask {
  Id int [pk]
}

table Group {
  Id int [pk]
}

table GroupClass {
  Id int [pk]
  GroupId int [ref: > Group.Id, not null]
}

table GroupClassDate {
  Id int [pk]
  GroupClassId int [ref: > GroupClass.Id, not null]
  Date date
  From string
  Till string
}

table GroupClassDateTrainer {
  Id int [pk]
  GroupClassDateId int [ref: > GroupClassDate.Id, not null]
  TrainerId int [ref: - Person.Id, not null]
}

table GroupMember {
  Id int [pk]
  PersonId int [ref: - Person.Id, not null]
  GroupId int [ref: - Group.Id, not null]
  GroupClassId int [ref: - GroupClass.Id, null]
  Role int
}