Records that a learner has completed a single learning module, scored as a percentage where the module is assessed. A completion is identified by the programme, course and module codes rather than by a foreign key to the content, because learning content lives in the repository as directories and only the directory names are stable. The row also holds the website the learning was done on and the admin organisation that owns it, so completions can be reported per tenant. One row is written per completion, so a learner who repeats a module can have several.
Group: Database Entities
Implements: Serializable
Properties
| Property | Returns | Description |
|---|---|---|
| adminDomain | Organisation | The admin organisation which owns this completion, ie the tenant the learning belongs to. Never null. |
| completedDate | Date | Date and time the module was completed. Never null, and normally the time the completion was recorded rather than a date supplied by the learner. |
| courseCode | String | Directory name of the course, within the programme, which contains the completed module. This is an identifier taken from the content repository, not a display title. |
| id | long | Database identifier for this completion record, assigned when it is first saved. |
| moduleCode | String | A module is really just a directory, and the name of the directory is the module code. This must be unique across the whole learning organisation and must not change once published, because completions are matched back to content by this code. |
| profile | Profile | The learner who completed the module. Never null. |
| programCode | String | Directory name of the programme which contains the completed module. This is an identifier taken from the content repository, not a display title. |
| scorePerc | Integer | The score the learner achieved, as a whole percentage. Null for modules that are not assessed, so always check for null before using it in a calculation. |
| website | Website | The website the learner was using when the module was completed, which is the website that holds the learning content. Never null. |
Methods
getId() · getAdminDomain() · getWebsite() · getProgramCode() · getCourseCode() · getModuleCode() · getProfile() · getCompletedDate() · getScorePerc()
getId()
Returns: long
Database identifier for this completion record, assigned when it is first saved.
getAdminDomain()
Returns: Organisation
The admin organisation which owns this completion, ie the tenant the learning belongs to. Never null.
getWebsite()
Returns: Website
The website the learner was using when the module was completed, which is the website that holds the learning content. Never null.
getProgramCode()
Returns: String
Directory name of the programme which contains the completed module. This is an identifier taken from the content repository, not a display title.
getCourseCode()
Returns: String
Directory name of the course, within the programme, which contains the completed module. This is an identifier taken from the content repository, not a display title.
getModuleCode()
Returns: String
A module is really just a directory, and the name of the directory is the module code. This must be unique across the whole learning organisation and must not change once published, because completions are matched back to content by this code.
getProfile()
Returns: Profile
The learner who completed the module. Never null.
getCompletedDate()
Returns: Date
Date and time the module was completed. Never null, and normally the time the completion was recorded rather than a date supplied by the learner.
getScorePerc()
Returns: Integer
The score the learner achieved, as a whole percentage. Null for modules that are not assessed, so always check for null before using it in a calculation.