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

PropertyReturnsDescription
adminDomainOrganisationThe admin organisation which owns this completion, ie the tenant the learning belongs to. Never null.
completedDateDateDate and time the module was completed. Never null, and normally the time the completion was recorded rather than a date supplied by the learner.
courseCodeStringDirectory 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.
idlongDatabase identifier for this completion record, assigned when it is first saved.
moduleCodeStringA 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.
profileProfileThe learner who completed the module. Never null.
programCodeStringDirectory name of the programme which contains the completed module. This is an identifier taken from the content repository, not a display title.
scorePercIntegerThe 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.
websiteWebsiteThe 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.

To get full access to the Kademi Hub existing customers can login here, or new customers can register here.