onCourse implements a DSL built on top of Apache Groovy. This provides you a powerful language for creating scripts, exports and reports inside onCourse.
This document only describes the DSL extensions to Groovy. You have the entire language at your disposal and you should take the time to read the excellent documentation available. Note that you cannot use closures inside JasperReport templates. For exports only, you can also make use of the SuperCSV project to simplify the generation of CSV export data.
I: Script blocks and other
AlchemerScriptClosure
This integration allows you to push records into Alchemer in order to add them to a survey. Create one integration per survey you want to send and then use this scripting block:
alchemer { contact myContact template myTemplate reply "info@acme.com" }
Use the name option if you have more than one Alchemer integration and you want to push to only one.
alchemer {
name "name of integration"
contact myContact
template myTemplate
reply "info@acme.com"
}
AttachableTrait
AzureStorageScriptClosure
Use this script block to easily send documents into the Azure Storage Blob service. Note that this has nothing to do with the onCourse document storage system and simply stores the blob in the Azure service without tracking it.
def transactions = query {
entity "AccountTransaction"
query "createdOn is today"
}
def bytes = export {
template "ish.onCourse.accountTransactionMYOB.csv"
records transactions
}
azurestorage {
name "integration name"
blob bytes
fileName "transactions.csv"
}
If you pass the DocumentParam object as the blob attribute, you can skip the name.
azurestorage {
name "integration name"
blob fileData
}
CanvasExpireScriptClosure
This automation component will iterate through all currently unsuspended users in Canvas and match their enrolments to enrolments in onCourse.Suspend the Canvas user if all their enrolments have completed.
canvas_expire { }
By default the enrolment will be deemed to have ended when the class is complete. If you want to specify a different end date you can do that with a simple expression like this:
canvas_expire {
ends "enrolment.customFieldEndDate"
}
Or with an expression like this:
canvas_expire {
ends "enrolment.courseClass.endDateTime + 10"
}
CanvasScriptClosure
This integration allows you to link onCourse to the Canvas LMS.
Add enrolments to Enrolments automatically as they are enrolled in onCourse.
canvas {
enrolment e
course_code "My-Canvas-Course"
section_code "key." + e.courseClass.uniqueCode
create_section true
create_student true
}
You can specify: * create_section: create a new Canvas section from the equivalent onCourse Class if one does not already exist inside your Canvas instance. * create_student: create a new Canvas User profile for the enrolled student if one does not exist in your Canvas instance. If this is false and the user does not exist in Canvas then nothing will happen.
Additional options are available:
canvas {
enrolment e
course_code "My-Canvas-Course"
section_code "key." + e.courseClass.uniqueCode
create_section true
create_student true
authentication_provider_id 1
create_password "myCustomField"
course_blueprint "ABC"
add_tutors true
}
-
authentication_provider_id: this sets the auth provider in Canvas to a non standard value
-
create_password: will generate random password for studento canvas and save to your nominated customField of the onCourse student. Be aware this is not secure since the password is not encrypted in onCourse, however it can be useful for supporting students who need help logging in, or if you want to send the student their login details from inside onCourse.
-
course_blueprint: if the course does not already exist in Canvas with the code provided, will create a new course from the blueprint specified.
-
add_tutors: will enrol tutors from the enrolment’s class into the Canvas course as teachers.
Additional data can be sent to Canvas like this:
Consult the Cnavas manual for the fields you can send through to Canvas and how to use them. You can set any student/user attributes in Canvas.`
def student = [
user: [
name: "David Smith",
time_zone: "Hawaii"
],
communication_channel: [
skip_confirmation: true
],
enable_sis_reactivation: true
]
canvas {
enrolment e
course_code "My-Canvas-Course"
section_code "key." + e.courseClass.uniqueCode
create_section true
create_student true
student_attributes student
}
`
CoassembleScriptClosure
Integration allows us to establish interaction between Coassemble (previously called E-coach) and onCourse enrol system.
Add enrolments to Enrolments automatically as they are enrolled in onCourse.
ecoach {
enrolment record
}
Use the name option if you have more than one coassemble integration and you want to push to only one.
ecoach {
name "name of integration"
enrolment record
}
CollegePreferenceService
Service for accessing college preferences.
get(prefName, defaultValue)
-
prefName String name of preference @param defaultValue default value @return preference value if it is not null, otherwise returns default value
-
defaultValue Object default value @return preference value if it is not null, otherwise returns default value
-
Returns Object preference value if it is not null, otherwise returns default value
get(prefName)
-
prefName String name of preference @return preference value if it is not null, otherwise returns empty string.
-
Returns Object preference value if it is not null, otherwise returns empty string.
hasSurveyForm
Check if default survey form foor enrolled students configured for ncourse. See ish.email.enrolmentConfirmation email template
-
Returns boolean Documentation not yet available
CsvBuilder
This class is a simple wrapper to make exporting CSV and other formats really easy. Use it like this within an export script:
csv << [
"first name": contact.firstName
"last name": contact.lastName
"student number": contact.student.studentNumber
]
If you want to change the delimiters, quote or end of line, you should do that before you call csv << []
Note that this builder is really flexible and isn’t just for CSV. Use it for any output with consistent separators between fields.
addRow(row)
Appends new row to builder’s output. Instead of calling this method by name, you can use the symbol "<<" as seen in the example above.
If you call this more than once, the header is automatically disabled for the second and subsequent calls.
-
row Map mapping of column names to values
enableHeader(writeHeader)
Use this to disable the header line
csv.enableHeader = false
-
writeHeader boolean defaults to true @return
setDelimiter(delimiter)
Set the delimiter to something else.
csv.delimiter = ';'
-
delimiter int defaults to ,
setEndOfLine(endOfLine)
Set the end of line to something else.
csv.endOfLine = '\n'
-
endOfLine String defaults to a \r\n
setQuote(quote)
Set the quote to something else.
csv.quote = '|'
-
quote char defaults to a "
CustomFieldTrait
DocumentService
This class contains simple image closure which allow to put any images from document management system to email template. The syntax is
${image 'picture_1'}.
'picture_1' is name of document in onCourse system. If onCourse have more than one document with the same name then the first one will be chosen. Make sure that required image has unique name to prevent such collision. The image closure interpreted into simple img html tag like: <img src="images/placeholder.png" class="lazy" data-src="https://bucket-ish-oncourse.s3.amazonaws.com/c1ba6238-52f8-43e9-8298-e2bbfc493918?AWSAccessKeyId=NHMUJXKH3BBF6M6QEVOA&Expires=1458561937&Signature=Ej3ittJs7finYguCjnh5WsBhdeD%RR">
Document script block
Document creation API.
Simple usage example:
output = report {
records someList
keyCode ish.classReport
background myFile
}
d = document {
action "create"
content output
name "myreport"
mimeType "image/pdf"
permission AttachmentInfoVisibility.PUBLIC
attach tutor_1, tutor_1
}
Or just attach existing document to any attachable records
document {
action "attach"
document d
attach tutor_1, enrolment_1, certificate_1
}
action(action)
Create new document or attach existing document
-
action String list action string
attach(attach)
-
attach AttachableTrait existing records to attach a document
content(content)
-
content byte[] for newly created document
content(documentParam)
-
documentParam [DocumentParam] Documentation not yet available
document(document)
-
document Document existing document record to attach
mimeType(mimeType)
-
mimeType String for newly created document
name(name)
-
name String for newly created document
permission(permission)
-
permission AttachmentInfoVisibility for newly created document
Export script block
Use a script to generate an export.
Usage example:
export {
fileName "export.csv"
template "ish.contact.list"
record overdueDebtors
}
fileName(fileName)
Specify the filename with extension of the final file with a fulfilled export
-
fileName String fileName of the file with the export
record(records)
A list of records to export. This is the same as 'records', but this needs to handling a export card which is added in Script API
-
records List
-
Returns def Documentation not yet available
record(record)
You can also pass one record to export.
-
record Object
-
Returns def Documentation not yet available
records(records)
A list of records to export. Obviously the export template needs to be built to accept a list of this type of object and produce an export file from them.
-
records List
-
Returns def Documentation not yet available
records(records)
You can instead pass records as vargs if you only have a few to pass.
-
records Object
-
Returns def Documentation not yet available
template(templateKeyCode)
Pass the keycode of the export template you want to use
-
templateKeyCode String Documentation not yet available
-
Returns def Documentation not yet available
KronosCreateEditScriptClosure
Add TutorAttendances to Kronos Shift automatically as it is created/edited in onCourse.
Fields mapping from onCourse to Kronos: Schedule name >> "Ish Schedules" Date >> session date Start Time >> session tutor rostered start time End Time >> session tutor rostered end time Employee ID >> tutor.payrollRef Cost Center 0 >> First 3 digits of courseClass.incomeAccount Cost Center 2 >> courseClassTutor.definedTutorRole.description Skill >> courseClassTutor.definedTutorRole.name Shift Note >> courseClasscode
kronosCreateEdit {
scheduleName "Weekly Test Schedule"
session record
}
scheduleName: add Shifts to Kronos Schedules with name 'scheduleName'. Kronos should have a Schedule with this name and period on the date from the TutorAttendance
KronosDeleteScriptClosure
Delete TutorAttendances as Shift from Kronos automatically as it is deleted in onCourse.
kronosDelete {
session record
}
Get Schedule Id and Shift Id from TutorAttendance custom fields then call DELETE request with these ids, that delete Shift from Kronos
KronosDeleteWrongCustomFieldClosure
Delete TutorAttendance Custom Fields for deleted Kronos Schedules.
kronosDeleteWrongCustomFields {
}
Get all TutorAttendances with CustomFields 'shiftIdCustomField' and 'scheduleIdCustomField' then check if one of its is null or do a GET request to understand if Schedule is exist.
LearnDashScriptClosure
Export successful enrolment record to LearnDash system. This action will search for students matching the onCourse email address against the LearnDash username, and creates them if not found. That student will be enrolled in the Learndash course with slug matching the course code in onCourse
learndash {
action "enrol"
course enrolment.courseClass.course.code
student enrolment.student
}
MailchimpScriptClosure
Mailchimp integration groovy script API. Allows to subscribe/unsubscribe contact to/from Mailchimp list. You can use 'subscribe' action for updating contacts in MailChimp. 'Unsubscribe' deletes permanently contact from the list.
Usage examples:
Subscribe person to Mailchimp list using onCourse contact record:
mailchimp {
name "List1"
action "subscribe"
contact enrolment.student.contact
}
Name property here is the name of Mailchimp integration which should be created in onCourse beforehand. If the name isn’t specified, script will execute it for all created 'MailChimp' integrations.
Subscribe person without onCourse contact record to Mailchimp list:
mailchimp {
name "List2"
action "subscribe"
email "student@example.com"
firstName "John"
lastName "Doe"
optIn false
}
Unsubscribe person from Mailchimp list:
mailchimp {
name "List1"
action "unsubscribe"
email "student@example.com"
}
The ability to create Mailchimp tags:
mailchimp {
action "subscribe"
contact enrolment.student.contact
tags enrolment.student.contact.tags
}
or any list of string
mailchimp {
action "subscribe"
contact enrolment.student.contact
tags 'art', 'IT', 'prhotoshop'
}
Pull unsubscribers and mark the email address in onCourse as not allowed for marketing. Since param support both: LocalDate or string literal.
mailchimp {
action "pull unsubscribes"
since "2020-09-04"
}
Don’t pass 'since' param to get all unsubscribes
mailchimp {
action "pull unsubscribes"
}
Delete a user permanently from MailChimp by email, after this the user can be added again
mailchimp {
action "delete permanently"
email "student@example.com"
}
action(action)
Set Mailchimp list action: "subscribe" or "unsubscribe" or "pull unsubscribes".
-
action String list action string, can be one of "subscribe" or "unsubscribe" or "pull unsubscribes"
contact(contact)
Specify contact to take subscriber’s email, first and last name from.
-
contact Contact subscriber contact
email(email)
Set subscriber’s email.
-
email String subscriber’s email
firstName(firstName)
Set subscriber’s first name.
-
firstName String first name of the subscriber
lastName(lastName)
Set subscriber’s last name.
-
lastName String last name of the subscriber
optIn(optIn)
A flag used to specify if a user must confirm via email before they are subscribed to a mailing list 'true' as default
-
optIn boolean for confirm email
since(since)
Pull all unsubscribers since certain timestamp
-
since String date time
since(since)
Pull all unsubscribers since certain timestamp
-
since LocalDate date time
tags(tags)
The ability to create Mailchimp tags. You can pass any list of tags to the integration. If you want to map those in some way first, you can do that in the script you write.
-
tags List of Tag list
tags(tags)
The ability to create Mailchimp tags. You can pass any list of strings to the integration. If you want to map those in some way first, you can do that in the script you write.
-
tags String list
Mask
For each access key, a role may be given certain access levels. This class is not an enum because the values here can be added up to give layers of access. For example, VIEW (1) + EDIT (5) = 6.
Message script block
Message sending API. Allows to create email or SMS. You can render email content from the templates which are stored into onCourse or a text string. The recipients are generated from entity records which are specified in closure. But you also can specify emails which will receive message with attachment or custom content. If there is no attachment and specify template identifier and entity records, the message is stored inside the onCourse database. Otherwise, no.
Simple usage example:
message {
template keyCodeOfMessageTemplate
record records
from "admin@example.com"
}
The above example will render the template with the specified keyCode and will pass the entity records to that template. It will send that message to the contacts which will be get from the records.
You can optionally also pass a from address if you don’t want to use the default email.from preference.
message {
template keyCodeOfMessageTemplate
record records
anyBinding_1 anyValue_1
anyBinding_2 anyValue_2
}
If the template has a variables they must be specified as a list of variables.
You can send emails with an attached file or pass your own content of message, without storing this data inside onCourse.
Usage example:
erolments = query {
entity "Enrolment"
query "status is SUCCESS "
}
def enrolments_pdf = report {
keycode "ish.onCourse.enrolmentConfirmation"
records erolments
}
def enrolments_csv = export {
template "ish.onCourse.enrolment.csv"
records erolments
}
def enrolments_xml = export {
template "ish.onCourse.enrolment.xml"
records erolments
}
def enrolments_file = new File("enrolments.txt")
erolments.each { e->
enrolments_file.append(e.student.fullName +'_'+ e.courseClass.uniqueCode +'\n')
}
message {
to "support@example.com"
cc "ccrecipient@example.com"
bcc "bccrecipient@example.com"
from "support@@example.com", "onCourse Support"
subject "Attachment example"
content "Look at attached files"
attachment "enrolments.pdf", "application/pdf", enrolments_pdf
attachment "enrolments.csv", "text/csv", enrolments_csv
attachment "enrolments.xml", "text/xml", enrolments_xml
attachment "text/plain", enrolments_file
}
message {
from "admin@example.com"
to "torecipient@example.com"
cc "ccrecipient@example.com"
bcc "bccrecipient@example.com"
subject "test email"
content "test email content"
attachment "accounts.csv", "text/csv", account_csv_data
}
The only lines which are required are "to", "subject" and "content" or "record", "template" and "bindings"
Message collision functionality. Allows to skip sending messages automatically if contact have already received message with specified key.
Usage example:
message {
template keyCodeOfMessageTemplate
record records
key "ABC", records
keyCollision "drop"
}
attachment(documentParam)
Add a documentParam as attachment to the email. Using this method means that the message is not stored inside onCourse.
-
documentParam [DocumentParam] as DocumentParam
attachment(file)
Add a file as attachment to the email. Using this method means that the message is not stored inside onCourse.
-
file File as File
attachment(contentType, content)
Add attachment to the email. Using this method means that the message is not stored inside onCourse.
-
contentType String MIME type of the attachment @param content MIME type of the attachment
-
content Object Documentation not yet available
attachment(fileName, contentType, content)
Add attachment to the email. Using this method means that the message is not stored inside onCourse.
-
fileName String attached file name which will appear in the email @param contentType MIME type of the attachment @param content attachment object
-
contentType String MIME type of the attachment @param content attachment object
-
content Object Documentation not yet available
attachment(attachment)
Add attachment to the email. Using this method means that the message is not stored inside onCourse.
-
attachment Map of String, Object attachment properties map, e.g. [fileName: 'example.txt', type: 'text/plain', content: 'test text']
bcc(recipients)
Set BCC recipients emails for the message. Using this method means that the message is not stored inside onCourse.
-
recipients String email address of the BCC recipients
cc(recipients)
Set CC recipients emails for the message. Using this method means that the message is not stored inside onCourse.
-
recipients String email addresses of the CC recipients
content(content)
Set plain text content of the email. Could be used only for SMTP email sending Using this method means that the message is not stored inside onCourse.
-
content String plain text content of the email
createdBy(user)
Specify SystemUser who will be the linked to the resulting Message record in onCourse as its creator.
-
user SystemUser user who created the email
from(email)
Set "from" address for the email. Defaults to "email.from" preference if not set.
-
email String email from address
from(email, name)
Set "from" address for the email and name of the sender.
-
email String email from address @param name name of the sender
-
name String name of the sender
key(key, object)
Attach a string key to this message and link it to an object. This reference can be used to ensure duplicates aren’t sent for the same event.
-
key String a string key which identifies the script or event which creates this message @param object key is attached to a specific object (for example an enrolment or student)
-
object PersistentObject key is attached to a specific object (for example an enrolment or student)
keyCollision(collision)
Defines a rule to prevent duplicates being sent.
-
collision String check type. Can be 'accept' (this is the default and means the key is ignored), 'drop' (which will silently drop the message) and 'error' (which will drop the message and log an error to the audit log).
record(record)
A direct entity record to message.
-
record Object
record(records)
A list of records to message. Obviously the message template needs to be built to accept a list of this type of object and produce a message from them.
-
records List
records(records)
A list of records to message. Obviously the message template needs to be built to accept a list of this type of object and produce a message from them.
-
records List
subject(subject)
Set email subject. Using this method means that the message is not stored inside onCourse.
-
subject String email subject
template(templateIdentifier)
Set message template to be used for rendering message body. Could be used for Email and SMS sending
-
templateIdentifier String keyCode of the message template or name of the legacy message template
to(recipients)
Specify extra contacts which will receive email. By default email specified in contact record will be used, however you can override the default email by using ">>" operator, e.g. contact1 >> "anotheremail@example.com" Using this method means that the message is not stored inside onCourse.
-
recipients Contact contact records who will receive the email
to(recipients)
Specify extra emails which will receive email. Using this method means that the message is not stored inside onCourse.
-
recipients String email addresses of the email recipients
MicropowerScriptClosure
Retrieves new and recently changed profiles from Micropower and adds them to onCourse. Automatically creates memeberships and invoices for the specifiec MemberProduct sku
micropower {
name "Micropower"
}
Money
Money is a class which handles all the common features needed for handling currency.
Most importantly, this class properly handles rounding at all times.
Constructor Money(val)
Construct a new money instance. If null or empty string is passed, then a Money.ZERO amount will be created.
-
val String value to create
Constructor Money(dollars, cents)
Construct a new money instance, first argument is dollars, second is cents
-
dollars NULL TYPE??? dollars value @param cents cents value
-
cents NULL TYPE??? cents value
add(val)
returns sum
add(val)
returns sum
-
val BigDecimal to be added to this money object @return new money object
-
Returns Money new money object
divide(val)
returns quotient, where object is dividend and the param is divisor
divide(val)
returns quotient, where object is dividend and the param is divisor
-
val BigDecimal divisor @return new money object
-
Returns Money new money object
divide(val, roundingUp)
returns quotient, where object is dividend and the param is divisor Used for rounding any value with cents to a greater integer value
-
val BigDecimal divisor @param roundingUp rounded up to the nearest dollar @return new money object
-
roundingUp boolean rounded up to the nearest dollar @return new money object
-
Returns Money new money object
divide(val, roundingUp)
returns quotient, where object is dividend and the param is divisor Used for rounding any value with cents to a greater integer value
multiply(val)
returns product
-
val long factor @return new money object
-
Returns Money new money object
multiply(val)
returns product
-
val BigDecimal factor @return new money object
-
Returns Money new money object
subtract(val)
returns difference, where object is minuend and param is subtrahend
subtract(val)
returns difference, where object is minuend and param is subtrahend
-
val BigDecimal subtrahend @return new money object
-
Returns Money new money object
toBigDecimal
-
Returns BigDecimal a big decimal representation
toPlainString
-
Returns String a string representation skipping currency sign $25 → "25.00"
MonitoringServiceImpl
Monitoring service which provides monitoring metrics: time, network, environment, license, systemRuntime, onCourse version
MoodleScriptClosure
Export successful enrolment record to moodle system. This action will search for students matching the onCourse email address against the Moodle username, and creates them if not found.
moodle {
name 'Moodle integration'
enrolment record
}
The action finds courses in Moodle by 'shortname' field against the course name in onCourse. You can use the 'courseReference' option to select a different field in Moodle and map it against any value from onCourse.
moodle {
name "Moodle integration"
enrolment record
courseReference 'courseId': record.courseClass.course.code
}
PaymentInterface
Interface to host both payment in and out, for both client and server side.
@author marcin, ldeck
Preferences
List of all preferences which can be accessed in the system. You can access the values most easily as direct attributes: <code> preference.college.name </code>
but you can also use the string key: <code> Preference.valueString("college.name") </code>
Report script block
Run a report and create a PDF file. This file can then be stored in the document management system or sent attached to an email.
Simple example to produce a single certificate PDF:
report {
fileName "certificate.pdf"
keycode "ish.onCourse.certificate"
record records
}
Usage example with sending an email:
email {
to preference.email.admin
subject "onCourse transaction summary ${startDate.format("dd/MM/yy")} to ${endDate.format("dd/MM/yy")}"
content "'Trial Balance' report for the previous 7 days."
attachment "Trial_Balance.pdf", "application/pdf", report {
keycode "ish.onCourse.trialBalance"
records accounts
param 'localdateRange_from' : startDate, 'localdateRange_to' : endDate
}
}
background(background)
The name of the background the report engine will use to render the output PDF file. The background sits behind the components printed on the report. This is useful for a header or certificate background.
-
background String name of background. You can skip this option for a white background.
fileName(fileName)
Specify the filename with extension of the final file with a fulfilled report
-
fileName String fileName of the file with the report
generatePreview(generatePreview)
-
generatePreview Boolean Documentation not yet available
keycode(keyCode)
Pass the keycode of the report template in onCourse you want to run.
-
keyCode String keyCode of the report passed to the report engine
param(param)
Additional optional parameters passed to the report engine. Reports must be provided with the correct number and types they accept to run. For example:
report {
keycode "ish.onCourse.trialBalance"
records accounts
param 'localdateRange_from' : startDate, 'localdateRange_to' : endDate
}
-
param Map parameters passed to the report
record(record)
Pass a record to the report engine. This record will be iterated through in the report engine to produce the report output.
-
record Object record which is included in the report
record(records)
Pass a record to the report engine. This record will be iterated through in the report engine to produce the report output.
-
records List Documentation not yet available
records(records)
Pass a list of records to the report engine. These records will be iterated through in the report engine to produce the report output.
-
records List records which are included in the report
records(records)
Pass a record to the report engine.
-
records Object Documentation not yet available
S3ScriptClosure
Use this script block to easily send documents into the S3 service. Note that this has nothing to do with the onCourse document storage system and simply stores the blob in the S3 service without tracking it.
def transactions = query {
entity "AccountTransaction"
query "createdOn is today"
}
def bytes = export {
template "ish.onCourse.accountTransactionMYOB.csv"
records transactions
}
s3 {
name "integration name"
blob bytes
fileName "transactions.csv"
}
If you pass the DocumentParam object as the blob attribute, you can skip the name.
s3 {
name "integration name"
blob documentParam
}
Sms script block
SMS message sending API.
Usage example:
sms {
to contact1, contact2
text "test SMS text"
}
text(text)
Set SMS message text.
-
text String message text
-
Returns def Documentation not yet available
to(recipients)
Set recipients for the SMS message.
-
recipients Contact recipients of the message
-
Returns def Documentation not yet available
to(recipients)
Set list of recipients for the SMS message.
-
recipients List of Contact list of recipients of the message
-
Returns def Documentation not yet available
SurveyMonkeyScriptClosure
This integration allows you to push records into SurveyMonkey in order to add them to a survey. Create one integration per survey you want to send and then use this scripting block:
surveyMonkey { contact myContact }
Use the name option if you have more than one SurveyMonkey integration and you want to push to only one.
surveyMonkey {
name "name of integration"
contact myContact
}
SystemUserService
systemUsersByRole(name)
-
name String of role @return a list of all system users with certain access role
-
Returns List of SystemUser a list of all system users with certain access role
Taggable
Entities which implement this interface may have TagRequirement, for example Student, Tutor but real TagRelation always created for Contact entity
TalentLMSScriptClosure
Export successful enrolment record to Talent LMS system. This action will search for students matching the onCourse email address against the Talent LMS email, and creates them if not found. That student will be enrolled in the Learndash course with code matching the course code in onCourse
talentLMS {
action "enrol"
course enrolment.courseClass.course.code
student enrolment.student
}
II: Data Entities
ACLAccessKey
Access keys define access to a specific feature of onCourse for an ACLRole
createdOn
-
Returns Date the date and time this record was created
keycode
-
Returns Not null KeyCode the keycode this access right refers to
mask
-
Returns Not null Integer the mask for the access key, including any always allowed masks and removing any always denied
modifiedOn
-
Returns Date the date and time this record was modified
role
-
Returns Not null ACLRole the role for this key
ACLRole
An ACLRole (or just "Role") is a grouping of authorisation rights @see ish.oncourse.server.cayenne.ACLAccessKey to various parts of the system. Every login user @see ish.oncourse.server.cayenne.SystemUser is assigned to a single ACLRole, or no role at all if they are an adminstrator.
accessKeyForKeyCode(keyCode)
-
keyCode KeyCode the KeyCode to gain ACLAccessKey for @return ACLAccessKey of the given keyCode
-
Returns Nullable ACLAccessKey ACLAccessKey of the given keyCode
accessKeys
-
Returns Not null List of ACLAccessKey a list of all access keys for this role
createdOn
-
Returns Date the date and time this record was created
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String the name of the Role
systemUsers
-
Returns Not null List of SystemUser a list of all users attached to this role
AbstractInvoiceLine
Includes the behavior implemented in InvoicePayableLineWrapper
cosAccount
-
Returns Nullable Account COS account linked to this invoice line
createdOn
-
Returns Date the date and time this record was created
description
-
Returns String invoice line description
discountEachExTax
-
Returns Not null Money discount amount excluding tax per single item on this invoice line
discountEachIncTax
-
Returns Money discount amount including tax per single item on this invoice line
discountTotalExTax
-
Returns Money total discount amount (discount per single item times quantity) excluding tax
discountTotalIncTax
-
Returns Money total discounted amount including tax for all items on this invoice line (discount for single item times quantity)
discountedPriceTotalExTax
-
Returns Money total price (price per single item times quantity) including discount and excluding tax
discountedPriceTotalIncTax
-
Returns Money total price (price per single item times quantity) including discount and including tax
discountedPriceTotalTax
-
Returns Money total tax amount calculated by subtracting total discounted price excluding tax from total discounted price including tax
discountedTaxOnPriceEach
-
Returns Money discounted tax amount per single item on this invoice line
discounts
-
Returns Not null List of Discount list of discounts linked to this invoice line
finalPriceToPayExTax
-
Returns Money final price for this invoice line excluding tax
finalPriceToPayIncTax
-
Returns Money final price for this invoice line including tax
modifiedOn
-
Returns Date the date and time this record was modified
prepaidFeesAccount
-
Returns Not null Account prepaid fees liability account
prepaidFeesRemaining
-
Returns Not null Money remaining amount on prepaid fees liability account which is not yet transferred to income account
priceEachExTax
-
Returns Not null Money price per single item without discounts excluding tax
priceEachIncTax
-
Returns Money price per single item without discounts including tax
priceTotalExTax
-
Returns Money total price (price per single item times quantity) without discount excluding tax
priceTotalIncTax
-
Returns Money total price (price per single item times quantity) without discount including tax
quantity
-
Returns Not null BigDecimal quantity of items
tax
-
Returns Not null Tax tax linked to this invoice line
taxEach
-
Returns Not null Money tax amount per single item
taxRate
-
Returns float the of tax rate expressing found by dividing the tax amount by the total price
title
-
Returns Not null String invoice line title
totalTax
-
Returns Money total tax amount (tax amount per single item times quantity)
unit
-
Returns String quantity unit of measurement (e.g. kg)
Account
An Account is a representation of a General Ledger transactional account for the finance backend of onCourse.
accountCode
-
Returns Not null String an account code as used in an external accounting system or general ledger
balance(until)
-
until LocalDate get data up to a given date @return balance up until a given
-
Returns Money balance up until a given
createdOn
-
Returns Nullable Date the date and time this record was created
description
-
Returns Not null String a description which will appear in the user interface alongside the account code
isEnabled
Accounts cannot be deleted once used, so you can only disable them in order to prevent them from being used in the future. Note that disabling an account doesn’t "turn it off", it only hides that account from being selected in the user interface. Existing records already linked to that account will continue to be linked and use that account.
-
Returns Not null Boolean whether the account is enabled
modifiedOn
-
Returns Date the date and time this record was modified
movements(from, to)
-
from LocalDate Documentation not yet available
-
to LocalDate Documentation not yet available
-
Returns Money Documentation not yet available
type
-
Returns Not null AccountType the type of account (asset, liability, etc)
isAsset
-
Returns boolean true if the account is an asset type
isCOS
-
Returns boolean true if the account is a cost of sale type (this is a particular type of expense)
isCredit
Is this account one of the credit types. * LIABILITY * INCOME
-
Returns boolean true if the account is an equity type
isDebit
Is this account one of the debit types. * ASSET * COS * EQUITY * EXPENSE
-
Returns boolean true if the account is an equity type
isEquity
Equity account types are rarely used in onCourse.
-
Returns boolean true if the account is an equity type
isExpense
-
Returns boolean true if the account is an expense type
isIncome
-
Returns boolean true if the account is an income type
isLiability
-
Returns boolean true if the account is a liability type
AccountTransaction
AccountTransactions are entries against the general ledger in onCourse. They are immutable (cannot be edited) and can only be created in pairs.
account
-
Returns Not null Account the account for this transaction
amount
-
Returns Not null Money the value of this transaction
contactName
Get contact related to the transaction through invoice or payment.
-
Returns Nullable String contact name
createdOn
-
Returns Not null Date the date and time this record was created
id
-
Returns Not null Long The primary key for this record. This value will never change once the record is created.
invoiceNumber
Get number of related invoice if transaction is linked to an invoice line
-
Returns Nullable Long invoice number
isLocked
Return true if transaction day cannot be changed.
-
Returns Not null boolean true if transaction day is locked
modifiedOn
-
Returns Not null Date the date and time this record was modified
printTitle
Returns the name of the contact related to this transaction. If transaction is: # invoice line: return invoice.contact.name # payment in: return paymentIn.contact.name # payment out: return paymentOut.payee.name
-
Returns Nullable String name of contact related to this AccountTransaction
relatedInvoiceLine
-
Returns Nullable InvoiceLine the related invoiceLine to this AccountTransaction, if it exists
source
-
Returns String a human readable string of the source class which generated this transaction
sourceClass
-
Returns Nullable Class extends [PersistentObject] the Java class which generated this transaction
transactionDate
-
Returns Not null LocalDate the transaction date. This may be different to the creation or modification date
transactionDescription
Generate description for transaction:
-
Invoice transaction → invoice number + contact name
-
Payment in/out → payment type (cc/cheque/cash/etc) + contact name
-
Returns Nullable String string describing transaction
Application
Applications are a way for students to express interest in a course and process through the steps of sending in supporting materials, arranging interviews or getting custom pricing from the college. The college can then track the status changes of the application through: <br>
-
New<br>
-
Offered<br>
-
Accepted<br>
-
Rejected<br>
-
Withdrawn<br><br>
Once an application is "Offered" then the student is able to enrol online into any class for that course, at the special price (if any).
Tags can be used for more detailed workflow and tracking of progress.
confirmationStatus
We track whether the confirmation email has been sent for this particular record in order to avoid sending it twice.
-
Returns Not null ConfirmationStatus status of confirmation email sending
course
Applications are always linked to a course rather than to a specific class.
-
Returns Not null Course course to which this application is linked
createdOn
-
Returns Not null Date the date and time this record was created
enrolBy
The Application can sometimes be valid for a specific length of time.
-
Returns Date date until when students can apply
feeOverride
Class fee can be overridden for enrolments using applications.
-
Returns Money fee which student will pay when enrolling with this application if fee is overridden per application, null otherwise
modifiedOn
-
Returns Not null Date the date and time this record was modified
reason
-
Returns String reason for decision (accept or reject) on this application
source
-
Returns Not null PaymentSource source where application was created: website or onCourse
status
-
Returns Not null ApplicationStatus current status of the application
student
-
Returns Not null Student the student who lodged the application
tags
-
Returns Not null List of Tag The list of tags assigned to application
ApplicationFieldConfiguration
A field configuration which is used to collect application information
createdOn
-
Returns Not null Date the date and time this record was created
fieldHeadings
-
Returns Not null List of FieldHeading a list of all headings attached to this field configuration
fields
-
Returns Not null List of Field a sorted list of all fields attached to this field configuration
modifiedOn
-
Returns Not null Date the date and time this record was modified
name
-
Returns Not null String the name of this field configuration. Not shown to students anywhere.
Article
Represents an instance of generic product which has been sold through onCourse.
confirmationStatus
-
Returns Not null ConfirmationStatus confirmation email sending status: not sent, sent or suppressed from sending
contact
-
Returns Not null Contact contact who owns this product item
createdOn
-
Returns Date the date and time this record was created
expiryDate
-
Returns Date date when product item (e.g. membership) expires
invoiceLine
-
Returns Not null InvoiceLine purchase invoice line for this product item
modifiedOn
-
Returns Date the date and time this record was modified
product
-
Returns Not null Product product type of this item
status
-
Returns ProductStatus current status of this product item: active, cancelled, credited, redeemed, expired or delivered
ArticleProduct
Represents generic product type which can be sold.
weight
-
Returns Nullable Double weight of this product
Assessment
active
-
Returns Not null Boolean true if active
assessmentClasses
AssesmentClasses is the relational object between an Assesment and a CourseClass
-
Returns Not null List of AssessmentClass all assesmentclasses this assesment is linked to
code
-
Returns Not null String Documentation not yet available
createdOn
-
Returns Not null Date the date and time this record was created
description
-
Returns Nullable String Documentation not yet available
modifiedOn
-
Returns Not null Date the date and time this record was modified
name
-
Returns Not null String Documentation not yet available
AssessmentClass
assessment
-
Returns Not null Assessment Documentation not yet available
assessmentSubmissions
-
Returns Not null List of AssessmentSubmission Documentation not yet available
courseClass
-
Returns Not null CourseClass Documentation not yet available
createdOn
-
Returns Not null Date the date and time this record was created
dueDate
-
Returns Not null Date Documentation not yet available
modifiedOn
-
Returns Not null Date the date and time this record was modified
modules
Gets a list of modules associated with this assessment
-
Returns Not null List of Module a list of modules related to this assessment
releaseDate
If a task does not have a release date, it will be available to enrolled students in the portal immediately after enrolment, like other course/class resources.
-
Returns Nullable Date release date
tutors
-
Returns Not null List of Tutor a list of tutors related to this assessment
AssessmentSubmission
assessmentClass
-
Returns Not null AssessmentClass the assessment class: connection between a courseClass and the assessment submission
assessmentName
-
Returns String the assessment name
courseClassName
-
Returns String the courseClass name in next format: 'courseName courseCode-classCode'
createdOn
-
Returns Not null Date the date and time this record was created
enrolment
-
Returns Not null Enrolment the enrolment which is related to the assessment submission
markedBy
-
Returns Nullable Contact the id of the assessor who marked the assessment submission
modifiedOn
-
Returns Not null Date the date and time this record was modified
studentName
-
Returns String the full name of student
Attendance
This entity represents the relationship between a tutor or student, and the sessions that comprise a CourseClass. They can be used to track whether students show up for sessions (and for how long) and also whether tutors should be paid for delivery.
attendanceType
Attendance types represent the result of particular attendance marking.
-
Returns Not null AttendanceType the attendance type
attendedFrom
If null, then assume the attendance started when the session started.
-
Returns Date the time that this attendance started
attendedUntil
If null, then assume the attendance ended when the session ended.
-
Returns Date the time this attendance ended
createdOn
-
Returns Date the date and time this record was created
durationMinutes
-
Returns Integer the duration in minutes of the attendance
markedByTutor
Tutors can login and mark student attendances for their classes in onCourse portal
-
Returns Not null Tutor the ID of a tutor who marked student’s attendance
markedByTutorDate
-
Returns Nullable Date date and time when attendance was marked by a tutor
modifiedOn
-
Returns Date the date and time this record was modified
note
-
Returns String any additional notes entered by the tutor
session
-
Returns Not null Session the session this attendance is linked to
student
-
Returns Not null Student which student the attendance is for
AutomationBinding
Banking
adminSite
If the banking was done manually then this is the location (site) at which the banking was done. This can be useful to group cash and cheque banking performed at a single location.
-
Returns Nullable Site admin site
createdBy
The user who created the banking. Null if it was generated automatically.
-
Returns Nullable SystemUser user
createdOn
-
Returns Nullable Date the date and time this record was created
modifiedOn
-
Returns Nullable Date the date and time this record was modified
paymentsIn
All the payments-in banked in this batch
-
Returns Not null List of PaymentIn list of payments-in
paymentsOut
All the payments-out banked in this batch
-
Returns Not null List of PaymentOut list of payments-out
settlementDate
The settlement date represents the date on which money should be available to a bank account.
-
Returns Not null LocalDate which money should be available
type
The type of banking event this record represents. Typically this is separated into automatic gateway banking which is created once a day, and
-
Returns Not null BankingType banking type
Certificate
A certificate is an object describing a qualification or set of outcomes issued to a student. Certificates might be created at the end of a single enrolment to capture just the outcomes from that class. Or they might bring today outcomes from separate enrolments and from RPL.
Certificates cannot be deleted once they are printed or issued to the student. They can however be revoked.
addToOutcomes(outcome)
Attaches Certificate to the given Outcome
-
outcome Outcome The Outcome to attach the certificate to
-
Returns def Documentation not yet available
certificateNumber
-
Returns Not null Long a unique number for this certificate
createdOn
-
Returns Date the date and time this record was created
isQualification
-
Returns Not null Boolean true if this certificate is for a full qualification (or accredited course)
lastOutcome
-
Returns def the CertificateOutcome with the most recent EndDate attached to this certificate
modifiedOn
-
Returns Date the date and time this record was modified
outcomes
Outcomes attached to the Certificate
-
Returns def list of outcomes
printedOn
-
Returns LocalDate the date this certificate was first printed
privateNotes
-
Returns String any private notes
publicNotes
-
Returns String public visible notes
qRCodeImage
Returns a 128x128 PNG of the unique QR code used to validate this certificate. This is to be used to render the QR code on a printed Certficate report.
-
Returns def QRCode
qrUniqueCode
return existing uniqueCode or generate it if it’s NULL.
-
Returns def uniqueCode for this certificate
qualification
A certificate can be issued for outcomes toward a certain qualification even if the qualification itself is not issued. Check getIsQualification() to see whether this was a full qualification.
-
Returns Qualification the qualification
revokedOn
If a certificate is revoked, this field will be not null. It is important to check this value before a certificate is exported or printed.
-
Returns LocalDate the date of revocation
student
-
Returns Not null Student the student who received the qualification
studentFirstName
-
Returns String student first name @Deprecated Use certificate.student.contact.firstName instead
studentLastName
-
Returns String student last name @Deprecated Use certificate.student.contact.lastName instead
successfulOutcomes
-
Returns def list of Outcomes with an ASSESSABLE OutcomeStatus
uniqueCode
-
Returns Nullable String Certificate unique code
verificationURL
Returns a web URL that can be entered into a web browser to validate this certificate.
-
Returns def QRCode
Checkout
A shopping cart record typically created by a user who abandoned their cart during checkout on the onCourse website
createdOn
-
Returns Not null Date the date and time this record was created
modifiedOn
-
Returns Not null Date the date and time this record was modified
payer
-
Returns Nullable Contact the contact set as the payer in the shopping cart
shoppingCartClasses
Note: all products with ids from shopping cart should be replicated
-
Returns List of CourseClass list of all course classes, whose ids shopping cart contains
shoppingCartProductQuantity(productId)
-
productId Long - angel id of product @return quantity of product with this id into shopping cart or null, if product not found
-
Returns Nullable Integer quantity of product with this id into shopping cart or null, if product not found
shoppingCartProducts
Note: all products with ids from shopping cart should be replicated
-
Returns List of Product list of all products, whose ids shopping cart contains
totalValue
-
Returns Not null Money the value of te shopping cart
ClassCost
Object representing income or expense associated with running particular class. This includes enrolment fees, tutor wages, discounts and other incomes or expenses.
budgetedCost
-
Returns Money Documentation not yet available
contact
-
Returns Not null Contact contact linked to this class cost (e.g. tutor for wage cost types)
courseClass
-
Returns Not null CourseClass class linked to this class cost
createdBy
-
Returns Not null SystemUser onCourse user who created this class cost
createdOn
-
Returns Date the date and time this record was created
currentOncostRate
-
Returns Nullable BigDecimal
description
-
Returns String description of this class cost record
discountCourseClass
-
Returns Not null DiscountCourseClass discount record linked to this class cost (applies for flow type "discount")
flowType
-
Returns Not null ClassCostFlowType flow type of this class cost record: expense, income, wages or discount
invoiceToStudent
-
Returns Not null Boolean true if class cost is invoiced to student
isSunk
-
Returns Not null Boolean true if this class cost is sunk
minimumCost
-
Returns Money minimum amount for this class cost
modifiedOn
-
Returns Date the date and time this record was modified
onCostRate
-
Returns BigDecimal
payableOnEnrolment
-
Returns Not null Boolean true if this class cost is payable on student enrolment
paylines
-
Returns Not null List of PayLine paylines generated from this class cost record
perUnitAmountExTax
-
Returns Money per unit amount excluding tax
repetitionType
-
Returns Not null ClassCostRepetitionType repetition type for this class cost: fixed, per session, per enrolment, per unit, discount, per timetabled hour or per student contact hour
sessionCount(until)
-
until Date Documentation not yet available
-
Returns Integer number of sessions if this class cost record has "per session" repetition type
sessionPayableHours(until)
-
until Date Documentation not yet available
-
Returns BigDecimal amoount of payable hours if this class cost record has "per timetabled hour" or "per student contact" hour repetition type If until = null returns payable hours without date limitations
tax
-
Returns Not null Tax tax linked to this class cost record
taxAdjustment
-
Returns Not null Money tax adjustment value (used for rounding)
tutorRole
-
Returns Nullable CourseClassTutor the tutor role for this class cost. This may determine pay rates based on the date of the class or session.
unit2
-
Returns String Documentation not yet available
unitCount
-
Returns BigDecimal number of units for this class cost
valueForKey(key)
-
key String Documentation not yet available
-
Returns Object
isAmountOverride
-
Returns boolean Documentation not yet available
ConcessionType
ConcessionTypes are a user definable set of concessions which can be linked to students. You might like to define concessions like a Senior’s Card or Centrelink card. Or you could create a concession for something less concrete like 'staff member' or 'alumni'.
The main purpose of these concessions is to control the application of discounts.
concessionTypeDiscounts
-
Returns Not null List of DiscountConcessionType list of discounts linked to this concession type
createdOn
-
Returns Date the date and time this record was created
hasConcessionNumber
-
Returns Not null Boolean true if entering of concession card number is required
hasExpiryDate
-
Returns Not null Boolean true if concession expiry date must be always specified
isEnabled
-
Returns Not null Boolean true if this concession type is active
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String the name of this Concession
Contact
Contacts are at the heart of onCourse. A Contact might be an individual or a company. Contacts can be extended by Student or Tutor classes, however a Contact can also exist on its own.
abn
-
Returns Nullable String ABN (Australian Business Number) mostly for companies, but tutors might also have one for payment
address
-
Returns Not null String address details concatenated together: suburb, state, postcode with line breaks as appropriate
allowEmail
-
Returns Not null Boolean whether the contact opted into email marketing
allowPost
-
Returns Not null Boolean whether the contact opted into postal (mail) marketing
allowSms
-
Returns Not null Boolean whether the contact opted into SMS marketing
birthDate
-
Returns Nullable LocalDate yep, the contact’s date of birth as LocalDate
classCosts
-
Returns Not null List of ClassCost ClassCost records associated with this contact
concessionsAuthorised
-
Returns Not null List of StudentConcession list of concessions authorised by this contact
contactType
-
Returns ContactType Documentation not yet available
corporatePasses
-
Returns Not null List of CorporatePass CorporatePass records associated with this contact
country
Some validation rules (such as postcode) only apply if this country is "Australia"
-
Returns Nullable Country the country for the address of this contact
createdOn
-
Returns Nullable Date the date and time this record was created
dateOfBirth
-
Returns Date the contact’s date of birth as Date
deliveryStatusEmail
-
Returns Not null Integer number of failed consecutive attempts to deliver email to this contact, when this value reaches 6 onCourse considers emails to this contact undeliverable
deliveryStatusPost
-
Returns Not null Integer number which shows if postal messages can be delivered to this contact, 0 means messages can be delivered, 6 means that postage is undeliverable
deliveryStatusSms
-
Returns Not null Integer number of failed consecutive attempts to deliver SMS message to this contact, when this value reaches 6 onCourse considers messages to this contact undeliverable
-
Returns Nullable String Documentation not yet available
fax
-
Returns Nullable String facsimile number (do we still use those?)
firstName
-
Returns Nullable String first name, null for companies
fullName
-
Returns Not null String the full name for this contact including the middle name, or just the name of the company
gender
-
Returns Nullable Gender gender for the contact
homePhone
-
Returns Nullable String home phone number, formatted just how it was entered in the UI
honorific
-
Returns Nullable String the honorific is the bit before the name (eg. Dr, Mrs, The Honorable)
invoiceTerms
When an invoice is created in Quick Enrol, or as a manual invoice, use value from the contact to set the due date. This date can still be changed during creation to another date by the user. Picks up the default preference value if it isn’t overridden by the contact.
-
Returns Nullable Integer invoice terms
invoices
Remember that a contact’s invoices don’t necessarily represent what they enrolled in. A contact might be billed for someone else’s enrolments or other purchases.
-
Returns Not null List of Invoice all the invoices linked to this contact, including those already paid
isCompany
-
Returns Not null Boolean true if this contact is a company
lastName
-
Returns String last name of this contact
memberships
-
Returns Not null List of Membership all the memberships (including expired) subscribed to by this contact
message
-
Returns Nullable String message (alert for operator) associated with this contact
messages
-
Returns Not null List of Message list of all Message records which were sent to this contact
middleName
-
Returns String middle name
mobilePhone
-
Returns Nullable String contact’s mobile phone
modifiedOn
-
Returns Date the date and time this record was modified
name
Convenience method, same as getName(false)
-
Returns Nullable String contact name in a format it is most commonly used in reports: 'Smith, John'
owingInvoices
-
Returns Not null List of Invoice invoices that belong to contact which have positive amount owing value
payments
-
Returns Not null List of PaymentInterface all payment in and payment out records linked to this contact
paymentsIn
-
Returns Not null List of PaymentIn all PaymentIn records associated with this contact
paymentsOut
-
Returns Not null List of PaymentOut all PaymentOut records associated with this contact
payslips
-
Returns Not null List of Payslip all Payslip records associated with this contact
portalLoginURL
Generates URL to portal login page.
-
Returns String portal login page URL
postcode
-
Returns Nullable String contact’s postcode
productItems
-
Returns Not null List of ProductItem all ProductItem records associated with this contact
quotes
-
Returns Not null List of Quote all the quotes linked to this contact
relatedContacts
-
Returns Not null List of Contact all contacts related to this one
relatedContacts(relationName)
Get all related contacts with a specific relationship type name
-
relationName String (eg. 'parent') @return
-
Returns Not null List of Contact
state
-
Returns Nullable String contact’s state
street
-
Returns Nullable String contact’s address
student
-
Returns Nullable Student Student record associated with this contact
suburb
-
Returns Nullable String contact’s suburb
tags
-
Returns Not null List of Tag The list of tags assigned to this contact
tfn
-
Returns Nullable String contact’s TFN (Tax File Number)
title
-
Returns Nullable String contact’s title
totalInvoiced
-
Returns Not null Money Total paid amount for all contact invoices
totalOwing
-
Returns Money total of all owing amounts for this contact, regardless of due date or payment plan
tutor
-
Returns Nullable Tutor Tutor record associated with this contact
uniqueCode
-
Returns Not null String alphanumeric 16 character unique code associated with this contact
workPhone
-
Returns Nullable String contact’s work phone
ContactRelation
Object representing relation between two individual contacts. For example parent-child, employer-employee, etc.
createdOn
-
Returns Date the date and time this record was created
fromContact
-
Returns Not null Contact contact on the left side of the relation
modifiedOn
-
Returns Date the date and time this record was modified
relationType
-
Returns Not null ContactRelationType type of the contact relation
toContact
-
Returns Not null Contact contact on the right side of the relation
ContactRelationType
Object representing type of relation between two contacts. For example parent-child, employer-employee, etc.
createdOn
-
Returns Date the date and time this record was created
delegatedAccessToContact
-
Returns Not null Boolean true if contact on the left side of the relation can access portal account of the other related contact
fromContactName
-
Returns Not null String name of the left side of the relation, e.g. "parent", "employer", etc.
membeshipDiscountRelations
-
Returns Not null List of DiscountMembershipRelationType list of discount-membership relations linked to this contact relation type
modifiedOn
-
Returns Date the date and time this record was modified
toContactName
-
Returns Not null String name of the right side of the relation, e.g. "child", "employee", etc.
CorporatePass
CorporatePass allows corporate users to enrol students or purchase items without paying immediately. Using CorporatePass will create invoice in onCourse which can be paid later.
contact
-
Returns Not null Contact contact linked to this corporate pass
corporatePassCourseClasses
-
Returns Not null List of CorporatePassCourseClass list of CorporatePassCourseClass relation records linked to this corporate pass, corporate pass can be used only when enrolling into classes from this list
corporatePassProduct
-
Returns Not null List of CorporatePassProduct list of products linked to this corporate pass, corporate pass can be used only when purchasing products from this list
createdOn
-
Returns Date the date and time this record was created
-
Returns Nullable String Returns the email of the invoice recipient
expiryDate
-
Returns Date expiry date of this corporate pass
invoiceEmail
-
Returns String email to which invoice will be sent if this corporate pass is used
invoiceLines
-
Returns def collection of all invoices lines from linked invoices
invoices
-
Returns Not null List of Invoice list of invoices for purchases made using this corporate pass
linkedClassesList
-
Returns def all related classes unique codes in a comma separated list
modifiedOn
-
Returns Date the date and time this record was modified
password
-
Returns Not null String password code for this corporate pass
timesUsed
-
Returns def how many times this corporate pass used
totalAmount
-
Returns def sum of invoice totals across all linked invoices
totalAmountOwing
-
Returns def sum of total amount owing across all linked invoices
validClasses
-
Returns Not null List of CourseClass list of classes linked to this corporate pass, corporate pass can be used only when enrolling into classes from this list
CorporatePassCourseClass
Object representing relation between CorporatePass and class. CorporatePass can only be used for enrolling into classes which are linked to it.
corporatePass
-
Returns Not null CorporatePass CorporatePass record
courseClass
-
Returns Not null CourseClass class record
createdOn
-
Returns Date the date and time this record was created
modifiedOn
-
Returns Date the date and time this record was modified
CorporatePassProduct
Object representing relation between CorporatePass and product. CorporatePass can only be used for purchasing products which are linked to it.
corporatePass
-
Returns Not null CorporatePass CorporatePass record
createdOn
-
Returns Date the date and time this record was created
modifiedOn
-
Returns Date the date and time this record was modified
product
-
Returns Not null Product product record
Country
This table is read-only since it is updated through an automated process, pulling changes and new records from an onCourse update service. That data is turn is fed from updates to the ABS (Australian Beureau of Statistics) reference data.
Note that the ABS will sometimes remove entries, however we will always preserve historic records.
createdOn
-
Returns Date the date and time this record was created
isoCodeAlpha3
-
Returns String the three character ISO code for the country
isoCodeNumeric
-
Returns Integer the ISO numeric code for the country
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String the human readable name for the country
saccCode
-
Returns Integer the numerical statistical code for the country. This one is used for AVETMISS reporting.
isAustralia
The countries in this table are not unique. For example, there are at least five records pointing to Australia.
-
Returns boolean true if this country is one of the "Australia" countries
Course
Courses are the 'product' students purchase when they enrol. They are enrolled into an instance of a Course, called a CourseClass. The Course carries all the marketing information and is typically what you tag to create a navigation structure on the website.
Traineeships are just a special type of course.
allowWaitingLists
Courses can have waiting lists enabled to allow students to add and remove themselves from a waiting list.
-
Returns Not null Boolean true if waiting lists are enabled for this course
applications
-
Returns Not null List of Application application records linked to this course
code
This code must be unique across all courses. It cannot contain spaces or hyphens. Because it is used to generate a URL for the course, it should also be selected for readability, websafe characters and SEO.
-
Returns Not null String course code
courseClasses
-
Returns Not null List of CourseClass all courseClasses, whether current, past or future
courseModules
-
Returns Not null List of CourseModule CourseModule records linked to this course
createdOn
-
Returns Date the date and time this record was created
currentlyOffered
-
Returns Not null Boolean true if the course is currently advertised
enrolmentType
Courses can have classes which are enrolled into directly, or they can be 'course by application' where students apply to the course and then (if accepted) are able to enrol into a class.
-
Returns Not null CourseEnrolmentType type of enrolments allowed for this course
enrolments
-
Returns Not null List of Enrolment all enrolments from all classes
fieldConfigurationSchema
Data collection rules allow a course to have a defined {@link FieldConfigurationScheme} which is used to define the data collection form displayed to users at time of enrolment, waiting list or application.
-
Returns Not null FieldConfigurationScheme the scheme which applies to this course
fieldOfEducation
-
Returns String the NCVER 'Subject field of education' identifer code
isShownOnWeb
-
Returns Not null Boolean whether this course is displayed on the website for browsing and searching
isSufficientForQualification
-
Returns Not null Boolean true, if students completing this course will be granted a qualification
isTraineeship
-
Returns Boolean true if this course is really a traineeship rather than standard course
isVET
-
Returns Not null Boolean whether this is a VET course
modifiedOn
-
Returns Date the date and time this record was modified
modules
-
Returns Not null List of Module modules linked to this course
name
Note that course names don’t need to be the VET official name. It is preferable that they are names appropriate for the best marketing of the course.
-
Returns Not null String the human readable name of the course
printedBrochureDescription
-
Returns String a shorter plaint text description suitable for a brochure
qualification
-
Returns Nullable Qualification qualification linked to this course
relatedCourses
-
Returns Not null List of Course a list of all courses related to this one. It is a union of relatedToCourses and relatedFromCourses
relatedCourses(name)
A list of all courses related to this one by type with specified name
-
name String Documentation not yet available
-
Returns Not null List of Course
relatedFromCourses
-
Returns Not null List of Course a list of courses related to this one (relashionships, created in other courses to this one)
relatedFromCourses(name)
-
name String Documentation not yet available
-
Returns Not null List of Course a list of courses related to this one (relashionships, created in other courses to this one) by type with specified name
relatedFromProducts
-
Returns Not null List of Product a list of courses this one relate to
relatedProducts
-
Returns Not null List of Product a list of all products related to this one
relatedToCourses
-
Returns Not null List of Course a list of courses that this course is related to (relationships to courses, created from this one)
relatedToCourses(name)
-
name String Documentation not yet available
-
Returns Not null List of Course a list of courses that this course is related to (relationships to courses, created from this course) by type with specified name
relatedToProducts
-
Returns Not null List of Product a list of products related to this one
reportableHours
If this is a VET course, it might have reportable hours recorded for AVETMISS reporting
-
Returns BigDecimal number of reportable hours
sessions
-
Returns Not null List of Session list of sessions linked to this course
shortWebDescription
The course short description is displayed on the courses page as a description of course under the title. If value not set, webDescription will be displayed. It can contain rich text for embedding images, blocks, video, dynamic text, and more. It also supported unicode for multi-language support.
-
Returns String a rich text field for display on the web
tags
-
Returns Not null List of Tag The list of tags assigned to course
voucherProduct
-
Returns Not null List of VoucherProduct list of sutable Vouchers for this course
waitingLists
-
Returns Not null List of WaitingList all the waiting list entries for this course
webDescription
The course description is displayed on the course detail page. It can contain rich text for embedding images, blocks, video, dynamic text, and more. It also supported unicode for multi-language support.
-
Returns String a rich text field for display on the web
CourseClass
The CourseClass entity is what you see in the user interface called just "class". The term 'CourseClass' is used because 'class' is a reserved word in Java and will cause ambiguity.
A CourseClass is the object which can be enrolled in by students, has a price, timetable and represents the instance of the Course which is sold and delivered.
activeAttendances
-
Returns Not null List of Attendance attendance records for all SUCCESS enrolments
actualCustomInvoices
-
Returns def Documentation not yet available
actualDiscounts
-
Returns def Documentation not yet available
actualFeeIncome
-
Returns def Documentation not yet available
actualOtherIncome
-
Returns def Documentation not yet available
actualTotalCost
-
Returns def Documentation not yet available
actualTotalIncome
-
Returns def Documentation not yet available
actualTotalProfit
-
Returns def Documentation not yet available
assessmentClasses
-
Returns Not null List of AssessmentClass the list of related AssessmentClasses
attendance
An alias for getAttendance(true)
-
Returns def attendance lines for this particular courseClass including tutors
attendanceType
-
Returns Not null CourseClassAttendanceType AttendanceType for AVETMISS reporting in Victoria only
attendanceWithoutTutor
An alias for getAttendance(false)
-
Returns def attendance lines for this particular courseClass excluding tutors
budgetedCustomInvoices
-
Returns def Documentation not yet available
budgetedDiscounts
-
Returns def Documentation not yet available
budgetedFeeIncome
-
Returns def Documentation not yet available
budgetedOtherIncome
-
Returns def Documentation not yet available
budgetedPlaces
-
Returns Not null Integer number of budgeted places
budgetedTotalCost
-
Returns def Documentation not yet available
budgetedTotalIncome
-
Returns def Documentation not yet available
budgetedTotalProfit
-
Returns def Documentation not yet available
cancelWarningMessage
-
Returns String class cacellation warning message
category
Returns the first child of the 'Subject' tag of the course this courseClass belongs to Subject/[Languages]/Japanese
-
Returns def the name of the Subject child tag applied to this CourseClass
censusDate
-
Returns LocalDate the census date for NCVER reporting
code
-
Returns Not null String class code
corporatePassCourseClass
Returns all CorperatePasses that can be used with this CourseClass
-
Returns Not null List of CorporatePassCourseClass object relating class and CorporatePass
costs
-
Returns Not null List of ClassCost all ClassCosts linked to this CourseClass
course
-
Returns Not null Course course record linked to this class
createdOn
-
Returns Date the date and time this record was created
deliveryMode
-
Returns Not null DeliveryMode standard deliveryMode value for AVETMISS reporting
deposit
-
Returns Money
description
-
Returns Not null String description for this class containing its course name and venue where it is held
detBookingId
DET Booking ID are used for NSW ePayments AVETMISS reporting.
-
Returns String standard DET Booking ID string
discountCourseClasses
Returns all Discount that can be used with this CourseClass
-
Returns Not null List of DiscountCourseClass object relating class and Discounts
discountedInvoiceLinesForEnrolments
Collects all successful enrolments attached to this courseClass used a discount
-
Returns def InvoiceLines sorted by discount name
discounts
Return the immutable list of discounts available for class To add more available discounts for the class see CourseClass.addDiscount(Discount)
-
Returns Not null List of Discount available discounts list for this class
discountsDescription
Returns a string with the format "discount.name discount.description discount.feeExGst" for all discounts attached to this CourseClass
-
Returns def
displayableLocation
-
Returns Not null String a string representation of the site name, street, suburb, and postcode.
endDateTime
-
Returns Date end date and time of the last session of the class
enrolments
-
Returns Not null List of Enrolment complete list of enrolments (successful, failed or cancelled) ever made to this class
enrolmentsCount
-
Returns def Integer number of successful enrolments in this CourseClass
enrolmentsToProceed
Get number of enrolments for class to cover its running costs.
-
Returns def required number of enrolments
enrolmentsToProfit
Get number of enrolments for class to be profitable.
-
Returns def required number of enrolments
enrolmentsWithinDateRange(from, to)
Get number of enrolments for class created in a given date range
-
from Date start Date range @param to end Date range @return number of enrolments created within the given range
-
to Date end Date range @return number of enrolments created within the given range
-
Returns def number of enrolments created within the given range
expectedHours
-
Returns BigDecimal
feeExGst
-
Returns Not null Money the class free exclusing GST
feeGST
-
Returns Money the GST of the class fee
feeIncGst
-
Returns Money class fee including GST
finalDETexport
-
Returns String
firstRoom
-
Returns def the Room associated with the first session of the class
firstSession
Convenience method to get the very first (chronologically) session for a class
-
Returns Nullable Session first session (in chronological order)
firstSubjectTag
-
Returns def the first child of the Subject tag applied to this class
fullFeeEnrolments
-
Returns def all enrolments that did not use a discount
fullFeeEnrolmentsFeesSum
-
Returns def the sum of all enrolment fees for all enrolments that did not use a discount
hasZeroWages
-
Returns boolean Documentation not yet available
incomeAccount
-
Returns Not null Account
initialDETexport
-
Returns String
invoiceLines
-
Returns Not null List of InvoiceLine invoice lines related to this class
isActive
-
Returns Not null Boolean true if class is active and can accept enrolments
isCancelled
-
Returns Not null Boolean true if class has been cancelled
isClassFeeApplicationOnly
-
Returns Not null Boolean
isDistantLearningCourse
-
Returns Not null Boolean true if class is distant learning, this means that class type is Distant Learning
isHybrid
-
Returns Not null Boolean true if class is hybrid, this means that class type is Hybrid
isShownOnWeb
-
Returns Not null Boolean true if class is visible and searchable on college website
isTraineeship
-
Returns boolean Documentation not yet available
manuallyDiscountedEnrolments
-
Returns def all enrolments in this courseClass enrolled with a manual discount
maxStudentAge
-
Returns Integer the maximum age of students allowed to enrol in this courseClass
maximumDays
-
Returns Integer
maximumPlaces
-
Returns Not null Integer maximum number of enrolments class can accept
maximumTotalCost
-
Returns def Documentation not yet available
maximumTotalIncome
-
Returns def Documentation not yet available
maximumTotalProfit
-
Returns def Documentation not yet available
message
-
Returns String
midwayDETexport
-
Returns String
minStudentAge
-
Returns Integer the minimum age of students allowed to enrol in this courseClass
minimumPlaces
-
Returns Not null Integer minimim number of enrolments required for class to proceed
modifiedOn
-
Returns Date the date and time this record was modified
outcomes
-
Returns def all outcomes of all enrolments in this courseCLass
payableClassroomHours
-
Returns BigDecimal sum of payable hours in all sessions of this courseClass
percentageOfDeliveredScheduledHoursBeforeDate(treshold)
Convenience method to get the percentage of delivered hours
-
treshold Date - date to calculate the ratio @return percentage of delivered hours
-
Returns BigDecimal percentage of delivered hours
placesLeft
-
Returns int Documentation not yet available
placesLeft
-
Returns def number of enrolments left before reaching the maxiumum number of enrolments in the courseClass
prepaidFeesForMonth(monthsCount)
-
monthsCount int Documentation not yet available
-
Returns def Documentation not yet available
publicRelativeURL
-
Returns Not null String /class/uniqueCode
quoteLines
-
Returns Not null List of [QuoteLine] quote lines related to this class
refundedAndCancelledEnrolments
-
Returns def Documentation not yet available
relatedFundingSource
Returns the funding source for this CourseClass.
-
Returns Nullable FundingSource funding source used for this class
reportableHours
-
Returns BigDecimal
room
-
Returns Not null Room main room associated with this class
sessionModules
-
Returns def Documentation not yet available
sessions
-
Returns Not null List of Session list of sessions linked to this class
sessionsCountForTutor(t)
-
t Tutor Documentation not yet available
-
Returns int
startDateTime
-
Returns Date start date and time of the first session of the class
subcategory
Returns the first child of the 'Subject' tag of the course this courseClass belongs to Subject/Languages/[Japanese]
-
Returns def the name of the 2nd Subject child tag applied to this CourseClass
successAndQueuedEnrolments
-
Returns Not null List of Enrolment list of successful and in transaction enrolments made to this class
suppressAvetmissExport
-
Returns Not null Boolean true if this class is suppressed from AVETMISS export
tags
-
Returns Not null List of Tag The list of tags assigned to course class
taxAdjustment
-
Returns Not null Money
timeZone
-
Returns TimeZone time zone of the class venue or default server time zone if not specified
timetableSummary
-
Returns def Documentation not yet available
totalIncomeAmount
-
Returns def Documentation not yet available
totalIncomeAmountWithoutPrepaidFees
-
Returns def Documentation not yet available
tutorNames
-
Returns def Documentation not yet available
tutorNamesAbriged
-
Returns def Documentation not yet available
tutorRoles
Returns the a list of TutorRole objects that is used to relate CourseClasses and Tutors
-
Returns Not null List of CourseClassTutor relation TutorRole object of each Tutor assigned to this class
tutorsAbridged
-
Returns String Documentation not yet available
type
-
Returns Not null CourseClassType class type like With Sessions, Distant Learning, Hybrid
uniqueCode
-
Returns Not null String a unique identifier in the form
courseCode-classCode
.
uniqueSessionModules
-
Returns def Documentation not yet available
validEnrolmentCount
-
Returns int number of successful and in transaction enrolments made to this class
valueForKey(key)
-
key String Documentation not yet available
-
Returns Object
vetCourseSiteID
-
Returns Integer
vetFundingSourceStateID
-
Returns String
vetPurchasingContractID
-
Returns String
vetPurchasingContractScheduleID
-
Returns String
webDescription
-
Returns String web description field that is rendered on courseClass webpage
isActual
Checks if CourseClass isn’t finished and isn’t cancelled in the moment of method call
-
Returns def
CourseClassTutor
A CourseClass record may have one or more Tutors attached to it. The same Tutor may even be attached several times with different roles. For example, as a lecturer and an assessor. This then feeds the tutor attendance and payroll functionality.
confirmedOn
-
Returns Date the date this tutor has been confirmed on
courseClass
-
Returns Not null CourseClass the linked CourseClass
createdOn
-
Returns Date the date and time this record was created
definedTutorRole
-
Returns Not null DefinedTutorRole the role with which the Tutor has been attached to the CourseClass
inPublicity
-
Returns Not null Boolean returns true if this tutor is publically shown in class information
modifiedOn
-
Returns Date the date and time this record was modified
sessionSummary
A summary of the CourseClass sessions. Returns the number of sessions and the sum of hours in all sessions The output for a class with 3 sessions and 5 hours per session would be:
3 (15)
-
Returns def number of sessions and total hours
sessionsTutors
-
Returns Not null List of TutorAttendance the attendance records related to this tutor and their role in the courseClass
tutor
-
Returns Not null Tutor the linked Tutor
CourseModule
CustomField
A CustomField value. Only String is currently supported.
createdOn
-
Returns Not null Date the date and time this record was created
customFieldType
-
Returns Not null CustomFieldType the type custom field
modifiedOn
-
Returns Not null Date the date and time this record was modified
value
-
Returns String the stored value
CustomFieldType
A definition of a custom field which can be used to extend the Contact object.
createdOn
-
Returns Not null Date the date and time this record was created
dataType
Custom fields can have a data type to constrain the data which can be stored. This cannot be changed once the field has been created.
-
Returns Not null DataType
defaultValue
When a new records is created, the custom field can be populated with a default value
-
Returns Nullable String default value for this custom field type
entityIdentifier
The entity (eg. Contact, Enrolment) to which this custom field type is bound.
-
Returns Not null String
isMandatory
-
Returns Not null Boolean if true, the custom field must be not null and not empty in order to save the Contact record
key
Key, by which custom field may be referenced (for example in groovy DSL). Once set, cannot be changed, unlike Name E.g. for getting value from contact custom field "Passport number" with key "passNum" following expression can be used: 'contact.passNum' as alternative to 'contact.customField("Passport Number")'
-
Returns Not null String set fieldKey value
modifiedOn
-
Returns Not null Date the date and time this record was modified
name
Name of the custom field, mandatory, can be changed
-
Returns Not null String the human readable name of the field
DefinedTutorRole
Tutor roles represent the type of engagement a tutor has in a class. They might be a 'trainer', 'assistant' or 'assessor' or any number of other roles. The DefinedTutorRole objects are set up in preferences and typically not changed often.
Each role can have a set of pay rates, although the specific pay rate can also be overridden per tutor per class.
active
Tutor roles need the capacity to be retired. So if active is false they no longer appear in the drop down list inside the class add tutor process
-
Returns Not null Boolean true if TutorRole is active and can be applied for class
currentPayrate
-
Returns PayRate Documentation not yet available
description
-
Returns String the description for this tutor role
name
-
Returns Not null String the name of this role
payRateForCourseClass(courseclass)
For the start date of a particular class, get the pay rate for this role. If the class has no schedule, and therefore no start date, use today’s date.
-
courseclass CourseClass calculate the payrate for a particular class @return the applicable pay rate
-
Returns Nullable PayRate the applicable pay rate
payRateForDate(date)
For a particular date, get the rate which is valid. If nothing is applicable, return null
-
date Date date to get payrate for @return the applicable pay rate
-
Returns Nullable PayRate the applicable pay rate
payRateForSession(session)
For a particular session, get the pay rate. If you pass a session without a defined start date, then use today’s date.
payRates
Pay rates can be given a starting date in which case the new rate takes over from the previous one on that date. In this way forward planning for pay rises can be built in.
-
Returns Not null List of PayRate a list of applicable pay rates for this role
Discount
A discount represents a set of rules used to determine whether a different price can be applied to an enrolments. Discounts can be negative (in which case they represent a surcharge).
addByDefault
-
Returns Not null Boolean true if discount is added by default when creating a new class
applicableDiscounts(courseClass)
-
courseClass CourseClass class to check @return list of applicable discounts
-
Returns List of Discount list of applicable discounts
availableFor
-
Returns Not null DiscountAvailabilityType type of discount availability (OFFICE_ONLY / ONLINE_ONLY / ONLINE_AND_OFFICE)
code
-
Returns String promotion code for this discount
cosAccount
-
Returns Nullable Account cos account for this discount
createdOn
-
Returns Date the date and time this record was created
discountConcessionTypes
-
Returns Not null List of DiscountConcessionType list of concession types linked to this discount
discountCourseClasses
-
Returns Not null List of DiscountCourseClass list of classes linked to this discount, discount can be applied only if enrolling to classes from this list
discountDollar
-
Returns Money discount’s dollar value
discountMax
Maximum discount value sets a cap on the discount value which can be applied. For example, if invoice line amount is $100, discount is 30% and maximum discount value is set to $10, only $10 discount will be applied.
-
Returns Money maximum value for this discount
discountMemberships
-
Returns Not null List of DiscountMembership list of memberships linked to this discount
discountMin
Minimum discount value sets a minimal discount value for this discount For example, if invoice line amount is $100, discount is 10% and minimum discount value is set to $20, then $20 discount will be applied instead of $10.
-
Returns Money minimum value for this discount
discountPercent
-
Returns BigDecimal discount’s percentage
discountType
-
Returns Not null DiscountType type of discount: percent, dollar value or fee override
discountedEnrolments
Get all the active enrolments which used this discount and the amount of the discount isn’t $0
-
Returns Not null List of Enrolment a list of enrolments
discountedEnrolments(from, to)
Get all the active enrolments which used this discount and the amount of the discount isn’t $0 Filter that list of enrolments to a date range. If you pass a null date in either option, then that part of the filter is not applied. The date range applies to the invoice creation date, not the enrolment date.
-
from Date the starting date of the range. This date will automatically be extended to the previous midnight @param to the ending date of the range. This date will automatically be extended to the next midnight @return a list of enrolments
-
to Date the ending date of the range. This date will automatically be extended to the next midnight @return a list of enrolments
-
Returns Not null List of Enrolment a list of enrolments
hideOnWeb
-
Returns Not null Boolean true if this discount is hidden from promotions list on website
isAvailableOnWeb
-
Returns Not null Boolean true if discount is available to students enrolling on website
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String the name of the discount. Will be displayed on the website as well.
predictedStudentsPercentage
-
Returns Not null BigDecimal predicted percentage of students using this discount
publicDescription
-
Returns String a description which may be displayed to students
rounding
After the discount is applied, different rounding options can be applied to the resulting amount.
-
Returns Not null MoneyRounding rounding mode for this discount
studentAge
The discount can be limited to students up to a certain age.
-
Returns String Maximum student age in years TODO: why does this return String?
studentEnrolledWithinDays
-
Returns Integer number of days from last enrolment student should not exceed to receive the discount
studentPostcode
The discount can be limited to students who live in certain postcodes. If more than one postcode is needed, separate them with commas ",".
-
Returns String one or more postcodes for the student’s address
studentPostcodes
-
Returns Not null List of [String] list of postcodes whose residents are eligible for this discount
totalDiscountExTax(from, to)
Get the total amount of discount (ex tax) applied to all invoices created in the date range. If you pass a null date in either option, then that part of the filter is not applied.
-
from Date the starting date of the range. This date will automatically be extended to the previous midnight @param to the ending date of the range. This date will automatically be extended to the next midnight @return total amount of discount ex tax
-
to Date the ending date of the range. This date will automatically be extended to the next midnight @return total amount of discount ex tax
-
Returns Not null def total amount of discount ex tax
totalDiscountIncTax(from, to)
Get the total amount of discount (including tax) applied to all invoices created in the date range. If you pass a null date in either option, then that part of the filter is not applied.
-
from Date the starting date of the range. This date will automatically be extended to the previous midnight @param to the ending date of the range. This date will automatically be extended to the next midnight @return total amount of discount inc tax
-
to Date the ending date of the range. This date will automatically be extended to the next midnight @return total amount of discount inc tax
-
Returns Not null Money total amount of discount inc tax
validFrom
If this value is null the discount doesn’t have a start date.
-
Returns Date the date before which the discount will not be applied
validTo
If this value is null the discount doesn’t have an expiry date.
-
Returns Date the date after which the discount will not be applied
DiscountConcessionType
Object representing relation between discount and concession type.
concessionType
-
Returns Not null ConcessionType linked concession type
createdOn
-
Returns Date the date and time this record was created
discount
-
Returns Not null Discount linked discount
modifiedOn
-
Returns Date the date and time this record was modified
DiscountCourseClass
Object representing relation between discount and course class.
classCost
-
Returns Not null ClassCost linked class cost record linked
courseClass
-
Returns Not null CourseClass linked class
createdOn
-
Returns Date the date and time this record was created
discount
-
Returns Not null Discount linked discount
discountedEnrolments(from, to)
Returns all the discounted enrolments in the related courseclasses created in the provided date ranged
-
from Date start of date range @param to end of date range @return discount enrolments in the related courseClass
-
to Date end of date range @return discount enrolments in the related courseClass
-
Returns def discount enrolments in the related courseClass
discountedInvoiceLines(from, to)
Returns all the invoicelines for enrolments in the related courseclasses created in the provided date ranged
-
from Date start of date range @param to end of date range @return invoicelines joined to discount enrolments in the related courseClass
-
to Date end of date range @return invoicelines joined to discount enrolments in the related courseClass
-
Returns def invoicelines joined to discount enrolments in the related courseClass
modifiedOn
-
Returns Date the date and time this record was modified
predictedStudentsPercentage
-
Returns BigDecimal predicted percentage of students using this discount
totalDiscountedValue(from, to)
Returns the total amount discounted for enrolments created in a given date range
-
from Date start of date range @param to end of date range @return total amount discounted
-
to Date end of date range @return total amount discounted
-
Returns def total amount discounted
DiscountMembership
Object representing relation between discount and membership.
applyToMemberOnly
-
Returns Not null Boolean true if discount can only be applied to the owner of the membership and can’t be applied to their related contacts
createdOn
-
Returns Date the date and time this record was created
discount
-
Returns Not null Discount linked discount
discountMembershipRelationTypes
-
Returns Not null List of DiscountMembershipRelationType list of contact relation types which can use the discount along with the membership owner
membershipProduct
-
Returns Not null MembershipProduct linked membership product
modifiedOn
-
Returns Date the date and time this record was modified
DiscountMembershipRelationType
Object representing relation between DiscountMembership object and contact relation type. Used to describe membership owner’s contact relations which can use linked discount along with them.
contactRelationType
-
Returns Not null ContactRelationType linked contact relation type
createdOn
-
Returns Date the date and time this record was created
discountMembership
-
Returns Not null DiscountMembership linked DiscountMembership object
modifiedOn
-
Returns Date the date and time this record was modified
Document
Document is a file (like text document, image, pdf, etc.) which can be attached to different types of records in onCourse. Documents can have multiple versions allowing to track historic information for RTO compliance purposes.
createdOn
-
Returns Date the date and time this record was created
currentVersion
-
Returns DocumentVersion latest version of this document
description
-
Returns String text description of this document
fileUUID
Unique file identifier is assigned to every document stored in Amazon S3. This id is used to generate HTTP links to the document.
-
Returns String unique id for this attachment in Amazon S3 storage
isRemoved
-
Returns Not null Boolean true if the document has been marked as removed
isShared
-
Returns Not null Boolean true if document can be attached to multiple records at once
link
-
Returns String Documentation not yet available
linkOnCourse
Generates URL to access file.
for 'Public' documents it is static address taht can be acceassable in any time. for non 'Public' documents generate signed link which can be used in next 10 minutes only
-
Returns String Documentation not yet available
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String name of this document
tags
-
Returns Not null List of Tag The list of tags assigned to document
versions
-
Returns Not null List of DocumentVersion historical list of versions of this document
webVisibility
-
Returns Not null AttachmentInfoVisibility visibility setting for this document: private, public, enrolled students and tutors or tutors only
isActive
-
Returns Boolean Documentation not yet available
DocumentVersion
Specific version of a document record stored in onCourse.
byteSize
-
Returns Long size of attachment in bytes
createdByUser
-
Returns Nullable SystemUser onCourse user who created this document version
createdOn
-
Returns Date the date and time this record was created
description
-
Returns String description of this document version
displayableSize
-
Returns String displayble size of attachment in bytes
document
-
Returns Not null Document linked document
fileName
-
Returns String default file name for this document version
hash
-
Returns String SHA-1 hash of the attachment file data
mimeType
-
Returns String MIME type of the attachment
modifiedOn
-
Returns Date the date and time this record was modified
pixelHeight
-
Returns Integer height of the image attachment in pixels, null if attachment is not image
pixelWidth
-
Returns Integer width of the image attachment in pixels, null if attachment is not image
thumbnail
-
Returns byte[] 140x140 thumbnail of the image attachment, null if attachment is not image
timestamp
-
Returns Not null Date date and time when this document version was created
versionId
-
Returns String identifier of this document version used by Amazon S3 storage
EmailTemplate
Email template defines generic structure of an email suited for some particular purpose (enrolment confirmation, invoice, cancellation notice) which is meant to be filled in with specific data and sent out repeatedly. Email templates in onCourse use Groovy templates engine which uses Groovy language syntax.
bodyHtml
-
Returns String email HTML body template
bodyPlain
-
Returns String email plain text body template
createdOn
-
Returns Date the date and time this record was created
entity
-
Returns String specific record type email is linked to (e.g. enrolment for enrolment confirmation)
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String name of this email template
subject
-
Returns String email subject
Enrolment
An enrolment joins a student to a class. There can be only one enrolment per student per class.
An enrolment doesn’t directly carry any financial information about the cost of the enrolment, however it might be linked to one or more invoice lines which you can interrogate to determine the cost, discounts and follow through to the invoice and payments. The join between InvoiceLine and Enrolment is one of the few places in onCourse where financial data touches educational data. This is a quite deliberate delineation between the two.
An enrolment also doesn’t carry information about attendance; there is an Attendance object which joins the Enrolment to each Session in the CourseClass.
If you are looking for Outcomes for each unit of competency (Module) undertaken by the Student, then of course follow the relation to Outcomes for this Enrolment.
allowedToPrint
-
Returns boolean true if this enrolment will be printed
attendanceType
-
Returns Not null CourseClassAttendanceType standard AttendanceTypes used for AVETMISS reporting in Victoria only
cancelWarningMessage
-
Returns String class cacellation warning message
classAttendancePercent
This is the percentage of the class time of the corresponding course class that the student attended during the whole sesssions time
-
Returns Integer attendace per cent as a number from 0 to 100
confirmationStatus
-
Returns Not null ConfirmationStatus enrolment confirmation email status: not sent, sent or suppressed from sending
courseClass
-
Returns Not null CourseClass linked class record
courseModules
-
Returns List of Module all modules belongs to the course this enrolment belongs to
createdOn
-
Returns Date the date and time this record was created
creditFOEId
-
Returns String
creditLevel
-
Returns CreditLevel highest level of prior VET study
creditOfferedValue
-
Returns String
creditProvider
-
Returns String
creditProviderType
-
Returns CreditProviderType
creditTotal
creditType
-
Returns CreditType details of prior study for which credit/RPL was offered
creditUsedValue
-
Returns String
cricosConfirmation
-
Returns Nullable String
eligibilityExemptionIndicator
-
Returns Not null Boolean
feeHelpAmount
-
Returns Not null Money
feeHelpStatus
-
Returns EnrolmentVETFeeHelpStatus the VET Fee help status for this enrolment
feeStatus
-
Returns StudentStatusForUnitOfStudy code indicating student status
invoiceLines
-
Returns Not null List of InvoiceLine invoice lines related to this enrolment
modifiedOn
-
Returns Date the date and time this record was modified
originalInvoiceLine
-
Returns InvoiceLine original invoice line which was created during enrolment process. Such invoice line store original enrolment price, discount amount and other properties which usually uses by customers in reports, exports and other components.
originalInvoiceLine
-
Returns def original invoice line which was created during enrolment process. Such invoice line store original enrolment price, discount amount and other properties which usually uses by customers in reports, exports and other components.
outcomes
Non-VET classes will still have a single outcome for each enrolment, even though that outcome isn’t linked to a Module.
VET classes may have one or many outcomes. These outcomes are initially attached to the enrolment by creating one Outcome for each Module attached to the Course. However a user may remove and attach other Modules by creating or deleting Outcomes for this specific Enrolment.
-
Returns Not null List of Outcome a list of outcomes
quoteLines
-
Returns Not null List of [QuoteLine] quote lines related to this class
relatedFundingSource
Returns the funding source for this enrolment.
-
Returns Nullable FundingSource funding source used for this enrolment
source
Payment can be made in onCourse (office) or from the onCourse website (web).
-
Returns Not null PaymentSource where the payment for this enrolment was made
status
-
Returns EnrolmentStatus origin of this enrolment: website or onCourse
student
-
Returns Not null Student the student who enrolled
studentIndustryANZSICCode
-
Returns Integer ANZSIC standard code for industrial classification
studyReason
-
Returns Not null StudyReason standard set of values for AVETMISS reporting
suppressAvetmissExport
-
Returns Boolean true if enrolment is suppressed from appearing in AVETMISS export
surveys
-
Returns Not null List of Survey all survey results for this enrolment
trainingPlanDeveloped
-
Returns Boolean
vetClientID
-
Returns String
vetFeeExemptionType
-
Returns VETFeeExemptionType value for AVETMISS reporting
vetFeeIndicator
-
Returns Not null Boolean
vetFundingSourceStateID
An AVETMISS reporting requirement for the VET Funding source state ID of an enrolment. If the VET Funding source state ID is not overridden in the enrolment, this function will return the value from the class.
-
Returns String
vetIsFullTime
-
Returns Not null Boolean returns true if this is a full time enrolment
vetPurchasingContractID
An AVETMISS reporting requirement for the purchasing contract ID of an enrolment. If the purchasing contract ID is not overridden in the enrolment, this function will return the value from the class.
-
Returns String
vetPurchasingContractScheduleID
-
Returns String default value of vet purchasing contact schedule ids of related outcomes
vetTrainingContractID
-
Returns String
hasAttendance
-
Returns boolean true if related attendances exist for this enrolment
EnrolmentFieldConfiguration
A field configuration which is used to collect enrolment information
createdOn
-
Returns Not null Date the date and time this record was created
fieldHeadings
-
Returns Not null List of FieldHeading a list of all headings attached to this field configuration
fields
-
Returns Not null List of Field a sorted list of all fields attached to this field configuration
modifiedOn
-
Returns Not null Date the date and time this record was modified
name
-
Returns Not null String the name of this field configuration. Not shown to students anywhere.
EntityRelation
An Entity relation is a link between two records in onCourse. At the moment, Course and Product relations are the only ones implemented.
Typically you would not use this record directly, but instead use methods on (for exmample) the Course entity such as relatedCourses()
createdOn
-
Returns Not null Date the date and time this record was created
fromEntity
-
Returns Not null String type of entity on the left side of the relation
fromRecordId
-
Returns Not null Long id of the record on the left side of the relation
modifiedOn
-
Returns Not null Date the date and time this record was modified
relationType
-
Returns Not null EntityRelationType type of relation between entities
toEntity
-
Returns Not null String type of entity on the right side of the relation
toRecordId
-
Returns Not null Long id of record on the right side of the relation
EntityRelationType
considerHistory
When considering shopping cart actions, do we need to consider only the current shopping cart or should be look at all of the user’s history of purchases and enrolments?
-
Returns Not null Boolean true if we should consider history
createdOn
-
Returns Not null Date the date and time this record was created
description
-
Returns Nullable String the text description of this relation type
discount
-
Returns Nullable Discount a discount to apply to the record on the right side of the relation
entityRelations
-
Returns Not null List of EntityRelation the list of relationships
fromName
-
Returns Not null String the label name of record on the left side of the relation
isShownOnWeb
-
Returns Not null Boolean true if relation type is shown on web
modifiedOn
-
Returns Not null Date the date and time this record was modified
name
-
Returns Not null String the name of relation type
shoppingCart
During a checkout process, we might need to apply certain rules.
-
Returns Not null [EntityRelationCartAction] the cart action which should be applied to the record on the right
toName
-
Returns Not null String the label name of record on the right side of the relation
ExportTemplate
Export template describes the way records from onCourse are transformed into specific export format (XML, CSV, etc.) Export templates in onCourse rely on Groovy script for defining transformation logic.
body
-
Returns Not null String body of this export template
createdOn
-
Returns Date the date and time this record was created
entity
-
Returns Not null String type of entity this export template can be applied to
keyCode
-
Returns Not null String unique key code identifier of this export template
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String name of this export template
Field
Data collection rules {@link FieldConfigurationScheme} are made up of Fields. They are ordered and grouped with headings.
Note that some fields have special treatment in the user interface. For example validation on email address or date of birth, or autocomplete on suburb and postcode.
createdOn
-
Returns Not null Date the date and time this record was created
description
-
Returns Nullable String a description of the field is typically used for help or hover text in the UI
fieldConfiguration
Fields are grouped into FieldConfigurations
-
Returns Not null FieldConfiguration FieldConfiguration grouping of this field
fieldHeading
-
Returns Nullable FieldHeading the FieldHeading under which this Field is grouped
mandatory
-
Returns Not null Boolean true if this field is required to have a non-null value to validate the data collection
modifiedOn
-
Returns Not null Date the date and time this record was modified
name
-
Returns Not null String the name of the field is usually shown as a label in the UI
property
-
Returns Not null String a string property key which identifies which attribute this fields points to
FieldConfiguration
Data collection rules {@link FieldConfigurationScheme} comprise several FieldConfigurations:
-
waiting list
-
enrolment
-
application
-
survey
A {@link FieldConfiguration} can be reused as part of several different schemes
createdOn
-
Returns Not null Date the date and time this record was created
fieldHeadings
-
Returns Not null List of FieldHeading a list of all headings attached to this field configuration
fields
-
Returns Not null List of Field a sorted list of all fields attached to this field configuration
modifiedOn
-
Returns Not null Date the date and time this record was modified
name
-
Returns Not null String the name of this field configuration. Not shown to students anywhere.
schemes
-
Returns Not null List of FieldConfigurationScheme all the schemes in which this configuration is used
FieldConfigurationScheme
Data collection rules {@link ish.oncourse.cayenne.FieldConfigurationScheme} comprise several FieldConfigurations:<br>
-
waiting list<br>
-
enrolment<br>
-
application<br>
-
survey<br>
A {@link ish.oncourse.cayenne.FieldConfiguration} can be reused as part of several different schemes. Although called {@link ish.oncourse.cayenne.FieldConfigurationScheme} here in the API, the user interface refers only to Data Collection Rules.
Each course is linked to a single scheme which then determines how forms are displayed to a student.
FieldConfiguration contains both FieldHeading and Field in a sorted order.
applicationFieldConfiguration
-
Returns ApplicationFieldConfiguration the field configuration used for applications
courses
-
Returns Not null List of Course a list of all courses attached. Careful, this could be a long list and isn’t paginated.
createdOn
-
Returns Not null Date the date and time this record was created
enrolFieldConfiguration
-
Returns EnrolmentFieldConfiguration the field configuration used for enrolments
modifiedOn
-
Returns Not null Date the date and time this record was modified
name
This is displayed in the UI when attaching a course to a scheme but never shown to students.
-
Returns Not null String The name of the scheme.
waitingListFieldConfiguration
-
Returns WaitingListFieldConfiguration the field configuration used for waiting lists
FieldHeading
Data collection rules {@link FieldConfigurationScheme} have zero or more headings under which the Fields are grouped.
createdOn
-
Returns Not null Date the date and time this record was created
description
The description is usually shown in the UI under the name, within some sort of border or panel
-
Returns Nullable String a description: it might be several paragraphs
fieldConfiguration
FieldHeadings are grouped into FieldConfigurations
-
Returns Not null FieldConfiguration
fields
-
Returns Not null List of Field a sorted list of the fields under this heading
modifiedOn
-
Returns Not null Date the date and time this record was modified
name
-
Returns Not null String the name of the heading is usually shown in a large font in the UI
FundingSource
active
-
Returns Not null Boolean true if active
createdOn
-
Returns Nullable Date the date and time this record was created
enrolments
-
Returns Not null List of Enrolment enrolments created using this funding source
flavour
-
Returns Not null ExportJurisdiction flavour of this funding source
modifiedOn
-
Returns Nullable Date the date and time this record was modified
name
-
Returns Not null String name of this funding source
FundingUpload
createdOn
-
Returns Nullable Date the date and time this record was created
fundingUploadOutcomes
-
Returns Not null List of FundingUploadOutcome Documentation not yet available
modifiedOn
-
Returns Nullable Date the date and time this record was modified
outcomeCount
-
Returns Nullable Long Documentation not yet available
status
-
Returns Not null FundingStatus Documentation not yet available
systemUser
-
Returns Not null SystemUser Documentation not yet available
FundingUploadOutcome
createdOn
-
Returns Nullable Date the date and time this record was created
endDate
-
Returns Not null LocalDate Documentation not yet available
fundingUpload
-
Returns Not null FundingUpload Documentation not yet available
modifiedOn
-
Returns Nullable Date the date and time this record was modified
outcome
-
Returns Not null Outcome Documentation not yet available
startDate
-
Returns Not null LocalDate Documentation not yet available
GradingItem
The GradingItem is one of the entry of grading type, if the grading entry type is entries. The GradingItem has next properties: - name - a lower bound which allows specifying the appropriate entry
createdOn
-
Returns Date the date and time this record was created
gradingType
-
Returns Not null GradingType a grading type which this item has related to
itemName
-
Returns Not null String name of this grading type
lowerBound
-
Returns Not null BigDecimal a lower bound of allowed range for the entry
modifiedOn
-
Returns Date the date and time this record was modified
GradingType
The GradingType allows to describe possible grading types. The description includes into itself: - name - min value of allowed range - max value of allowed range - entry type: numberic or entries. If the entry type of grading is entries the grading type will have list of graiding items.
createdOn
-
Returns Date the date and time this record was created
entryType
-
Returns Not null [GradingEntryType] entry type
gradingItems
-
Returns Not null List of GradingItem list of grading items, which related to this type
maxValue
-
Returns Not null BigDecimal max allowed value for this grading type
minValue
-
Returns Not null BigDecimal min allowed value for this grading type
modifiedOn
-
Returns Date the date and time this record was modified
typeName
-
Returns Not null String name of this grading type
Import
Import describes the way some external format (XML, CSV, etc.) can be transformed into onCourse records. Imports in onCourse rely on Groovy script for defining transformation logic.
createdOn
-
Returns Date the date and time this record was created
keyCode
-
Returns Not null String the unique keycode for this import
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String the visible name for this import in the UI
script
-
Returns Not null String The groovy script which processes the import
Invoice
Invoices are where the accounting side of onCourse meets the training and delivery parts of the database. Invoices can be created to any contact. The financial data on them is immutable, that is the dates and dollar amounts cannot be modified after creation.
Invoice lines may join to enrolments or products for sale.
Negative invoices represent credit notes.
enrolmentsPerStudent
Builds a list of enrolments from the invoice lines mapped per student.
-
Returns Not null Map of Student, Enrolment a map of enrolments (values as Collection) per student (keys)
contact
This is the contact to whom the invoice was issued. They are liable for the debt this invoice represents. Note that the invoice contact might not be the same contact as the person enrolled in classes linked to invoice lines.
-
Returns Not null Contact to whom the invoice was issued
debtorsAccount
-
Returns Not null Account
enrolmentsWithStatus(enrolmentStatus)
-
enrolmentStatus EnrolmentStatus Documentation not yet available
-
Returns Not null List of Enrolment a list of enrolments with a specified status
invoiceLines
-
Returns Not null List of InvoiceLine list of invoice line records linked to this invoice
paymentInLines
Follow this join to find all payments made against this invoice. Remember that onCourse supports multiple payments against one invoice and also partial payments against an invoice, so you can follow this join to many payments and some of those payment may also link to other invoices.
-
Returns Not null List of PaymentInLine all payementInLines against this invoice
paymentLines
Get a list of paymentInLines and paymentOutLines linked to this invoice
-
Returns Not null List of [PaymentLineInterface] all paymentLines against this invoice
paymentOutLines
If this invoice was a credit note, then a PaymentOut (or several) might be linked against it.
-
Returns Not null List of PaymentOutLine all payementOutLines against this invoice
printHeading
Prints 'Tax Invoice' or 'Credit Note' depending on the amount owing on this invoive
-
Returns def invoice print heading
unpaidInvoiceDueDates
-
Returns def all unpaid InvoiceDueDates for this Invoice
hasNonTaxableInvoiceLines
-
Returns def Documentation not yet available
hasTaxableInvoiceLines
-
Returns def
InvoiceDueDate
Object representing single payment due date of a payment plan.
amount
-
Returns Not null Money amount due to be paid
createdOn
-
Returns Nullable Date the date and time this record was created
dueDate
-
Returns Not null LocalDate the date when payment is due
invoice
-
Returns Not null Invoice invoice record linked to this
modifiedOn
-
Returns Nullable Date the date and time this record was modified
unpaidAmount
-
Returns def amount that still unpaid for the associate invoice
InvoiceLine
account
-
Returns Not null Account account linked to this invoice line
courseClass
-
Returns Not null CourseClass class linked to this invoice line
enrolment
-
Returns Enrolment enrolment linked to this invoice line
invoiceLineDiscounts
-
Returns Not null List of InvoiceLineDiscount list of discounts linked to this invoice line
productItems
-
Returns Not null List of ProductItem product items linked to this invoice line
voucherPaymentIn
-
Returns Not null List of VoucherPaymentIn voucher payment records linked to this invoice line
isTaxableAccount
Is it possible for tax to be applied to this account? For now this is a simplistic test: liability and asset accounts cannot have tax applied.
-
Returns def true if tax could be applied
InvoiceLineDiscount
Object representing relation between InvoiceLine and Discount.
createdOn
-
Returns Date the date and time this record was created
discount
-
Returns Not null Discount linked discount
invoiceLine
-
Returns Not null InvoiceLine linked invoice line
modifiedOn
-
Returns Date the date and time this record was modified
Language
This table is read-only since it is updated through an automated process, pulling changes and new records from an onCourse update service. That data is turn is fed from updates to the ABS (Australian Beureau of Statistics) reference data.
Note that the ABS will sometimes remove entries, however we will always preserve historic records.
absCode
-
Returns String The language code defined by the ABS
createdOn
-
Returns Date the date and time this record was created
isActive
When older languages are removed from the government standards list, they aren’t deleted here but just disabled.
-
Returns Not null Boolean whether this language is still available for use
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String the name of the language
Membership
A persistent class mapped as "Membership" Cayenne entity.
confirmationStatus
-
Returns Not null ConfirmationStatus confirmation email sending status: not sent, sent or suppressed from sending
contact
-
Returns Not null Contact contact who owns this product item
createdOn
-
Returns Date the date and time this record was created
expiryDate
-
Returns Date date when product item (e.g. membership) expires
invoiceLine
-
Returns Not null InvoiceLine purchase invoice line for this product item
modifiedOn
-
Returns Date the date and time this record was modified
product
-
Returns Not null Product product type of this item
status
-
Returns ProductStatus current status of this product item: active, cancelled, credited, redeemed, expired or delivered
MembershipProduct
A persistent class mapped as "MembershipProduct" Cayenne entity.
discountMemberships
-
Returns Not null List of DiscountMembership relational object mapping this object to the Discount used to purchase it
discountsAvailable
-
Returns Not null List of Discount Discounts available to be used with purchase of this Membership
Message
A message sent to a Contact record can represent an SMS, email or postal document. A Message might be sent as email, SMS or post all at the same time and be delivered by two or more of those means to the same users. It is possible for a Message to sent to a single Contact or to thousands.
Email and SMS messages are queued on the onCourse server and delivered in the background in a batch process every minute or so.
contact
-
Returns Not null Contact the contact to whom the message will be delivered
createdBy
-
Returns Not null SystemUser the SystemUser who created the message
createdOn
-
Returns Date the date and time this record was created
creatorKey
-
Returns Nullable String specific key of the message. It can be set in scripts.
destinationAddress
This field will be null for postal messages, contain a mobile phone number for SMS or email address for email messages
-
Returns Not null String a destination address
emailBody
If this message is an email, this returns the plaintext body. Although it is possible to send an email with an html part only, it is recommended that you always send a plaintext part as well in order to support all users with different devices.
-
Returns String plaintext message
emailFrom
-
Returns String a properly formatted email address
emailHtmlBody
If this message is an email, this returns the html body. It is possible for this part to be null or empty even if the message is an email, in which case only the plaintext message will be sent.
-
Returns String html message
emailSubject
If this message is an email, this must contain a not empty subject string
-
Returns String subject
modifiedOn
-
Returns Date the date and time this record was modified
numberOfAttempts
-
Returns Not null Integer the number of times we attempted to deliver the message
postDescription
If this message is sent by snail mail (post), this contains a description of what was sent
-
Returns String a human entered description of the message
response
-
Returns String the response from the mail server or SMS gateway, if any
smsText
If this message is an SMS, this contains the text. If the text is longer than a standard SMS length, it will be delivered as two or more SMS messages, incurring additional charges
-
Returns String SMS content
status
-
Returns Not null MessageStatus the delivery status of this message
timeOfDelivery
-
Returns Date the time and date on which the message was delivered
type
-
Returns Not null MessageType a type representing email, SMS or post
Module
The Module class contains records from both modules (state based) and units of competetency (national) from the training.gov.au website. You cannot create or delete records in this table since they are automatically kept in sync with data from the official website.
courses
-
Returns Not null List of Course a list of courses linked to this module
createdOn
-
Returns Not null Date the date and time this record was created
creditPoints
Credit points may be issued for the award of this module.
-
Returns Nullable BigDecimal number of credit points as a decimal
expiryDays
Some modules are valid only for a certain period of time before they need to be renewed.
-
Returns Nullable Integer Number of days after award before expiry
fieldOfEducation
-
Returns Nullable String the NCVER 'Subject field of education' identifer code
isOffered
-
Returns Not null Boolean true if this module is offered by the college
modifiedOn
-
Returns Not null Date the date and time this record was modified
nationalCode
-
Returns String a unique code which could be issued by an educational governing body or created by the college
nominalHours
A number of hours in which this module is expected to be delivered.
-
Returns BigDecimal nominal hours
relatedCourses
-
Returns Not null List of Course courses related to this module
specialization
-
Returns Nullable String Documentation not yet available
title
-
Returns String title
type
-
Returns Not null ModuleType the educational accreditation type of module
Note
A Note is a freeform piece of text attached to another record. Each note is timestamped and we record who created it and when they did. Normally you’d set access rights so that most users can create but not edit notes in order to create a comprehensive audit trail.
changedBy
-
Returns SystemUser the user who last changed this note
createdOn
-
Returns Not null Date the date and time this record was created
modifiedOn
-
Returns Date the date and time this record was modified
note
-
Returns Not null String the text of the note itself
systemUser
-
Returns Not null SystemUser the user who created this note
Outcome
Outcomes are a relationship between a student and a Module/Unit of Competency and represents a student’s progress through training, and the result of their assessment. Typically an outcome is linked to a single enrolment, but it is possible for outcomes to be created which aren’t linked to an enrolment at all for recognition of prior learning.
actualEndDate
-
Returns LocalDate actual end date of outcome: depends on attendances and assessment submissions
actualStartDate
-
Returns LocalDate actual start date of outcome: depends on attendances and assessment submissions
certificate
All the certificates this outcome has ever been linked to. Be careful since this might return a large number of records. You might be better performing a query on the certificate entity to get just the results you need.
-
Returns Not null List of Certificate a list of certificates
code
-
Returns String the national code of this outcome. If it is not VET, then the code of the course or name of prior learning
createdOn
-
Returns Date the date and time this record was created
deliveryMode
An AVETMISS reporting requirement for the delivery mode of an outcome. TODO: review why this isn’t picking up the status from the class when this value is null
-
Returns DeliveryMode
endDate
-
Returns def end date and time of the outcome
enrolment
-
Returns Nullable Enrolment onCourse enrolment linked to the outcome
fundingSource
An AVETMISS reporting requirement for the funding source of an outcome. If the funding source is not overridden in the outcome, this function will return the value from the enrolment.
-
Returns ClassFundingSource funding source
hoursAttended
-
Returns Integer
markedByTutor
Tutors can login and mark outcomes for their students in onCourse portal
-
Returns Nullable Tutor the ID of a tutor who marked the outcome
markedByTutorDate
-
Returns Nullable Date date and time when outcome was marked by a tutor
modifiedOn
-
Returns Date the date and time this record was modified
module
-
Returns Nullable Module unit of competency linked to the outcome
name
-
Returns String the title of this outcome. If it is not VET, then the name of the course or prior learning
outcomeVetFundingSourceStateID
An AVETMISS reporting requirement for the funding source state ID of an outcome. Returns value from outcome even if it doesn’t override the same related enrolment property.
-
Returns String funding source state ID related to outcome
outcomeVetPurchasingContractID
An AVETMISS reporting requirement for the purchasing contract ID of an outcome. If the purchasing contract ID is not overridden in the outcome, this function will still return the value from the outcome instead of related enrolment property.
-
Returns String purchasing contract ID related to outcome
printedCertificate
-
Returns String 'Yes' if outcome linked to at least 1 printed and non-revoked certificate
priorLearning
PriorLearning is an outcome that was imported into onCourse from outside sources (e.g. different college) or was added manually without a link to existing enrolment
-
Returns Nullable PriorLearning PriorLearning ID
reportableHours
-
Returns BigDecimal
specificProgramIdentifier
-
Returns String specific program identifier used for NCVER reporting
startDate
-
Returns def start date and time of the outcome
status
An AVETMISS reporting requirement for the outcome status. If this payline was created from a classCost record, then this is Nonnull
-
Returns Not null OutcomeStatus outcome status
trainingPlanEndDate
-
Returns LocalDate end date of training plan
trainingPlanStartDate
-
Returns LocalDate start date of training plan
vetFundingSourceStateID
An AVETMISS reporting requirement for the funding source state ID of an outcome. If the funding source state ID is not overridden in the outcome, this function will return the value from the enrolment and if not set there from the class.
-
Returns String funding source state ID
vetPurchasingContractID
An AVETMISS reporting requirement for the purchasing contract ID of an outcome. If the purchasing contract ID is not overridden in the outcome, this function will return the value from the enrolment and if not set there from the class.
-
Returns String purchasing contract ID
vetPurchasingContractScheduleID
An AVETMISS reporting requirement for the purchasing contract schedule ID of an outcome. If the purchasing contract schedule ID is not overridden in the outcome, this function will return the value from the class.
-
Returns String VET purchasing contract schedule ID
PayLine
A persistent class mapped as "PayLine" Cayenne entity.
budgetedQuantity
If this payline was created from a classCost record, then this is the quantity budgeted. The amount might have been overriden, but this is the original value.
-
Returns Nullable BigDecimal value of original budget quantity
budgetedTaxValue
If this payline was created from a classCost record, then this is the amount budgeted for tax. The amount might have been overriden, but this is the original value. Tax is typically only applicable for contractors who charge GST. This is not PAYG tax.
-
Returns Nullable Money value of original budget tax
budgetedValue
If this payline was created from a classCost record, then this is the amount budgeted. The amount might have been overriden, but this is the original value.
-
Returns Nullable Money value of original budget
classCost
-
Returns Nullable ClassCost class cost associated to this payline
createdOn
-
Returns Not null Date the date and time this record was created
dateFor
-
Returns LocalDate the date this payline is for
description
A description derived from the class, course name and other data to show the recipient on a payslip.
-
Returns Nullable String description
modifiedOn
-
Returns Not null Date the date and time this record was modified
quantity
-
Returns Not null BigDecimal
session
If this payline is related to a specific session, you can retrieve it here.
-
Returns Nullable Session session
taxValue
-
Returns Not null Money the amount of tax against this payline
value
-
Returns Not null Money the value of this payline
PayRate
A persistent class mapped as "PayRate" Cayenne entity.
createdOn
-
Returns Not null Date the date and time this record was created
definedTutorRole
-
Returns Not null DefinedTutorRole the DefinedTutorRole this payrate is applied to
description
-
Returns String the description of this payrate
editedByUser
-
Returns Not null SystemUser the last user who has edited this record
modifiedOn
-
Returns Not null Date the date and time this record was modified
oncostRate
-
Returns Not null BigDecimal
rate
-
Returns Not null Money the rate of pay
type
-
Returns Not null ClassCostRepetitionType repition type of this payrate
validFrom
-
Returns Not null Date the date from when this payrate is valid
PaymentIn
A payment received by the college. Each payment can be linked to one or more invoices (or credit notes), and may partially pay an invoice or fully discharge the amount owing.
account
Returns the account this PaymentIn is payed in to
-
Returns def account associated with this payment
accountIn
This account is copied from the PaymentMethod object when the PaymentIn is created. We keep a copy here because the PaymentMethod account might change from time to time and we need to store the value at time of creation.
-
Returns Not null Account this is the asset account into which the payment is deposited
administrationCentre
Some sites can be designated as "administration centres" meaning that they are allowed to accept payments and perform banking functions. A user can choose their site when they log in and all payments created by them from that point are linked to that Site. This is then used to group payments when performing banking.
-
Returns Nullable Site the site which received the payment
amount
-
Returns Not null Money amount of money paid
chequeBank
-
Returns String bank information of a cheque
chequeBranch
-
Returns String branch information for a cheque
chequeDrawer
-
Returns String drawer name for a cheque
confirmationStatus
-
Returns Not null ConfirmationStatus confirmation email sending status: not sent, sent or suppressed from sending
createdBy
-
Returns Not null SystemUser user who created this payment
createdOn
-
Returns Date the date and time this record was created
creditCardClientReference
-
Returns Nullable String the onCourse payment gateway reference. This value will start with "W" for payments taken online.
dateBanked
-
Returns Nullable LocalDate date when payment was banked
gatewayReference
-
Returns String the reference code returned by the banking system
gatewayResponse
This is typically only useful for debugging since the data here can vary a lot.
-
Returns String the details of the response received from the banking system.
invoices
-
Returns Not null List of Invoice list of invoices linked to this payment record
modifiedOn
-
Returns Date the date and time this record was modified
payer
-
Returns Not null Contact contact who is the payer
paymentInLines
-
Returns Not null List of PaymentInLine list of payment lines linked to this payment
paymentLines
-
Returns Not null List of <<? extends PaymentLineInterface>> list of payment lines linked to this payment
paymentMethod
-
Returns Not null PaymentMethod the method used to make this payment
privateNotes
Private notes are typically not to be shared with the customer.
-
Returns String any private notes stored on the payment
reconciled
-
Returns Not null Boolean true if this payment is reconciled
reversalOf
-
Returns PaymentIn another payment instance which current payment reverses, null if this payment is not a reversal
reversedBy
A user can reverse a payment, which cancels it and reverses the general ledger transactions.
-
Returns Nullable PaymentIn payment in which reversed this payment, null if payment is not reversed
source
-
Returns Not null PaymentSource this records whether the payment was created online or in the office
status
During processing in onCourse payment undergoes a number of status changes until it settles on one of the final statuses. On creation payment receives NEW status immediately, after payment details are settled and processing begins payment is set to IN TRANSACTION status, then after processing is finished payment receives final status which may be one of the FAILED statuses or a SUCCESSFUL status.
-
Returns PaymentStatus current status of processing for this payment
statusString
Returns the PaymentStatus of this PaymentIn
-
Returns def PaymentStatus as a stringz`
voucherPayments
-
Returns Not null List of VoucherPaymentIn list of vouchers linked to this payments
isFinalised
See PaymentStatus for a list of statuses which are final.
-
Returns boolean true if the payment is in a final state which can no longer be changed
PaymentInLine
Payment line links payment with one or multiple invoices which are getting paid for.
account
-
Returns Not null Account account linked to this PaymentInLine
accountOut
-
Returns Not null Account
amount
-
Returns Not null Money amount of money paid against this particular invoice
createdOn
-
Returns Date the date and time this record was created
invoice
-
Returns Not null Invoice linked invoice record
modifiedOn
-
Returns Date the date and time this record was modified
payment
-
Returns Not null PaymentInterface linked payment record
paymentIn
-
Returns Not null PaymentIn linked payment record
payslip
-
Returns Not null Payslip
PaymentMethod
Payment methods are user definable ways that a payment might be taken. Typically you’d have cash, credit card, cheque, EFT as the basic payment methods. But you might add more such as "internal transfer" or perhaps different types of cheques to be handled and banked separately.
account
Each payment method is linked to an asset account into which the payment is deposited.
-
Returns Not null Account account linked with this payment method
active
A payment method which has already been used cannot be deleted, but it can be deactivated so it can no longer be used for future payments.
-
Returns Not null Boolean true if the method is active
bankedAutomatically
If set, this payment will be marked as banked immediately upon creation. This is useful for payments which are processed in real time, such as credit cards.
-
Returns Not null Boolean true is this method banks automatically
name
Each payment method can have an arbitrary name set.
-
Returns Not null String name of this payment method
reconcilable
If set, this payment will be marked as reconciled immediately upon creation.
-
Returns Not null Boolean true if reconcilable on creation
type
Return the special internal payment type. These payment types invoke special actions, such as opening a credit card processing window in a browser.
-
Returns Not null PaymentType internal payment type
PaymentOut
A payment or refund from college to someone else. Each payment can be linked to one or more invoices (or credit notes), and may partially pay an invoice or fully discharge the amount owing.
account
-
Returns def account linked with this PaymentOut
accountOut
-
Returns Not null Account account linked with this PaymentOut
administrationCentre
Some sites can be designated as "administration centres" meaning that they are allowed to accept payments and perform banking functions. A user can choose their site when they log in and all payments created by them from that point are linked to that Site.
-
Returns Not null Site the site which issued the PaymentOut
amount
-
Returns Not null Money amount of money paid
chequeBank
-
Returns String
chequeBranch
-
Returns String
chequeDrawer
-
Returns String
chequeNumber
-
Returns String
confirmationStatus
-
Returns Not null ConfirmationStatus confirmation email sending status: not sent, sent or suppressed from sending
contact
-
Returns Not null Contact contact who receives the payment
createdBy
-
Returns Not null SystemUser user who created this payment
createdOn
-
Returns Date the date and time this record was created
dateBanked
-
Returns Nullable LocalDate date when payment was banked
gatewayReference
-
Returns String payment reference code in the banking system
modifiedOn
-
Returns Date the date and time this record was modified
payee
-
Returns Not null Contact contact who receives the payment
paymentDate
-
Returns Not null LocalDate
paymentInGatewayReference
-
Returns String
paymentLines
-
Returns Not null List of <<? extends PaymentLineInterface>> list of linked payment lines
paymentMethod
-
Returns Not null PaymentMethod the method used to make this payment
paymentOutLines
-
Returns Not null List of PaymentOutLine list of payment lines linked to this payment
privateNotes
Private notes are typically not to be shared with the customer.
-
Returns String any private notes stored on the payment
reconciled
-
Returns Not null Boolean true if this payment has been reconciled
status
During processing in onCourse payment undergoes a number of status changes until it settles on one of the final statuses. On creation payment receives NEW status immediately, after payment details are settled and processing begins payment is set to IN TRANSACTION status, then after processing is finished payment receives final status which may be one of the FAILED statuses or a SUCCESSFUL status.
-
Returns PaymentStatus current status of processing for this payment
statusString
-
Returns def the display name of the PaymentOut status
type
-
Returns Not null String payment method name
PaymentOutLine
Payment line links payment with one or multiple invoices which are getting paid for.
accountIn
-
Returns Not null Account account linked to this invoice line
amount
-
Returns Not null Money amount of money paid against this particular invoice
createdOn
-
Returns Date the date and time this record was created
invoice
-
Returns Not null Invoice linked invoice record
modifiedOn
-
Returns Date the date and time this record was modified
payment
-
Returns Not null PaymentInterface linked payment record
paymentOut
-
Returns Not null PaymentOut linked payment record
Payslip
A payslip is a collection of paylines for a specific tutor, generated at one time. They can be altered until exported after which the numerical data within the paylines is immutable.
Payslips are generated either from a specific set of classes, or across the whole college. In either case, the user specifies an end-date and paylines are only generated for payments until that date.
contact
-
Returns Not null Contact the contact for the tutor this payslip belongs to
createdOn
-
Returns Not null Date the date and time this record was created
modifiedOn
-
Returns Not null Date the date and time this record was modified
notes
-
Returns Nullable String public notes appended to this payslip
payType
The payslip can be either for an employee (payroll) or contractor (invoice)
-
Returns Not null PayslipPayType a pay type
paylines
-
Returns Not null List of PayLine all paylines attached to this payslip
privateNotes
-
Returns Nullable String private notes appended to this payslip
status
-
Returns Not null PayslipStatus the workflow status of the payslip
Preference
Preferences are key-value entities containing settings defining onCourse behavior in various situations.
createdOn
-
Returns Date the date and time this record was created
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String name of the preference
uniqueKey
-
Returns String unique key of the preference (equal to name if non user specific preference)
user
-
Returns SystemUser onCourse user to whom preference belongs, null if non user specific preference
value
-
Returns byte[] preference value in binary form
valueString
-
Returns String preference string value
PriorLearning
Student’s prior learning record.
createdOn
-
Returns Date the date and time this record was created
modifiedOn
-
Returns Date the date and time this record was modified
notes
-
Returns String notes linked to this prior learning record
qualification
-
Returns Nullable Qualification qualification linked to this prior learning record
student
-
Returns Not null Student student linked to this prior learning record
Product
Product is an abstract entity describing product type which can be sold through onCourse. Currently this includes article, membership and voucher.
createdOn
-
Returns Date the date and time this record was created
description
-
Returns String description of this product type
expiryDays
-
Returns Integer number of days after purchase product is valid
expiryType
-
Returns ExpiryType expiry type of this product type
feeGST
-
Returns Money GST tax amount for this product type
incomeAccount
-
Returns Not null Account income account linked to this product type
isOnSale
-
Returns Not null Boolean true if this product can be currently purchased
isWebVisible
-
Returns Not null Boolean true if this product type can be purchased on website
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns String name of this product type
notes
-
Returns String Documentation not yet available
priceExTax
-
Returns Money price for this product type excluding tax
productItems
-
Returns Not null List of ProductItem product items of this product type
relatedCourses
-
Returns Not null List of Course courses related to this product type
sku
-
Returns Not null String SKU of this product type
tax
-
Returns Not null Tax tax linked to this product type
taxAdjustment
-
Returns Not null Money tax adjustment value (used for rounding)
ProductItem
ProductItem is an abstract entity describing product item which has been sold through onCourse. Currently this includes articles, memberships and vouchers.
confirmationStatus
-
Returns Not null ConfirmationStatus confirmation email sending status: not sent, sent or suppressed from sending
contact
-
Returns Not null Contact contact who owns this product item
createdOn
-
Returns Date the date and time this record was created
expiryDate
-
Returns Date date when product item (e.g. membership) expires
invoiceLine
-
Returns Not null InvoiceLine purchase invoice line for this product item
modifiedOn
-
Returns Date the date and time this record was modified
product
-
Returns Not null Product product type of this item
status
-
Returns ProductStatus current status of this product item: active, cancelled, credited, redeemed, expired or delivered
Qualification
The Qualification class contains records from both accredited courses (state based) and qualifications (national) from the training.gov.au website. You cannot create or delete records in this table since they are automatically kept in sync with data from the official website.
anzsco
-
Returns String ANZSCO code
courses
-
Returns Not null List of Course all courses linked to this qualification
createdOn
-
Returns Date the date and time this record was created
fieldOfEducation
-
Returns String the NCVER 'Subject field of education' identifer code
isOffered
-
Returns Not null Boolean true if this module is offered by the college
level
-
Returns String the level as a string
modifiedOn
-
Returns Date the date and time this record was modified
nationalCode
-
Returns String the national code. This value is unique.
nominalHours
-
Returns BigDecimal nominal hours
relatedCourses
-
Returns Not null List of Course courses related to this qualification
title
-
Returns String the qualification title
type
-
Returns Not null QualificationType the type of qualification (eg. accredited course, qualification, skill set)
Quote
Pre-invoice state
amountOwing
-
Returns Not null Money They shouldn’t have an owing amount because they can’t accept payments.
billToAddress
-
Returns Nullable String billing address for this quote
contact
This is the contact to whom the quote was issued. They are liable for the debt this quote represents. Note that the quote contact might not be the same contact as the person enrolled in classes linked to quote lines.
-
Returns Not null Contact to whom the quote was issued
createdByUser
The user who created this quote, or null if it was created through a web purchase.
-
Returns Nullable SystemUser internal user who created this quote
customerReference
Some arbitrary piece of text such as a PO number or customer reference which is displayed on the printed quote.
-
Returns Nullable String
dateDue
-
Returns Not null LocalDate the date on which this quote amount falls due
description
The quote description might be shown on printed reports or in emails.
-
Returns Nullable String quote description text
invoiceDate
-
Returns Not null LocalDate date when this quote was created
overdue
-
Returns Not null Money They shouldn’t have an overdue amount
quoteLines
-
Returns Not null List of [QuoteLine] list of quote line records linked to this quote
shippingAddress
-
Returns Nullable String shipping address for this invoice
title
-
Returns Nullable String Title of this Quote or null if it is not set
total
-
Returns Not null Money the total without tax
totalIncTax
-
Returns Not null Money the total of this quote including tax.
totalTax
-
Returns Not null Money the total amount of tax included in this quote
Report
Report template which can be printed or saved to PDF.
Reports are usually printed from onCourse user interface, but can also be generated from within a script. For example:
report {
keycode "ish.onCourse.studentDetailsReport"
records ObjectSelect.query(Contact).select(args.context)
}
Optionaly you can use extended list of arguments:
report {
keycode "ish.onCourse.studentDetailsReport"
entity "Contact"
records ObjectSelect.query(Contact).select(args.context)
background "backgroundName"
param "dateRange_from" : Date.parse("yyyy-MM-dd", "2016-01-01"), "dateRange_to" : Date.parse("yyyy-MM-dd", "2016-01-02")
}
'param' argument is Map<String, Object> which currently acceptable for dateRange_from/dateRange_to values.
This parameters are required for some reports when you need to determine reportable period (the same possibility presented on user interface).
If client app run in different time zone with server app you need to provide date range parameters
in corresponded server time zone to be sure that output report result will correct: Date.parse("yyyy-MM-dd Z", "2016-01-01 +1100")
If you want to print report from records source which has different type with report entity type (Account Transaction report from contacts records for example) then you need provide 'entity' (entity "Contact") parameter
Keep 'param' map as generic (Object data type) to possible extension of acceptable arguments in future.
'background' argument is name of available ReportOverlay records which stored in onCourse system.
This will return PDF report represented in binary format, which you can for example save to a file or send in an email as an attachment:
smtp {
from "test@test.com"
to "test@test.com"
subject "report example"
content "report printing example"
attachment "report.pdf", "application/pdf", report {
keycode "ish.onCourse.studentDetailsReport"
records ObjectSelect.query(Contact).select(args.context)
}
}
body
-
Returns Not null String body of this report
createdOn
-
Returns Date the date and time this record was created
data
-
Returns Not null byte[] report content as byte array
description
-
Returns String description of this report
entity
-
Returns Not null String root entity for this report
followingReports
A report can be set to automatically chain another report to immediately follow it and print together.
-
Returns Nullable String the keycode of another report which follows this one
isVisible
-
Returns Not null Boolean true if report is shown in the print dialog selection list (mainly used to hide subreports)
keyCode
-
Returns Not null String unique key code of this report
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String name of this report
pageBreakType
Reports can be a list type where every record appears right after the previous, breaking pages only when we run out of paper. Or they can have a page break after each record. For example, each invoice might start on a new page.
-
Returns Nullable PageBreakType the type of page breaking for this report
report
-
Returns Nullable String report as string
tags
-
Returns Not null List of Tag The list of tags assigned to report
ReportOverlay
A report can be printed with an overlay to add logos, headers or other graphics. More correctly this 'overlay' is an 'underlay' since it is added to the output PDF underneath the report itself.
A user can print any report with any overlay, and onCourse will default to the last overlay used by each user.
Common overlays are 'letterhead' for invoices and a certificate background with logos and signatures.
createdOn
-
Returns Date the date and time this record was created
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String the name of the overlay which appears in the user interface
overlay
Overlays are stored in the database as a PDF.
-
Returns byte[] the binary PDF data
isPortrait
-
Returns Boolean Documentation not yet available
Room
A room in a location in which training is delivered. It may be a virtual room (linked to a virtual site) or a physical location.
Every site must have at least one room.
courseClasses
Use of this method is discouraged since it can return a very large number of objects. Instead consider a query to find only the records you require.
-
Returns Not null List of CourseClass all courseclasses held or to be held in this room
createdOn
-
Returns Date the date and time this record was created
directions
Directions should be relative to the site. That is, a person arrives at the site by public transport or driving and then these directions will get them from the site to the room itself.
-
Returns String directions (rich text)
facilities
-
Returns String facilities available in this room (not usually made public)
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String The public name for this room. For example "The great hall" or "Room 143"
seatedCapacity
-
Returns Not null Integer The number of people this room holds.
sessions
Use of this method is discouraged since it can return a very large number of objects. Instead consider a query to find only the records you require.
-
Returns Not null List of Session all sessions held or to be held in this room
site
-
Returns Not null Site The site in which this room is located
tags
-
Returns Not null List of Tag The list of tags assigned to room
Script
Definition of script instance. onCourse supports scripts written in Groovy programming language. Scripts can be executed on demand or scheduled to be executed at certain time (cron schedule) or when certain event happens (record creation/removal, new enrolment etc.) onCourse has variety of pre defined scripts to satisfy common needs but also allows users to add their own scripts to solve specific problems.
createdOn
-
Returns Date the date and time this record was created
cronSchedule
-
Returns String cron schedule for this script
enabled
-
Returns Not null Boolean true if this script is enabled
entityClass
-
Returns String name of entity whose change triggers this script
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String name of this script
script
-
Returns Not null String script content
Session
Sessions represent the classroom sessions a student attends when enrolled in a class. Sessions are a timetabled event. Not all classes have sessions. Self paced classes will no related sessions attached to them.
activeAttendances
-
Returns Not null List of Attendance attendance records for all SUCCESS enrolments
attendance
-
Returns Not null List of Attendance attendance records for all students/tutors enrolled/teaching this session
course
This is just a convenience to save having to write session.courseClass.course
-
Returns Not null Course the course related to this session
courseClass
-
Returns Not null CourseClass the class related to this session
createdOn
-
Returns Date the date and time this record was created
durationHoursPart
-
Returns Integer number of round hours of this session duratiom
durationInHours
-
Returns BigDecimal the duration of this session in hours
durationMinutesPart
-
Returns Integer number of round minutes of this session duratiom
end
-
Returns LocalDateTime JSR-310 compatible end date time of the session
endDatetime
-
Returns Date the end time for this session
modifiedOn
-
Returns Date the date and time this record was modified
modules
-
Returns Not null List of Module all modules delivered as part of the training plan
payLines
-
Returns Not null List of PayLine payroll entries for this session
payableDurationInHours
-
Returns BigDecimal duration in hours depending on TutorAttendances
privateNotes
-
Returns String private notes for this session
publicNotes
-
Returns String public notes (rich text)
room
-
Returns Nullable Room the room in which the session is held
sessionTutors
-
Returns Not null List of TutorAttendance list of tutors attendances, related to this session
start
-
Returns LocalDateTime JSR-310 compatible start date time of the session
startDatetime
-
Returns Date the start time for this session
timeZone
Every session has a natural timezone which is derived from the site in which that session is delivered. For sessions not linked to a room or site, the default timezone for the college is returned.
Note that on the onCourse website, virtual sessions (eg. online delivery) will be shown in the browser’s local timezone.
-
Returns TimeZone timezone
tutors
-
Returns Not null List of Tutor all tutors delivering this session
hasModule(module)
Returns true
when session linked to specified module.
-
module Module module to search @return if session linked to specified module
-
Returns boolean if session linked to specified module
SessionModule
Object representing relation between session and module.
createdOn
-
Returns Date the date and time this record was created
modifiedOn
-
Returns Date the date and time this record was modified
module
-
Returns Not null Module linked module
moduleEndDate
-
Returns def the date of the last sessions that this module is attached to
moduleStartDate
-
Returns def the date of the first sessions that this module is attached to
session
-
Returns Not null Session linked session
tutorNames
-
Returns def a list of all tutors delivering this session
Site
A Site is a location where training occurs or payments are received (an administrative site). A virtual site can be used for online training.
A site has latitude and longitude and directions, and contains one or more rooms in which training is delivered. Even if a site contains only a single room, it is important to create both the site and room.
country
-
Returns Nullable Country the country of this site
createdOn
-
Returns Date the date and time this record was created
drivingDirections
-
Returns String driving directions for the site (rich text)
isAdministrationCentre
An administration centre is a site which is used for the collection of money. When cash or cheques are receipted, they are linked to a particular administration centre so that banking can be performed separately for each centre.
-
Returns Not null Boolean true if this is an admin centre
isShownOnWeb
-
Returns Not null Boolean whether this site is visible on the website in the /sites list
isVirtual
Virtual sites are a special online type for delivery of online training. Typically you would have just one of these.
-
Returns Not null Boolean true for virtual sites
latitude
Use for directions on your website and allowing students to find classes "near me"
-
Returns BigDecimal latitude of this site
localTimezone
Timezones are vital for interpreting the session times for delivery at a particular site. If you deliver in multliple timezones, your website will automatically detect the student timezone and adjust delivery times for online training.
-
Returns Not null String the timezone of the site
longitude
Use for directions on your website and allowing students to find classes "near me"
-
Returns BigDecimal longitude of this site
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String the public name for this site.
postcode
-
Returns String the postcode of the site
publicTransportDirections
-
Returns String public transport directions for the site (rich text)
rooms
A site must have at least one room. Even virtual sites have virtual rooms.
-
Returns Not null List of Room all the rooms located in this site
specialInstructions
-
Returns String special instructions are displayed on the website (rich text)
state
-
Returns String the state of the site (eg. NSW, VIC, QLD)
street
-
Returns String the street address of the site
suburb
-
Returns String the suburb of the site
tags
-
Returns Not null List of Tag The list of tags assigned to site
waitingLists
-
Returns Not null List of WaitingList all the waiting list records linked to this site
Student
A student is a type of contact who is able to be enrolled. Every Student object will be linked to exactly one Contact. Only student specific data is stored here: for all regular contact attributes and relationships, refer to the Contact object.
A contact can be both a student and tutor at the same time.
activeAttendances
-
Returns Not null List of Attendance attendance records for all SUCCESS enrolments
applications
-
Returns Not null List of Application applications made by this student
attendancePercent
-
Returns def the culmative attendance percentage for all sessions for all classes this student has been enrolled in
attendancePercent(start, end)
-
start Date Documentation not yet available
-
end Date Documentation not yet available
-
Returns Integer the culmative attendance for all sessions in a given date period
attendances
-
Returns Not null List of Attendance list of all attendance records for this student
certificates
-
Returns Not null List of Certificate list of all certificates awarded to this student
chessn
Commonwealth Higher Education Student Support Number
-
Returns String CHESSN number for this student
citizenship
-
Returns Not null StudentCitizenship the a value represneting the citzenship of this student for AVETMISS reporting
concessions
-
Returns Not null List of StudentConcession list of all concessions linked to this student
contact
-
Returns Contact contact record linked to this student
countryOfBirth
-
Returns Country country where student was born
countryOfResidency
-
Returns Country student’s country of residency
createdOn
-
Returns Date the date and time this record was created
disabilityType
-
Returns Not null AvetmissStudentDisabilityType a value representing the students disability status for AVETMISS reporting
englishProficiency
-
Returns Not null AvetmissStudentEnglishProficiency a value representing the students english proficiency for AVETMISS reporting
enrolments
-
Returns Not null List of Enrolment list of all enrolments (either successful, failed or cancelled) linked to this student
feeHelpEligible
-
Returns Not null Boolean true if the student is eligible for fee help
fullName
-
Returns Nullable String full name of the student, including the middle name if any.
highestSchoolLevel
-
Returns Not null AvetmissStudentSchoolLevel a value representing the students highest level of school completed for AVETMISS reporting
indigenousStatus
-
Returns Not null AvetmissStudentIndigenousStatus a value representing the students indigenous status for AVETMISS reporting
invoices
-
Returns Not null List of Invoice list of invoices linked to this student
isOverseasClient
-
Returns Not null Boolean true if this is an overseas client
isStillAtSchool
-
Returns Boolean true if this student is still at school
labourForceStatus
-
Returns Not null AvetmissStudentLabourStatus a value representing the students labour/work status for AVETMISS reporting
language
-
Returns Language the language spoken by this student
medicalInsurance
-
Returns String
modifiedOn
-
Returns Date the date and time this record was modified
passportNumber
-
Returns String passport number for this student
priorEducationCode
-
Returns Not null AvetmissStudentPriorEducation a value representing the students highest level of prior education for AVETMISS reporting
specialNeeds
-
Returns String special needs of this student
specialNeedsAssistance
-
Returns Boolean true if the student needs assistance
studentNumber
-
Returns Not null Long unique student number
tags
-
Returns Not null List of Tag a list of all the tags for this student
townOfBirth
-
Returns String where this student was born
uniqueLearnerIndentifier
-
Returns String
usi
-
Returns String the USI for this student
usiStatus
A verified USI can be validated against the government verification service.
-
Returns Not null UsiStatus the verification status fof the students USI
visaExpiryDate
-
Returns Date the date this students visa expires
visaNumber
-
Returns String the visa number of this student
visaType
-
Returns String the visa type of this student
waitingLists
-
Returns Not null List of WaitingList a list of all the waiting lists for this student
yearSchoolCompleted
-
Returns Integer the year this student left/completed schooling
StudentConcession
StudentConcessions are attributes of Students describing the properties of a particular ConcessionType held by that student.
For example, a student may hold a Senior’s Card with no expiry date (they aren’t getting younger), or a Centrelink unemployment benefit which expires a year after creation.
The main purpose of these concessions is to control the application of discounts.
authorisedBy
-
Returns Contact user who created concession
concessionNumber
Concession numbers are not validated by onCourse.
-
Returns String an identifier for the concession
concessionType
-
Returns Not null ConcessionType linked concession type
createdOn
-
Returns Date the date and time this record was created
expiresOn
-
Returns Date the date after which the conncession will not longer be valid
modifiedOn
-
Returns Date the date and time this record was modified
student
-
Returns Not null Student student to whom this concession belongs
Survey
Surveys are a record of student satisfaction with a particular enrolment. We score three different attributes: course, tutor and venue.
Each score is a value from 0 to 5.
We also store a net promoter score to measure loyalty, a public testimonial and a flag for whether that testimonial should be published.
comment
Where students are given the opportunity to record a comment, it is stored here. This comment is not intended to be shared publically.
-
Returns String comments made by student on survey
courseScore
-
Returns Not null Integer a score from 0-5 for the course and materials
createdOn
-
Returns Not null Date the date and time this record was created
enrolment
-
Returns Not null Enrolment the enrolment for which the student is reporting their results
modifiedOn
-
Returns Not null Date the date and time this record was modified
netPromoterScore
A net promoter score as a mark out of 10 as the answer to the question:
How likely is it that you would recommend our company/product/service to a friend or colleague?
It is designed to measure loyalty.
-
Returns Nullable Integer NPS as a value from 0-10
testimonial
The college admin staff may wish to edit student comments before displaying it publicly. The edited version will be available here.
-
Returns Nullable String public facing text which might be displayed on a website
tutorScore
-
Returns Not null Integer a score from 0-5 for the tutor(s)
venueScore
-
Returns Not null Integer a score from 0-5 for the room and site
visibility
Visibility of survey on a website or other location.
-
Returns Not null SurveyVisibility is this comment sharable
SurveyFieldConfiguration
A field configuration which is used to collect survey information
createdOn
-
Returns Not null Date the date and time this record was created
fieldHeadings
-
Returns Not null List of FieldHeading a list of all headings attached to this field configuration
fields
-
Returns Not null List of Field a sorted list of all fields attached to this field configuration
modifiedOn
-
Returns Not null Date the date and time this record was modified
name
-
Returns Not null String the name of this field configuration. Not shown to students anywhere.
SystemUser
These objects represent people who are allowed to log into onCourse.
canEditCMS
-
Returns Not null Boolean true if the user can log into the CMS
createdOn
-
Returns Date the date and time this record was created
defaultAdministrationCentre
-
Returns Not null Site default administration site for this user
-
Returns String the user’s email address
firstName
-
Returns Not null String the user’s first name
fullName(firstNameFirst)
-
firstNameFirst boolean flag which specify that first name is first or not @return full name of system user
-
Returns String full name of system user
fullName
Convenience method to return 'firstName lastName'
-
Returns def the user’s full name
isActive
-
Returns Not null Boolean true if the user is allowed to log into onCourse or the CMS
isAdmin
-
Returns Not null Boolean true if the user is an administrator who bypasses all access control checks
lastLoginIP
-
Returns String the IP address from which the user logged in last time
lastLoginOn
-
Returns Date the last time this user logged in
lastName
-
Returns Not null String the user’s last name
login
-
Returns Not null String the login name
modifiedOn
-
Returns Date the date and time this record was modified
passwordLastChanged
-
Returns Nullable LocalDate date of last password update
passwordUpdateRequired
-
Returns Not null Boolean true if user needs to update password on next log into onCourse
preferences
-
Returns Not null List of Preference preferences belonging to this user
Tag
A tag is a piece of arbitrary information which can be attached to many other types of objects. Tags are arranged hierarchically, and each tree of tags has a root node also called a "tag group" The tag group "Subjects" is special and always exists in every onCourse database.
The complete path to a tag is unique (that is, siblings cannot have the same tag name).
allChildren
The resulting map has the tag name as the key and the tag itself as a value.
-
Returns Not null Map of String, Tag map of children tags
childTags
-
Returns Not null List of Tag all the children of this tag @see Tag#getAllChildren()
contents
-
Returns String the description of the tag (rich text)
createdOn
-
Returns Date the date and time this record was created
generation
This method returns the 'depth' of the tag For example, calculating the generation on the tag 'Japanese' with the following path would return 2. 'Japanese' has parent 'Languages', which has the parent 'Subjects'
Subjects/Languages/Japanese
-
Returns int the depth of a tag
isWebVisible
-
Returns Not null Boolean true if this tag is visible on the website
modifiedOn
-
Returns Date the date and time this record was modified
name
-
Returns Not null String the name of the tag
parentTag
-
Returns Nullable Tag the parent of this tag
pathName
-
Returns Not null String full path name for this tag starting from root delimited with "-"
root
-
Returns Not null Tag the top-most tag of this tree. Also known as a tag group.
shortName
Tags can have a shorter name which is used in URLs on a website The short name must be unique amongst siblings. If the short name is null, then the long name is used for the URL.
-
Returns String the short name
siblings
This method gets all tags with the same parent as the current tag
-
Returns Not null List of Tag siblings of this tag
tagRequirements
-
Returns Not null List of TagRequirement all the requirements for this tag group
weight
A weight is an arbitrary number for determining ordering. The actual value of the weight should be ignored and this value should only be used for sorting.
-
Returns Integer weight
isMultipleFor(entity)
Some objects can have multiple tags from the same tag group attached to them. For example, a course may be tagged with both "Finance" and "Computing" subjects.
-
entity Class extends Taggable the entity which is being tagged @return true if multiple tags from the same group are allowed
-
Returns boolean true if multiple tags from the same group are allowed
isRequiredFor(entity)
The objects from some entities must be tagged with at least one tag from a certain tag group
-
entity Class extends Taggable the entity class which is being tagged @return true if a tag is required from the tag group this tag is part of
-
Returns boolean true if a tag is required from the tag group this tag is part of
isRoot
-
Returns boolean true if this tag is the top of the tree (the tag group)
isTagAncestor(anotherTag)
Determine whether this object is an ancestor of anotherTag
. Note: ancestor is the opposite of descendant!
-
anotherTag Tag - the node to search is ancestors on. @return true if this object is an ancestor of
anotherNode
-
Returns boolean true if this object is an ancestor of
anotherNode
TagRelation
Object representing relation between tag and entity record tagged with it.
createdOn
-
Returns Date the date and time this record was created
entity
-
Returns TaggableClasses entity type of the related record TODO: change the model to use the enum directly so we don’t need this hack
entityAngelId
-
Returns Not null Long angel id of the related record
modifiedOn
-
Returns Date the date and time this record was modified
tag
-
Returns Not null Tag linked tag
taggableClassesIdentifier
To be overridden returning a constant from the TaggableClasses enum.
-
Returns Nullable TaggableClasses
TagRequirement
Object representing requirements and limitations put on applicability of a tag to certain entity type, e.g. make tag mandatory or allow entity to have only one of certain type.
createdOn
-
Returns Date the date and time this record was created
entityClass
-
Returns Nullable Class extends Taggable class of entity this tag requirement applies to
entityIdentifier
-
Returns Not null TaggableClasses entity type identifier of entity this tag requirement applies to
isRequired
-
Returns Not null Boolean true if entity records are required to be tagged with at least one child tag of this tag
manyTermsAllowed
-
Returns Not null Boolean true if entity records are allowed to have more than one child of this tag simultaneously
modifiedOn
-
Returns Date the date and time this record was modified
tag
-
Returns Not null Tag linked tag
Tax
createdOn
-
Returns Date the date and time this record was created
description
-
Returns String
isGSTTaxType
-
Returns Not null Boolean
modifiedOn
-
Returns Date the date and time this record was modified
payableToAccount
-
Returns Not null Account
rate
-
Returns BigDecimal the rate of this tax expressed as a decimal (so a 10% tax would return 0.1)
receivableFromAccount
-
Returns Not null Account
taxCode
-
Returns Not null String
TrainingPackage
The Training Package class contains records from training packages (national) from the training.gov.au website. You cannot create or delete records in this table since they are automatically kept in sync with data from the official website.
createdOn
-
Returns Date the date and time this record was created
modifiedOn
-
Returns Date the date and time this record was modified
nationalISC
-
Returns String national ISC
title
-
Returns String the title of the training package
Tutor
A tutor is a type of contact who is able to deliver training. Every Tutor object will be linked to exactly one Contact. Only tutor specific data is stored here: for all regular contact attributes and relationships, refer to the Contact object.
A contact can be both a student and tutor at the same time.
contact
-
Returns Not null Contact the contact object linked to this tutor
courseClassRoles
-
Returns Not null List of CourseClassTutor list of class roles for this tutor
courseClasses
-
Returns Not null List of CourseClass all courseClasses linked via CourseClassTutor join
createdOn
-
Returns Date the date and time this record was created
dateFinished
-
Returns Date the termination date for this tutor
dateStarted
-
Returns Date the date this tutor was first hired
familyNameLegal
A tutor can have a different legal name to their regular publicised name. Use this one for official reports, like payroll.
-
Returns String legal last (family) name
givenNameLegal
A tutor can have a different legal name to their regular publicised name. Use this one for official reports, like payroll.
-
Returns String legal first name
modifiedOn
-
Returns Date the date and time this record was modified
payType
By default, what type of Payslip to create for tutor pay associated with this tutor. If NULL, then don’t create tutor pay at all.
-
Returns Nullable PayslipPayType
payrollRef
-
Returns String
resume
-
Returns String this tutor’s resume
sessions
This returns a list of every single session this tutor is teaching, past or present. For tutors with a lot of history, this could be slow, so perform a query instead for the specific data you need.
-
Returns Not null List of Session all sessions linked to this tutor
tags
-
Returns Not null List of Tag a list of all the tags for this tutor
tutorAttendances
This returns a list of every single session attendance this tutor has/had/will has.
-
Returns Not null List of TutorAttendance all tutor attendances linked to this tutor
wwChildrenCheckedOn
Working with children check was verified
-
Returns Nullable Date date of the check
wwChildrenExpiry
Working with children check was verified
-
Returns Nullable Date date that the verification expires and should be checked again
wwChildrenRef
Working with children check was verified
-
Returns Nullable String reference code from the WWC authority
wwChildrenStatus
Working with children check was verified
-
Returns Not null WorkingWithChildrenStatus current status of the check
TutorAttendance
This entity represents the relationship between a tutor and the sessions that comprise a CourseClass. They can be used to track whether tutor was present at a session (and for how long) and also whether they should be paid for delivery.
actualPayableDurationMinutes
-
Returns Integer actual payable duration of the attendance
approvedByUser
-
Returns Not null SystemUser user who approved this attendance
attendanceType
-
Returns Not null AttendanceType type of attendance
courseClassTutor
-
Returns Not null CourseClassTutor class-tutor relation object
createdOn
-
Returns Date the date and time this record was created
endDatetime
-
Returns Not null Date tutor attendance end date time (roster end date time)
markedByUser
-
Returns Not null SystemUser user who marked this attendance
modifiedOn
-
Returns Date the date and time this record was modified
note
-
Returns String private notes about attendance, to be seen only by the college staff
session
-
Returns Not null Session session linked to this attendance
startDatetime
-
Returns Not null Date tutor attendance start date time (roster start date time)
timeZone
-
Returns TimeZone time zone of session that was got from site of room
UnavailableRule
Rule determining period of time when room or tutor is unavailable.
allDay
-
Returns Not null Boolean if unavailability spans for the whole day
createdOn
-
Returns Date the date and time this record was created
endDateTime
-
Returns Not null Date end date and time of unavailability
explanation
-
Returns String explanation fot the unavailability
modifiedOn
-
Returns Date the date and time this record was modified
recurrenceInterval
-
Returns Integer unavailability repeat interval if custom repeat type is chosen
repetitionCount
-
Returns Integer number of times this rule will repeat
startDateTime
-
Returns Not null Date date and time when unavailability starts
untilDateTime
-
Returns Date date and time until unavailability is will be repeated
Voucher
A Voucher is an instance of a Voucher Product which is purchased by a particular contact
code
-
Returns String voucher code user is required to enter to use it
confirmationStatus
-
Returns Not null ConfirmationStatus confirmation email sending status: not sent, sent or suppressed from sending
contact
-
Returns Not null Contact contact who owns this product item
createdOn
-
Returns Date the date and time this record was created
expiryDate
-
Returns Date date when product item (e.g. membership) expires
invoiceLine
-
Returns Not null InvoiceLine purchase invoice line for this product item
modifiedOn
-
Returns Date the date and time this record was modified
product
-
Returns Not null Product product type of this item
redeemableBy
-
Returns Not null Contact contact who can redeem this voucher, null if voucher can be redeemed by anyone
redeemedCourseCount
-
Returns Integer for enrolment count vouchers - number of enrolments which have been purchased with this voucher, null for money vouchers
redemptionValue
-
Returns Money remaining money value of this voucher
source
-
Returns PaymentSource whether this voucher was purchased online or in the office
status
-
Returns ProductStatus current status of this product item: active, cancelled, credited, redeemed, expired or delivered
valueOnPurchase
-
Returns Money starting money value of this voucher when it was purchased
voucherPaymentsIn
A voucher can be redeemed mutiple times as long as the total does not exceed the total value of the voucher
-
Returns Not null List of VoucherPaymentIn all VoucherPaymentInLines joined to this voucher
voucherProduct
-
Returns Not null VoucherProduct the product which has been sold
VoucherPaymentIn
Object representing relation between voucher and payment record made using it.
createdOn
-
Returns Date the date and time this record was created
enrolmentsCount
-
Returns Integer number of enrolments purchased for enrolment count vouchers, null for money vouchers
invoiceLine
-
Returns InvoiceLine invoice line paid for with the voucher
modifiedOn
-
Returns Date the date and time this record was modified
paymentIn
-
Returns Not null PaymentIn linked payment record
status
-
Returns VoucherPaymentStatus status of this voucher payment
voucher
-
Returns Not null Voucher linked voucher record
VoucherProduct
The Voucher Product represents an item available for sale (through the office or on the website). When sold, a Voucher is created for the contact. So think of VoucherProduce as the template for what that voucher will look like once sold.
A voucher may be for a dollar amount or for a certain number of enrolments in particular courses.
Vouchers should be thought of as a storage of value. When sold, they do not create a tax invoice since they aren’t a taxable sale. They are only a way for a customer to store value with the college, similar to the student storing value in a bank account. For this reason, income is not posted to the GL on sale. Instead a liability is created which is extinguished only when the student redeems the voucher or the voucher expires.
courses
If getMaxCoursesRedemption() is not null, then this function will return a list of courses which can be redeemed using this voucher. If getMaxCoursesRedemption() is not null and this list is empty, then the voucher can be used against any enrollable class.
-
Returns Not null List of Course a list of courses into which the student can enrol
liabilityAccount
Vouchers are a liability when created. This method can return the account of the general ledger these liabilities are created in
-
Returns Not null Account the account joined to this voucher product
maxCoursesRedemption
If this value is not null, the voucher can be redeemed for one or more enrolments. If this value is not null, then getValue() will be null.
-
Returns Integer the maximum number of enrolments which can be redeemed with this voucher
underpaymentAccount
Vouchers which are redeemed for a value different to their sale price need to put the underpayment into an appropriate expense account.
-
Returns Account the account joined to this voucher product
value
If this value is not null, the voucher can be redeemed for a specific dollar value. If this value is not null, then getMaxCoursesRedemption() will be null.
If getMaxCoursesRedemption() is null and getValue() is also null, then the value of the Voucher on creation will be equal to the sale price. For example, if the voucher is sold for $100 then it will also be worth $100 in redemption value. This allows you to create VoucherProduct records which can be sold for any arbitrary value.
-
Returns Money a dollar value for this voucher
WaitingList
A waiting list represents a student’s interest in a course.
Typically students add themselves to a waiting list when they don’t want any of the class dates or locations currently on offer. Or just want to be reminded in the future for new availability.
course
-
Returns Not null Course the course the student is waiting for
createdOn
-
Returns Date the date and time this record was created
modifiedOn
-
Returns Date the date and time this record was modified
notes
-
Returns String internal notes created by the staff
sites
-
Returns Not null List of Site a list of preferred sites (can be empty)
student
-
Returns Not null Student the student who is waiting
studentCount
-
Returns Not null Integer the number of enrolments (including the primary student)
studentNotes
-
Returns String notes the student entered when creating the waiting list
WaitingListFieldConfiguration
A field configuration which is used to collect waiting list information
createdOn
-
Returns Not null Date the date and time this record was created
fieldHeadings
-
Returns Not null List of FieldHeading a list of all headings attached to this field configuration
fields
-
Returns Not null List of Field a sorted list of all fields attached to this field configuration
modifiedOn
-
Returns Not null Date the date and time this record was modified
name
-
Returns Not null String the name of this field configuration. Not shown to students anywhere.
III: Enumerations
These are Java classes which represent a list of options, where that list is hardcoded into the application and cannot be extended by the user. In normal use you would not care about the database value and instead use the enumeration by name. For example:
if (myAccount.type == AccountType.ASSET) {
# do something
}
AccountTransactionType
General ledger Account Transactions have a 'type' depending on which entity created them.
INVOICE_LINE
Database value: I Transaction attached to Invoice line (e.g. payments performed during Quick Enrol or web enrol)
PAYMENT_IN_LINE
Database value: P Transactions created by performing Payment In (e.g. payments for unpaid invoices)
PAYMENT_OUT_LINE
Database value: O Transactions created by performing Payment Out (e.g. payments for credit notes)
PURCHASE_LINE
Database value: U
DEPRECIATION
Database value: D
JOURNAL
Database value: J Transaction added using 'Create GL journal entry' from Financial menu
AccountType
General ledger accounts have a type that defines their behaviour. This has two main effects:
-
filtering the accounts so they are only available in appropriate places (eg. income for student fee)
-
ensuring negative and positive signs are applied properly to balanced transaction pairs
ASSET
Database value: 1
LIABILITY
Database value: 2
EQUITY
Database value: 3
INCOME
Database value: 4
COS
Database value: 5
COS is a type of expense.
EXPENSE
Database value: 6
ApplicationStatus
A basic workflow for applications. Each application moves through the statuses, resulting in scripts firing off emails and different behaviour in the skillsOnCourse portal.
Tags can be used for more detailed workflow and tracking of progress.
NEW
Database value: 0
Student applied for the class. Application is up for reviewing by college.
OFFERED
Database value: 1
College reviewed NEW student application and allowed an enrolment to class.
ACCEPTED
Database value: 2
Set automatically once student with OFFERED application enrol to the class.
REJECTED
Database value: 3
College reviewed NEW student application and rejected it.
WITHDRAWN
Database value: 4
OFFERED application was rejected by student.
IN_PROGRESS
Database value: 5
Status of un-actioned applications and new applications which are being assessed, but a judgement to offer or reject has not yet been made.
AttachmentInfoVisibility
Document visibility. Although the class is named AttachmentInfoVisibility it applies to the document itself.
PRIVATE
This document is only visible in the onCourse application. The document is viewable only using a time-limited and securely signed URL. This makes it harder for users to share the URL with other people.
TUTORS
These documents cannot be seen by the general public, but are available to tutors within the skillsOnCourse portal. You would commonly only use this visibility type for documents attached to courses and classes, or to tutors.
URLs to these documents are time-limited and securely signed. This makes it harder for users to share the URL with other people.
STUDENTS
These attachments cannot be seen by the general public, but are available to tutors and students enrolled in the course, typically within the skillsOnCourse portal. You would commonly only use this visibility type for attachments to courses and classes.
URLs to these documents are time-limited and securely signed. This makes it harder for users to share the URL with other people.
LINK
This document can be shared with a URL that is not time limited. A user with this link could share it with anyone.
PUBLIC
This document can be shared with a URL that is not time limited. A user with this link could share it with anyone. This document may also appear on the public facing website without any restrictions, depending on what it is attached to. For example, if attached to a Course it might appear on the course page.
AttachmentSpecialType
A special type of attachment. This will result in special behaviour inside onCourse.
PROFILE_PICTURE
The profile picture for a contact is seen in Quick Enrol, the contact edit view and within the skillsOnCourse portal. There can be only one of these attachments per Contact.
Database value: 0
AttendanceType
Attendance of a student or tutor at a session can be given a status.
UNMARKED
This attendance record has not yet been marked.
Database value: 0
ATTENDED
The student or tutor attended the session in full.
Database value: 1
DID_NOT_ATTEND_WITH_REASON
The student or tutor was absent and gave a suitable reason.
Database value: 2
DID_NOT_ATTEND_WITHOUT_REASON
The student or tutor was absent without good cause.
Database value: 3
PARTIAL
The student or tutor attended, but for less than the full duration. The attendance duration can be stored in another attribute in the Attendance record.
Database value: 4
AuditAction
Actions logged in Audits
CREATE
UPDATE
DELETE
SCRIPT_FAILED
SCRIPT_EXECUTED
COLLISION
API_TOKEN
AutomationStatus
Status of automations
NOT_INSTALLED
Database value: 0
Automation is not installed
INSTALLED_DISABLED
Database value: 1
Automation is installed but not enabled
ENABLED
Database value: 2
Automation is enabled
AvetmissStudentDisabilityType
A set of values for AVETMISS reporting from the version 7 standard. Consult the AVETMISS documentation for more detail about these options.
DEFAULT_POPUP_OPTION
Database value: 0
NONE
Database value: 100
HEARING
Database value: 1
PHYSICAL
Database value: 2
INTELLECTUAL
Database value: 3
LEARNING
Database value: 4
MENTAL
Database value: 5
BRAIN_IMPAIRMENT
Database value: 6
VISION
Database value: 7
MEDICAL_CONDITION
Database value: 8
OTHER
Database value: 9
AvetmissStudentEnglishProficiency
A set of values for AVETMISS reporting from the version 7 standard describing how well student speaks English. Consult the AVETMISS documentation for more detail about these options.
DEFAULT_POPUP_OPTION
Database value: 0
VERY_WELL
Database value: 1
WELL
Database value: 2
NOT_WELL
Database value: 3
NOT_AT_ALL
Database value: 4
AvetmissStudentIndigenousStatus
A set of values for AVETMISS reporting from the version 7 standard. Consult the AVETMISS documentation for more detail about these options.
DEFAULT_POPUP_OPTION
Database value: 0 Not stated
ABORIGINAL
Database value: 1 Aboriginal
TORRES
Database value: 2 Torres Strait Islander
ABORIGINAL_AND_TORRES
Database value: 3 Aboriginal and Torres Strait Islander
NEITHER
Database value: 4 Neither
AvetmissStudentLabourStatus
A set of values for AVETMISS reporting from the version 7 standard. Consult the AVETMISS documentation for more detail about these options.
DEFAULT_POPUP_OPTION
Database value: 0 Not stated
FULL_TIME
Database value: 1 Full-time employee
PART_TIME
Database value: 2 Part-time employee
SELF_EMPLOYED
Database value: 3 Self-employed, not employing others
EMPLOYER
Database value: 4 Employer
UNPAID_FAMILY_WORKER
Database value: 5 Employed - unpaid in family business
UNEMPLOYED_SEEKING_FULL_TIME
Database value: 6 Unemployed - seeking full-time work
UNEMPLOYED_SEEKING_PART_TIME
Database value: 7 Unemployed - seeking part-time work
UNEMPLOYED_NOT_SEEKING
Database value: 8 Not employed - not seeking employment
AvetmissStudentPriorEducation
A set of values for AVETMISS reporting from the version 7 standard. Consult the AVETMISS documentation for more detail about these options.
DEFAULT_POPUP_OPTION
Database value: 0 Not stated
BACHELOR
Database value: 1 Bachelor degree or higher degree level
ADVANCED_DIPLOMA
Database value: 2 Advanced diploma or associate degree level
DIPLOMA
Database value: 3 Diploma level
CERTIFICATE_IV
Database value: 4 Certificate IV
CERTIFICATE_III
Database value: 5 Certificate III
CERTIFICATE_II
Database value: 6 Certificate II
CERTIFICATE_I
Database value: 7 Certificate I
MISC
Database value: 8 Miscellaneous education
NONE
Database value: 100 None
AvetmissStudentSchoolLevel
A set of values for AVETMISS reporting from the version 7 standard. Consult the AVETMISS documentation for more detail about these options.
DEFAULT_POPUP_OPTION
Database value: 0 Not stated
DID_NOT_GO_TO_SCHOOL
Database value: 1
COMPLETED_YEAR_8_OR_BELOW
Database value: 2
COMPLETED_YEAR_9
Database value: 3
COMPLETED_YEAR_10
Database value: 4
COMPLETED_YEAR_11
Database value: 5
COMPLETED_YEAR_12
Database value: 6
BankingType
onCourse tracks the banking of payments in order to provide a proper audit trail of the cash flow into and out of the business. Different types of payments are grouped together for the purpose of banking and reconciliation against bank statements.
MANUAL
GATEWAY
AUTO_MCVISA
AUTO_AMEX
AUTO_OTHER
ClassCostFlowType
Each class cost has a type which determines its behaviour in the budget.
EXPENSE
Database value: 0
A regular expense in the budget, other than wages.
INCOME
Database value: 1
Additional funding other than class fees.
WAGES
Database value: 2
Money paid to tutors which will appear on the payroll export.
DISCOUNT
Database value: 3
Discounts expected to be offered.
ClassCostRepetitionType
Some class costs can be repeated multiple times for the one class. If these repetitions are attached to a payroll amount, then these repeating payroll entries will be created.
FIXED
Database value: 1
A fixed amount. For payroll, the amount will be paid once the first session has been delivered.
PER_SESSION
Database value: 2
This cost is a fixed amount per session. This is common for room hire where the amount doesn’t depend on the duration of the session.
PER_ENROLMENT
Database value: 3
A cost per enrolment (like class materials).
PER_UNIT
Database value: 4
This is just like the fixed amount but with a multiplier against an arbitrary number of units.
DISCOUNT
Database value: 5
Discounts are a special type. You can’t directly create these sorts of costs, but they are automatically created for you when you attach a discount to a class.
PER_TIMETABLED_HOUR
Database value: 6
Total session duration. For wages, this amount is the payable session hours, not the actual hours.
PER_STUDENT_CONTACT_HOUR
Database value: 7
Timetabled hours multiplied by the number of enrolments
ClassFundingSource
A set of values for AVETMISS reporting from the version 7 standard. Consult the AVETMISS documentation for more detail about these options.
COMMONWEALTH_AND_STATE_GENERAL
Database value: 0
Commonwealth and state - general recurrent
COMMONWEALTH_SPECIFIC
Database value: 1
Commonwealth - specific
STATE_SPECIFIC
Database value: 2
State - specific
DOMESTIC_FULL_FEE
Database value: 3
Domestic full fee paying student
INTERNATIONAL_FULL_FEE
Database value: 4
International full fee paying student. Revenue provided by or for an international client to undertake education and training and who temporarily resides in Australia and holds a student visa or a temporary residency permit, or who resides in an overseas country and whose funding source does not come from any of the other funding categories
INTERNATIONAL_ONSHORE
Database value: 6
International onshore client. Revenue provided by or for an international client to undertake education and training and who temporarily resides in Australia and holds a student visa or a temporary residency permit and whose funding source does not come from any of the other funding categories
INTERNATIONAL_OFFSHORE
Database value: 7
International offshore client. Revenue provided by or for an international client to undertake education and training and who resides in an overseas country and whose funding source does not come from any of the other funding categories
REVENUE_FROM_OTHER_TO
Database value: 5
Revenue from other RTO
ClientIndustryEmploymentType
A set of values for AVETMISS reporting for Victoria only. Consult the AVETMISS documentation for more detail about these options. See http://www.education.vic.gov.au/training/employers/industry/Pages/marketinfo.aspx for reference.
NOT_SET
Database value: 0
AGRICULTURE
Database value: 1
MINING
Database value: 2
MANUFACTURING
Database value: 3
ELECTRICITY
Database value: 4
CONSTRUCTION
Database value: 5
WHOLESALE
Database value: 6
RETAIL
Database value: 7
ACCOMODATION
Database value: 8
TRANSPORT
Database value: 9
MEDIA
Database value: 10
FINANCIAL
Database value: 11
RENTAL
Database value: 12
PROFESSIONAL
Database value: 13
ADMIN
Database value: 14
EDUCATION
Database value: 15
HEALTH
Database value: 16
ARTS
Database value: 17
OTHER
Database value: 18
ClientOccupationIdentifierType
A set of values for AVETMISS reporting for Victoria only. Consult the AVETMISS documentation for more detail about these options.
NOT_SET
Database value: 0
MANAGER
Database value: 1
PROFESSIONALS
Database value: 2
TECHNICIANS
Database value: 3
COMMUNITY
Database value: 4
CLERICAL
Database value: 5
SALES
Database value: 6
MACHINERY
Database value: 7
LABOURERS
Database value: 8
ConfirmationStatus
Records such as enrolment, invoice and application can be created from a website or onCourse interaction. Sometimes (such as in the QE window) a user can prevent email notifications to the student.
NOT_SENT
Database value: 1
An email for this record is not yet sent.
SENT
Database value: 2
An email for this record has been sent.
DO_NOT_SEND
Database value: 2
A user has chosen to prevent an email being sent for this record.
ContactDuplicateStatus
A set of values
POSSIBLE_MATCH
REJECTED_MATCH
IN_TRANSACTION
PROCESSED
ContactType
PLAIN_CONTACT
STUDENT
TUTOR
TUTOR_STUDENT
COMPANY
CourseClassAttendanceType
A set of values for AVETMISS reporting for Victoria only. Consult the AVETMISS documentation for more detail about these options.
OUA_AND_NOT_HIGHER_DEGREE_REASEARCH_STUDENT_USE
Database value: 0
For OUA and non-higher degree research student use only
FULL_TIME_ATTENDANCE
Database value: 1
Full-time attendance for: higher degree research student, higher education course completions for all full time students and VET student
PART_TIME_ATTENDANCE
Database value: 2
Part-time attendance for: higher degree research student, higher education course completions for all part time students and VET student
NO_INFORMATION
Database value: 9
No information
CourseClassType
Course class types
WITH_SESSIONS
Database value: 0
Usual class with sessions
DISTANT_LEARNING
Database value: 1
Self-paced class without sessions
HYBRID
Database value: 2
Hybrid class with sessions and self-paced class functionality
CourseEnrolmentType
Courses can either be applied for, or its classes can be directly enrolled in.
OPEN_FOR_ENROLMENT
Database value: 1
Allow students to enrol directly in classes for this course.
ENROLMENT_BY_APPLICATION
Database value: 2
Allow students to only apply for the class. Enrolment will be opened once the application is reviewed and accepted by college.
CreditCardType
Credit cards accepted by onCourse.
VISA
Database value: V
MASTERCARD
Database value: M
BANKCARD
AMEX
Database value: A
CreditLevel
Level of education of prior VET study for which credit/RPL was offered http://heimshelp.education.gov.au/sites/heimshelp/2015_data_requirements/2015dataelements/pages/563
NO_CREDIT_RPL_WAS_OFFERED_FOR_VET
Database value: 0
VOCATIONAL_GRADUATE_CERTIFICATE
Database value: 1
VOCATIONAL_GRADUATE_DIPLOMA
Database value: 2
ADVANCED_DIPLOMA
Database value: 411
STATEMENT_OF_ATTEINMENT_AT_ADVANCED_DIPLOMA_LEVEL
Database value: 412
BRIDGING_AND_ENABLING_COURSE_AT_ADVANCED_DIPLOMA
Database value: 415
DIPLOMA
Database value: 421
STATEMENT_OF_ATTEINMENT_AT_DIPLOMA_LEVEL
Database value: 422
BRIDGING_AND_ENABLING_COURSE_AT_DIPLOMA
Database value: 423
CERTIFICATE_4_LEVEL
Database value: 511
STATEMENT_OF_ATTEINMENT_AT_CERTIFICATE_4_LEVEL
Database value: 512
BRIDGING_AND_ENABLING_COURSE_AT_CERTIFICATE_4_LEVEL
Database value: 513
CERTIFICATE_3_LEVEL
Database value: 514
STATEMENT_OF_ATTEINMENT_AT_CERTIFICATE_3_LEVEL
Database value: 515
BRIDGING_AND_ENABLING_COURSE_AT_CERTIFICATE_3_LEVEL
Database value: 516
CERTIFICATE_2_LEVEL
Database value: 521
STATEMENT_OF_ATTEINMENT_AT_CERTIFICATE_2_LEVEL
Database value: 522
BRIDGING_AND_ENABLING_COURSE_AT_CERTIFICATE_2_LEVEL
Database value: 523
CERTIFICATE_1_LEVEL
Database value: 524
STATEMENT_OF_ATTEINMENT_AT_CERTIFICATE_1_LEVEL
Database value: 525
OTHER
Database value: 999
CreditProviderType
Type of provider where VET study was undertaken http://heimshelp.education.gov.au/sites/heimshelp/2015_data_requirements/2015dataelements/pages/564
NO_CREDIT_RPL_WAS_OFFERED_FOR_VET
Database value: 0
UNIVERSITY
Database value: 10
OTHER_HIGHER_EDUCATION_PROVIDER
Database value: 19
TAFE
Database value: 20
SECONDARY_SCHOOLS_OR_COLLEGES
Database value: 21
OTHER_REGISTERED_TRAINING_ORGANIZATIONS
Database value: 29
NOT_ELSEWHERE_CATEGORIZED
Database value: 90
CreditType
Details of prior study for which credit/RPL was offered http://heimshelp.education.gov.au/sites/heimshelp/2015_data_requirements/2015dataelements/pages/561
NO_CREDIT_RPL_WAS_OFFERED
Database value: 0
CREDIT_RPL_FOR_PRIOR_HIGHER_EDUCATION_STUDY_ONLY
Database value: 100
CREDIT_RPL_FOR_PRIOR_VET_STUDY_ONLY
Database value: 200
CREDIT_RPL_FOR_COMBINATION_OF_PRIOR_HIGHER_EDUCATION_AND_VET_STUDY
Database value: 300
CREDIT_RPL_FOR_STUDY_OUTSIDE_AUSTRALIA
Database value: 400
CREDIT_RPL_FOR_WORK_EXPERIENCE
Database value: 500
OTHER
Database value: 600
DataType
Data types for AutomationBinding records represent the type of data they can hold.
TEXT
Text value, also known as a String
Database value: 0
LONG_TEXT
Renders as a multiline field with three lines by default. No validation. Allows new lines.
Database value: 9
DATE
Date (without time or timezone)
Database value: 1
DATE_TIME
Date and time, includes a timezone (by default the same as the server timezone)
Database value: 2
BOOLEAN
Boolean (true or false)
Database value: 3
ENTITY
Entity (the objectclass of a record in the database)
Database value: 4
FILE
File (extra file for evaluate scripts)
Database value: 5
MONEY
Money value
Database value: 6
LIST
Choices list
Database value: 7
MAP
Map of label - code
Database value: 8
URL
String which is validated to be a URL.
Database value: 10
String which is validated to be a email address.
Database value: 11
MESSAGE_TEMPLATE
Message template drop down list.
Database value: 12
OBJECT
Extra bindings
Database value: 13
PATTERN_TEXT
Pattern text
Database value: 14
NUMBER
Number
Database value: 15
DeliveryMode
A set of values for AVETMISS reporting from the standard. Consult the AVETMISS documentation for more detail about these options.
Delivery mode can be set for the whole class, or individually per Outcome
NOT_SET
Database value: 0
Not Set
CLASSROOM
Database value: 1
Classroom-based
ONLINE
Database value: 2
Electronic-based
WORKPLACE
Database value: 3
Employment-based
OTHER
Database value: 4
Other delivery
NA
Database value: 9
Not applicable - recognition of prior learning/credit transfer
WA_LOCAL_CLASS
Database value: 11
WA: Local Class
WA_REMOTE_CLASS
Database value: 12
WA: Remote Class - Live Conferencing
WA_SELF_PACED_SCHEDULED
Database value: 13
WA: Self Paced - Scheduled
WA_SELF_PACED_UNSCHEDULED
Database value: 14
WA: Self Paced - Unscheduled
WA_EXTERNAL
Database value: 15
WA: External - Correspondence
WA_WORKPLACE
Database value: 16
WA: Workplace
WA_VIDEO_LEARNING
Database value: 18
WA: Video/Television Learning
WA_INTERNET_SITE
Database value: 19
WA: Internet Site - Online Learning
CLASSROOM_AND_ONLINE
Database value: 20
Classroom-based
CLASSROOM_AND_WORKSPACE
Database value: 21
Classroom-based
ONLINE_AND_WORKSPACE
Database value: 22
Classroom-based
CLASSROOM_ONLINE_AND_WORKSPACE
Database value: 23
Classroom-based
DeliverySchedule
ON_ENROL
Database value: 1
ON_START
Database value: 2
MIDWAY
Database value: 3
AT_COMPLETION
Database value: 4
ON_DEMAND
Database value: 5
DiscountAvailabilityType
A set of values for discount availability types.
OFFICE_ONLY
Database value: 0
Office only The single value that makes discount not available on web
ONLINE_AND_OFFICE
Database value: 1
Online and office Default value for old available on web option
ONLINE_ONLY
Database value: 2
Online only Avaivable only on web, not on quick enrol
DiscountType
Every discount can be one of three different types.
PERCENT
Discount amount will be calculated based on the percent of the original price. The value will be rounded according to the discount round property. Discount min and max value can be also applied when the discount has defined them.
Database value: 1
DOLLAR
Discount amount will be a set dollar value off the full price. This value applies to the original price before tax. Tax value will be calculated after the discounted price is calculated.
Database value: 2
FEE_OVERRIDE
Discounts of this type override the original price (before tax) of the class. Tax, if applicable, will be added to the defined dollar value.
Database value: 3
EnrolmentStatus
Enrolments pass through various states as the enrolment process is completed. These statuses are particularly important for communication with the onCourse website and the progression of the enrolment through checks for number of places remaining and having the payment processed.
Do not change the state of enrolments directly since enrolment state has important ramifications throughout onCourse. Changing state without also adjusting invoice lines, outcomes and other objects may create broken data relationships.
CORRUPTED
Indicates an state of conflict with data integrity rules (e.g., between the website and onCourse). i.e., something that should never happen and needs resolution.
Database value: -99
NEW
Enrolments in NEW state will almost never be seen. Many of the older workflows have now been changed so enrolments in NEW state aren’t even saved to the database until they progress to IN_TRANSACTION. You should not set enrolments to this state.
Database value: 0
QUEUED
Indicates a payment or enrolment that was unable to retrieve a result from willow on first attempt (i.e., on post-persist from quick enrol) and is as such queued for later processing by a server-side thread.
Database value: 1
IN_TRANSACTION
Indicates current processing of a payment. E.g., the user has agreed to pay and all details are valid. However, all payments with STATUS_QUEUED will move again to a state of STATUS_IN_TRANSACTION prior to attempting subsequent processing. Enrolments in this state will be automatically picked up by server-sides processing threads and moved to a final state.
Database value: 2
SUCCESS
Indicates successful and confirmed completion of a payment or enrolment.
Database value: 3
FAILED
Indicates a failed response due to an error.
Database value: 4
FAILED_CARD_DECLINED
Indicates a failed response given by the credit card gateway.
Database value: 6
FAILED_NO_PLACES
Indicates that the enrolment and payment could not be accepted because there were no enrolment places left.
Database value: 7
CANCELLED
Indicates that an enrolment that was previously successful has been cancelled.
Database value: 8
REFUNDED
Indicates an equivalent status to that of cancelled but that a credit note was also created for the student in the system.
Database value: 9
EnrolmentVETFeeHelpStatus
VET FEE HELP is an Australian government loan programme for funding education. Each enrolment in an eligible FEE HELP class can have one of these states. These states only make sense if the CourseClass has FEE HELP enabled.
NOT_ELIGIBLE
Database value: 0
HELP_NOT_REQUESTED
Database value: 1
HELP_REQUESTED
Database value: 2
ExpiryType
Memberships can expire after a certain period of time. Once expired, new sales will not be allowed to take advantage of the membership.
DAYS
Database value: 1
This membership expires after a certain numbers of days.
FIRST_JANUARY
Database value: 2
This membership lasts until the beginning of the new year.
FIRST_JULY
Database value: 3
This membership lasts until the 1 July.
LIFETIME
Database value: 4
This membership never expires.
ExportJurisdiction
The AVETMISS export can run in one of several modes, depending on the state it is exported to. It isn’t so much a standard as a collection of mutually incompatible standards.
PLAIN
NSW
OLIV
SMART
QLD
SA
TAS
VIC
WA
AQTF
RAPT
NTVETPP
AVETARS
FieldConfigurationType
Type of Field Configuration is condition under which it will be used.
ENROLMENT
Database value: 1 Field Configuration will be used during web enrol process
APPLICATION
Database value: 2 Field Configuration will be used during web application process
WAITING_LIST
Database value: 3 Field Configuration will be used when joining waiting lists on web
SURVEY
Database value: 4 Field Configuration will be used for surveys
PAYER
Database value: 5 Field Configuration will be used for payers
PARENT
Database value: 6 Field Configuration will be used for parents or guardians
ARTICLE
Database value: 7 Field Configuration will be used for articles
MEMBERSHIP
Database value: 8 Field Configuration will be used for memberships
VOUCHER
Database value: 9 Field Configuration will be used for vouchers
FundingStatus
EXPORTED
SUCCESS
FAILED
Gender
FEMALE
Database value: 0
MALE
Database value: 1
OTHER_GENDER
Database value: 2
InvoiceType
INVOICE
Database value: 1
QUOTE
Database value: 2
KeyCode
Keycode values are used for access rights. Each value specified is attached to an entity or a specific part of user interface. Each KeyCode can have some or all of the following rights: View, Print, Create, Edit, Delete.
Some Keycodes have rights which cannot be disabled and other rights which can never be enabled.
NTIS_DATA
Database value: 1
Qualification, module and unit of competency reference data. Always enabled: view & print Always disabled: create & delete
CERTIFICATE
Database value: 2
Relates to VET Statements of Attainment and Qualifications only. All contacts with class print permissions can create non-vocational certificates of attendance.
WAITING_LIST
Database value: 3
Permission to work with all wait list records
ENROLMENT
Database value: 4
Requires student edit and create. Enables quick enrol. Always disabled: delete
ENROLMENT_DISCOUNT
Database value: 5
Allow discount to be entered manually in Quick Enrol. Also allows negative charges' in QE.
SITE
Database value: 6
Ability to add and modify sites. Always enabled: view
ROOM
Database value: 7
Ability add room to sites. Always enabled: view
COURSE
Database value: 8
Permission to work with any course type, including traineeships, Vocational and non-vocational courses. Always enabled: view
VET_COURSE
Database value: 9
Restrict only VET tab on the course edit view. Always enabled: view
CLASS
Database value: 10
Permission to work with any class type. Always enabled: view
OUTCOMES
Database value: 11
Restrict outcomes tab in class, enrolments tab in student, outcomes tab in enrolment, certificate window Always enabled: view
BUDGET
Database value: 12
Restrict access only to the budget tab within the class edit view
SESSION
Database value: 13
Permission relates to sessions as they belong to classes. Always enabled: view Always disabled: print
DISCOUNT
Database value: 14
This permission relates to the creation of discount strategies
PROMO_CODE
CONTACT
Database value: 16
Rights to create, edit and delete Contacts (Students, Tutors, Companies). Required for working with enrolments. Always enabled: view
ACL_ROLE
Database value: 19
Only the admin user is able to get to the access rights management views.
SYSTEMUSER
Database value: 20
System Users are the users who log into onCourse or onCourse CMS. Always disabled: delete
PURCHASE
INVOICE
Database value: 22
This is the right to create a bare invoice (not part of Quick Enrol). Always disabled: delete
INVOICE_CREDIT
Database value: 23
Right to create a credit note (not part of cancelling class)
PAYMENT_IN
Database value: 24
Permission relates only to manual payment in records, not those created during Quick Enrol.
PAYMENT_OUT
Database value: 25
This permission is about creating refunds, usually processed in real time back to payer’s credit cards. Always disabled: delete
BANKING
Database value: 26
Run the banking process, including marking payments as banked. Special single option.
RECONCILIATION
Database value: 27
Run the reconciliation process. Special single option.
ACCOUNT
Database value: 28
Account settings for onCourse chart of accounts
TRANSACTION
Database value: 29
General ledger transaction records created during all financial transactions. Always disabled: delete & edit
REPORT
Database value: 30
The right to edit reports. Note that a user with this right could create a report which contains any other data from the whole database. Always enabled: view & print
ATTACHMENT_INFO
Database value: 31
Always enabled: view & print
TAG
Database value: 32
Permission relating to all tag groups, including those that drive the website navigation. This permission is not required to add tags to records, only to edit tag groups. Always enabled: view
WEBPAGE
MAILING_LIST
Database value: 34
Permission to work with and add contacts to mailing list records. Always enabled: view
CONCESSION_TYPE
Database value: 35
Permission to modify available concessions. This permission is not needed to add concession types to contact records.
PRODUCT
Database value: 36
This permission relates to the creation and editing of Products. Always enabled: view
PAY_PERIOD
Database value: 37
PAYSLIP
Database value: 38
This permission relates to the creation and editing of payslips
TUTOR_ROLE
Database value: 39
Determine pay rates for teaching staff. Always enabled: view
APPLICATION
Database value: 40
Application function allows adding an approval process for the student requesting a place in a class
MEMBERSHIP
Database value: 41
This permission relates to the creation and editing of Memberships. Always enabled: view
VOUCHER
Database value: 42
This permission relates to the creation and editing of Vouchers. Always enabled: view
SALE
Database value: 43
Product sales. Always enabled: view
FINANCIAL_PREFERENCES
Database value: 60
he onCourse preferences that set the default accounts for various transaction types
GENERAL_PREFERENCES
Database value: 61
Relates to onCourse application preferences that affect all users
SPECIAL_DUPLICATE
Database value: 70
Class duplication and rollover. Special single option.
SPECIAL_CLASS_CANCEL
Database value: 71
Permission to cancel classes. Special single option.
SPECIAL_EXPORT_XML
Database value: 72
Permission to perform export. Special single option.
SPECIAL_CERTIFICATE
Database value: 73
Create certificate from class. Special single option.
SPECIAL_SMS_50
Database value: 74
Send SMS to up to 50 contacts. Special single option.
SPECIAL_EMAIL_50
Database value: 75
Send email to up to 50 contacts. Special single option.
SPECIAL_SMS_MASS
Database value: 76
Send SMS to over 50 contacts. Special single option.
SPECIAL_EMAIL_MASS
Database value: 77
Send email to over 50 contacts. Special single option.
SPECIAL_DE_DUPE
Database value: 78
Merge two contacts. Special single option.
SPECIAL_CANCEL_TRANSFER_ENROLMENTS
Database value: 79
Cancel and transfer enrolments Special single option.
SPECIAL_AVETMISS_EXPORT
Database value: 80
Export training data for government reporting. Special single option.
SPECIAL_IMPORT
Database value: 81
Import date. Note that this gives the user the ability to create records they may not otherwise be able to create with their existing rights. Special single option.
SPECIAL_DET_EXPORT
SPECIAL_CHANGE_ADMINISTRATION_CENTRE
Database value: 83
Permission to specify custom administration centre. Special single option.
SPECIAL_OVERRIDE_TUTOR_PAYRATE
Database value: 84
Ability to override tutor payrates in class budget. Special single option.
EXPORT_TEMPLATE
Database value: 85
Permission to modify Export Templates. Always enabled: view
UNAVAILABLE_RULE
Database value: 86
Setting up days (e.g. holidays) that will be marked unavailable in class timetable
EMAIL_TEMPLATE
Database value: 87
Permission to modify Email Templates. Always enabled: view
CORPORATE_PASS
Database value: 88
Permissions relating to the creation or editing of CorporatePass.
SPECIAL_MYOB_EXPORT
Database value: 89
Permission that allows a user to export/print MYOB Export from the Financial menu. Special single option.
SPECIAL_TRIAL_BALANCE
Database value: 90
Permission that allows a user to export/print Trial Balance from the Financial menu. Special single option.
PRINT_CERTIFICATE_WITHOUT_VERIFIED_USI
Database value: 91
Ability to print certificates without a USI verified for that student
PRINT_CERTIFICATE_WITHOUT_USI
Database value: 92
Ability to print certificates without a USI entered for that student
SCRIPT_TEMPLATE
Database value: 93
Permission to modify scripts. Always enabled: view
CONTACT_RELATION_TYPE
Database value: 94
Ability to create and edit relation types that can be used to link contacts (e.g. Parent - Child) Always enabled: view
PAYMENT_PLAN
Database value: 95
Ability to create payment plan lines for invoice Always disabled
SPECIAL_EDIT_NOTES
Database value: 96
Ability to edit notes Special single option.
SPECIAL_TWO_FACTOR_AUTHENTICATION
Database value: 97
Add additional two factor authentication mechanism to login. If this is enabled then a user who logs in without two factor authentication enabled is immediately shown the "Enable two factor authentication" dialog. Special single option.
PAYMENT_METHOD
Database value: 98
Ability to create payment methods for payments.
QUALITY_RULE
Database value: 100
Ability to edit quality rules
SUMMARY_EXTRACTS
Database value: 101
Allow to access "Summary extracts" item in financial menu Special single option.
AUDIT_LOGGING
Database value: 102
Allow to access "Audit logging" Special single option.
FUNDING_CONTRACT
Database value: 103
Allow to access "Funding contract"
FUNDING_UPLOAD
Database value: 104
Allow to access "Funding upload"
PRIVATE_DOCUMENTS
Database value: 105
Allow to access private documents
SURVEYS
Database value: 106
Allow to access "Student feedback"
OVERRIDE_TUTOR_SESSION_PAYABLE_TIME
Database value: 107
Allow to edit the payable time at the per tutor per session level in the class attendance tab Special single option.
BULK_CONFIRM_TUTOR_WAGES
Database value: 108
Allow to click the 'confirm now' button in the Generate tutor payroll sheet that confirms all the unconfirmed paylines Special single option.
GENERAL_PREFERENCES_HTML
Database value: 109
Relates to onCourse application preferences that affect all users and open in java embedded web browser
ASSESSMENT
Database value: 110
Permission to work with any assessment.
CHECKOUT
Database value: 111
Permission to work with any checkout. Always enabled: view
TUTOR_ATTENDANCE
Database value: 112
Permission to work with any TutorAttendance. Always enabled: view
KeyCollision
Mechanism of automatic skipping sending emails for contacts have already received email with the same key.
If key is not set sending email is going as usual. If key is set creator key property is added to Message. Also Message is created for emails which are sent by SMTP. This Message has no MessagePerson records but contains a creator key.
accept
drop
error
LeadStatus
There are various states of the lead object, which are described below.
CLOSED
Database value: 0
Lead isn’t active.
OPEN
Database value: 1
Lead is active.
MessageStatus
Each Message object (the delivery record) starts as queued and then is processed by a special process which wakes up every few seconds.
QUEUED
Database value: 1
Message hasn’t been sent by onCourse server yet.
SENT
Database value: 2
Message was sent to contact successfully.
FAILED
Database value: 3
Message sending failed and won’t be attempted again.
MessageType
Messages can either be an email, SMS or postal mail. If postal email, only the message subject has relevant as a note to show what was sent.
Database value: 1
Messages sent to contact email.
SMS
Database value: 2
Messages sent ti contact address.
POST
Database value: 3
Messages sent to contact mobile phone number.
ModuleType
Represents type of training component
UNIT_OF_COMPETENCY
Database value: 0
Unit of competency type
MODULE
Database value: 1
Module type
UNIT_OF_STUDY
Database value: 2
Unit of study type
OTHER
Database value: 99
Other types
MoneyRounding
Enumeration of options for rounding money fields, e.g. after applying discounts.
ROUNDING_NONE
Database value: 0
No rounding is applied
ROUNDING_10C
Database value: 1
Rounding to nearest 10 cents, e.g. $1.93 becomes $1.90
ROUNDING_50C
Database value: 2
Rounding to nearest 40 cents, e.g. $1.34 becomes $1.50
ROUNDING_1D
Database value: 3
Rounding to nearest dollar, e.g. $9.70 becomes $10.00
NodeSpecialType
Some tags have a special meaning. Because tags were originally called "nodes" in onCourse, some of the old terminology still lingers.
SUBJECTS
Database value: 1
There can only be one tag group called "subjects" and there must always be one. It has special meaning in an onCourse website. Tag is used to filter cources on the college website
HOME_WEBPAGE
MAILING_LISTS
Database value: 3
Tag groups which are of type mailing list appear in a special place in the user interface but are still just a flag against a contact showing they are part of a mailing list.
PAYROLL_WAGE_INTERVALS
Database value: 4
Wage intervals are a tag group used to designate pay cycles.
ASSESSMENT_METHOD
Database value: 5
Assessment methods are a tag group used to mark assessments.
TERMS
Database value: 6
There can only be one tag group called "terms" and there must always be one. It has special meaning in an onCourse website. Tag is used to filter classes on the college website
OutcomeStatus
A set of values for AVETMISS reporting from the version 7 standard. Consult the AVETMISS documentation for more detail about these options.
STATUS_NOT_SET
Database value: 0
Not set
STATUS_ASSESSABLE_PASS
Database value: 20
Competency achieved/pass
STATUS_ASSESSABLE_FAIL
Database value: 30
Competency not achieved/fail
STATUS_ASSESSABLE_WITHDRAWN
Database value: 40
Withdrawn
STATUS_ASSESSABLE_WITHDRAWN_INCOMPLETE_DUE_TO_RTO
Database value: 41
Incomplete due to RTO closure
STATUS_ASSESSABLE_RPL_GRANTED
Database value: 51
RPL granted
STATUS_ASSESSABLE_RPL_NOT_GRANTED
Database value: 52
RPL not granted
STATUS_ASSESSABLE_RCC_GRANTED
Database value: 53
RCC granted
STATUS_ASSESSABLE_RCC_NOT_GRANTED
Database value: 54
RCC not granted
STATUS_ASSESSABLE_CREDIT_TRANSFER
Database value: 60
Credit Transfer
STATUS_SUPERSEDED_QUALIFICATION_QLD
Database value: 65
Superseded Qualification
STATUS_ASSESSABLE_DET_DID_NOT_START
Database value: 66
Did not start
STATUS_ASSESSABLE_CONTINUING_ENROLMENT
Database value: 70
Continuing enrolment
STATUS_NON_ASSESSABLE_COMPLETED
Database value: 81
Satisfactorily completed
STATUS_NON_ASSESSABLE_NOT_COMPLETED
Database value: 82
Withdrawn or not satisfactorily completed
STATUS_NO_RESULT_QLD
Database value: 90
Result not available
STATUS_WA_PARTICIPATING_WITH_EVIDENCE
Database value: 5
Participating, but studies not finished (with evidence of Training)
STATUS_WA_PARTICIPATING_WITHOUT_EVIDENCE
Database value: 55
Participating, but studies not finished (With NO evidence of Training)
STATUS_WA_RCC_GRANTED
Database value: 15
Recognition of Current Competencies (RCC) granted
STATUS_WA_RCC_NOT_GRANTED
Database value: 16
Recognition of Current Competencies (RCC) not granted
STATUS_WA_PROVISIONALLY_COMPETENT
Database value: 8
Provisionally competent off the job (apprentices only)
STATUS_WA_DISCONTINUED
Database value: 11
Discontinued - no formal withdrawal (after some participation)
STATUS_WA_NOT_YET_STARTED
Database value: 105
Not yet started
SUPERSEDED_SUBJECT
Database value: 61
Superseded subject
OutputType
Output types are the type of file created by an Export. This changes the output file extension and mime-type.utpu
CSV
JSON
XML
ICAL
TEXT
PageBreakType
Enum determining the strategy for adding page breaks between records in reports.
OFF
TARGET
SOURCE
PaymentSource
Payment can be made in onCourse (office) or from the onCourse website (web). Although named "PaymentSource" this enumeration is used for enrolments and other entities to mark where they were originated.
SOURCE_ONCOURSE
all payments made from onCourse will have this source
Database value: O
SOURCE_WEB
all payments made from onCourse website will have this source
Database value: W
PaymentStatus
Payments pass through a number of statuses as the enrolment or sale is completed and the credit card is processed. Once a final state is reached, the status may not be changed again.
CORRUPTED
Indicates an state of conflict with data integrity rules (e.g., between the website and onCourse). i.e., something that should never happen and needs resolution.
Database value: -99
NEW
NEW payments are rarely seen in the wild and exist for a short time before the gateway is contacted to process the transaction.
Database value: 0
QUEUED
Indicates a payment or enrolment that was unable to retrieve a result on first attempt and is queued for later processing by a server-side thread.
Database value: 1
IN_TRANSACTION
This payment is currently being processed against the gateway and should not be touched by any other thread.
Database value: 2
SUCCESS
Indicates successful and confirmed completion of a payment or enrolment.
FINAL STATUS Database value: 3
FAILED
Indicates a failed response due to an error.
FINAL STATUS Database value: 4
FAILED_CARD_DECLINED
Indicates a failed response given by the credit card gateway.
FINAL STATUS Database value: 6
FAILED_NO_PLACES
Indicates that the enrolment and payment could not be accepted because there were no enrolment places left.
FINAL STATUS Database value: 7
CARD_DETAILS_REQUIRED
Indicates that payment was saved in onCourse Web, but user needs to provide credit card details.
Database value: 10
isFinalState(status)
checks if a given status is a final status (not to be altered anymore)
-
status PaymentStatus to be verified @return true if the param belongs to statuses_final
-
Returns boolean true if the param belongs to statuses_final
PaymentType
Different types of payment
CASH
Payments made in cash. These payments will need to be manually banked.
Database value: 0
CHEQUE
Payments made with cheque. These payments will need to be manually banked.
Database value: 1
CREDIT_CARD
Payments made with credit card. These payments will need to be manually banked if the credit card gateway is not enabled. They will be marked as banked automatically if the gateway is available and the payment is successful.
Database value: 2
EFT
Payments made by any means of electronic fund transfer (bank transfer etc.). These payments will need to be manually banked.
Database value: 3
BPAY
Payments made using b-pay. These payments will need to be manually banked.
Database value: 4
INTERNAL
Internal payments (also known as "zero payments") are created by the system automatically, and cannot be created manually. They will be seen when you create an invoice in QuickEnrol or on the website where there is no payment and the payment is just created as a holding object to keep the workflow consistent with other regular payments.
Additionally if you use a dollar type voucher, and there is no additional monetary payment, then an Internal payment will also be created with a $0 value.
Payments of this type always have a total of $0 even though they may have payment lines which are not $0.
Database value: 5
OTHER
Other types of payment (internal accounts transfer etc) Database value: 6
CONTRA
Contra payments are created by a user manually in the onCourse user interface. They are created by cancelling out a credit note (or part of an invoice) against an invoice (or part of an invoice).
Contra payments can also be created when you cancel an enrolment, the invoice for that enrolment is unpaid and you choose to issue a credit note. Then the credit note and original invoice are linked by a Contra Payment automatically.
Payments of this type always have a total of $0 even though they will have payment lines which are not $0.
Database value: 7
VOUCHER
A special payment type created during voucher redemption. Banking is never needed.
Database value: 8
PAYPAL
payments using paypal. These payments will need to be manually banked. Database value: 9
REVERSE
A reversal is a special payment type used to link original and reversed invoices during payment cancellation or failure. This type cannot be created manually, but will appear when there is a failure during a payment transaction with the bank or some other transaction processing error.
In case of credit card failure, the operator is given a choice to keep the current invoice without payment, or cancel the enrolment and issue a credit note. In this case a REVERSE payment is created to link the invoice with the credit note and cancel out any amount owing.
Payments of this type always have a total of $0 even though they will have paymentLines which are not $0.
Database value: 10
EFTPOS
EFTPOS payments. These payments will need to be manually banked.
Database value: 11
PayslipPayType
Payslips can be either
-
payable to an employee as a wage (with tax and super and other calculations). These are typically exported to some payroll system to complete calculations, submit government reports and process to their bank account
-
payable to a contractor. The contractor is usually responsible for issuing an invoice back to the college
EMPLOYEE
CONTRACTOR
PayslipStatus
Payslips go through a workflow set of statuses.
HOLLOW
These payslips are still being edited. Database value: 1
COMPLETED
These payslips are marked as complete and ready to be approved. Database value: 2
APPROVED
Once approved by an onCourse user with sufficient permissions, the payslip is ready to be exported. Database value: 3
FINALISED
Once exported, payslips may no longer be edited. Database value: 4
PostcodeType
Australian postcodes range
DELIVERY_AREA
Delivery Area Database value: 1
POST_OFFICE_BOXES
Post Office Boxes. These types of postcodes cannot be used for AVETMISS reporting. Database value: 2
LARGE_VOLUME_RECEIVER
Large Volume Receiver Database value: 3
ProductStatus
Products can have a status reflecting the sale. Since products include both real goods ({@see Articles}) and {@see Vouchers} some statuses only apply to specific types of products.
ACTIVE
Database value: 0
Base status product receives after payment was confirmed.
CANCELLED
Database value: 1
A product sale which is cancelled but not reversed.
CREDITED
Database value: 2
When a product sale has been reversed.
REDEEMED
Database value: 3
A voucher which has been sold and also redeemed. Doesn’t apply to other types of products.
NEW
Database value: 4
Represents status when voucher is persisted to database but its payment is not yet successful. This status will transition to another status soon. You should not set this status ordinarily.
EXPIRED
Database value: 5
Product is past it’s expiry date
DELIVERED
Database value: 6
Status that can be set manually for Article Product to confirm it’s delivery.
ProductType
Products are implemented in the database using vertical inheritance and require this discriminator column to identify the type of entity.
ARTICLE
Database value: 1
Product items offered by college, e.g, books. Located in Products → Products.
MEMBERSHIP
Database value: 2
Memberships offered by college. Located in Products → Memberships.
VOUCHER
Database value: 3
Money and enrolment vouchers sold by college. Voucher can be used to cover the payments for enrolling into classes. Located in Products → Voucher types.
QualificationType
Qualifications must be one of these types as per the AVETMISS standard
QUALIFICATION_TYPE
Qualification.
Database value: 0
COURSE_TYPE
Accredited course.
Database value: 1
SKILLSET_TYPE
Skill set.
Database value: 2
SKILLSET_LOCAL_TYPE
Local skill set.
Database value: 3
HIGHER_TYPE
Higher education.
Database value: 4
RecognitionOfPriorLearningIndicator
A code indicating whether an RPL is a unit of study or has an RPL component in the unit of study. http://heimshelp.education.gov.au/sites/heimshelp/2015_data_requirements/2015dataelements/pages/577
NOT_RPL_UNIT_OF_STUDY
Database value: 0
Unit of study is NOT an RPL unit of study.
UNIT_OF_STUDY_CONSISTS_WHOLLY_OF_RPL
Database value: 1
Unit of study consists wholly of RPL.
UNIT_OF_STUDY_HAS_A_COMPONENT_OF_RPL
Database value: 2
Unit of study has a component of RPL.
Severity
Collection of predefined {ish.oncourse.server.quality.api.QualityResultSpec} severity levels. You can use these values, or just any value between 0 and 100.
INFO
ADVICE
WARNING
ERROR
SETUP
StudentCitizenship
A set of values for AVETMISS reporting from the version 7 standard. Consult the AVETMISS documentation for more detail about these options.
AUSTRALIAN_CITIZEN
Database value: 1
Australian citizen (including Australian citizens with dual citizenship)
NEW_ZELAND_CITIZEN
Database value: 2
New Zealand citizen or a diplomatic or consular representative of New Zealand, a member of the staff of such a representative or the spouse or dependent relative of such a representative, excluding those with Australian citizenship. (Note: includes any such persons who have Permanent Resident status)
STUDENT_WITH_PERMANENT_VISA
Database value: 3
Students/Applicants with permanent visa other than permanent humanitarian visa
STUDENT_WITH_TEMPORARY_ENTRY_PERMIT
Database value: 4
Student/Applicant has a temporary entry permit or is a diplomat or a dependent of a diplomat (except New Zealand) and resides in Australia during the unit of study
NONE_OF_THE_ABOVE_CATEGORIES
Database value: 5
Not one of the above categories and student/applicant is residing outside Australia during the unit of study/time of application
STUDENT_WITH_PERMANENT_HUMANITARIAN_VISA
Database value: 8
Students/Applicants with permanent humanitarian visa
NO_INFORMATION
Database value: 9
No information
StudentStatusForUnitOfStudy
A code which indicates the student status for a unit of study http://heimshelp.education.gov.au/sites/heimshelp/2015_data_requirements/2015dataelements/pages/490
DEFERRED_ALL_OR_PART_OF_TUITION_FEE_THROUGH_VET_FEE_HELP_NON_STATE_GOVERNMENT_SUBSIDISED
Database value: 1
Deferred all/part of tuition fee through VET FEE-HELP - non State Government subsidised
DEFERRED_ALL_OR_PART_OF_TUITION_FEE_THROUGH_VET_FEE_HELP_RESTRICTED_ACCESS_ARRANGEMENT
Database value: 2
Deferred all/part of tuition fee through VET FEE-HELP - Restricted Access Arrangement
DEFERRED_ALL_OR_PART_OF_TUITION_FEE_THROUGH_VET_FEE_HELP_VICTORIAN_STATE_GOVERNMENT_SUBSIDISED
Database value: 3
Deferred all/part of tuition fee through VET FEE-HELP - Victorian State Government subsidised
DEFERRED_ALL_OR_PART_OF_TUITION_FEE_THROUGH_VET_FEE_HELP_NEW_SOUTH_WALES_STATE_GOVERNMENT_SUBSIDISED
Database value: 4
Deferred all/part of tuition fee through VET FEE-HELP - New South Wales State Government subsidised
DEFERRED_ALL_OR_PART_OF_TUITION_FEE_THROUGH_VET_FEE_HELP_QUEENSLAND_STATE_GOVERNMENT_SUBSIDISED
Database value: 5
Deferred all/part of tuition fee through VET FEE-HELP - Queensland State Government subsidised
DEFERRED_ALL_OR_PART_OF_TUITION_FEE_THROUGH_VET_FEE_HELP_SOUTH_AUSTRALIAN_STATE_GOVERNMENT_SUBSIDISED
Database value: 6
Deferred all/part of tuition fee through VET FEE-HELP - South Australian State Government subsidised
DEFERRED_ALL_OR_PART_OF_TUITION_FEE_THROUGH_VET_FEE_HELP_WESTERN_AUSTRALIAN_STATE_GOVERNMENT_SUBSIDISED
Database value: 7
Deferred all/part of tuition fee through VET FEE-HELP - Western Australian State Government subsidised
DEFERRED_ALL_OR_PART_OF_TUITION_FEE_THROUGH_VET_FEE_HELP_TASMANIA_STATE_GOVERNMENT_SUBSIDISED
Database value: 8
Deferred all/part of tuition fee through VET FEE-HELP - Tasmania State Government subsidised
DEFERRED_ALL_OR_PART_OF_TUITION_FEE_THROUGH_VET_FEE_HELP_NORTHERN_TERRITORY_GOVERNMENT_SUBSIDISED
Database value: 9
Deferred all/part of tuition fee through VET FEE-HELP - Northern Territory Government subsidised
DEFERRED_ALL_OR_PART_OF_TUITION_FEE_THROUGH_VET_FEE_HELP_AUSTRALIAN_CAPITAL_TERRITORY_GOVERNMENT_SUBSIDISED
Database value: 10
Deferred all/part of tuition fee through VET FEE-HELP - Australian Capital Territory Government subsidised
StudyReason
A set of values for AVETMISS reporting from the version 7 standard. Consult the AVETMISS documentation for more detail about these options.
STUDY_REASON_NOT_STATED
Database value: -1
Not stated
STUDY_REASON_JOB
Database value: 0
To get a job
STUDY_REASON_DEVELOP_BUSINESS
Database value: 1
To develop existing business
STUDY_REASON_START_BUSINESS
Database value: 2
To start own business
STUDY_REASON_CAREER_CHANGE
Database value: 4
To try for a different career
STUDY_REASON_BETTER_JOB
Database value: 8
To get a better job or promotion
STUDY_REASON_VOLUNTARY_WORK
Database value: 13
To get skills for community/voluntary work
STUDY_REASON_JOB_REQUIREMENT
Database value: 16
Was a requirement of a job
STUDY_REASON_EXTRA_JOB_SKILLS
Database value: 32
To get extra skills for a job
STUDY_REASON_FOR_ANOTHER_COURSE
Database value: 64
To get into another course of study
STUDY_REASON_OTHER
Database value: 128
Other reasons
STUDY_REASON_PERSONAL_INTEREST
Database value: 256
For personal interest or self-development
SurveyTypeSource
ONCOURSE
Database value: 1
INTEGRATION
Database value: 2
OTHER
Database value: 10
SurveyVisibility
Visibility of surveys on web
REVIEW
Database value: 0
Testimonial awaiting review
TESTIMONIAL
Database value: 1
Testimonial is shown on web
NOT_TESTIMONIAL
Database value: 2
Testimonial is hidden on web
STUDENT_HIDDEN
Database value: 3
Testimonial is hidden by student
TaggableClasses
COURSE
COURSE_CLASS
STUDENT
TUTOR
REPORT
ATTACHMENT_INFO
CONTACT
SITE
ROOM
DOCUMENT
APPLICATION
ENROLMENT
PAYSLIP
WAITING_LIST
ASSESSMENT
LEAD
INVOICE
VOUCHER_PRODUCT
ARTICLE_PRODUCT
MEMBERSHIP_PRODUCT
VOUCHER
ARTICLE
MEMBERSHIP
PRODUCT_ITEM
TriggerType
Each script can be triggered in a particular way. This enum defined how the trigger is fired.
CRON
Database value: 1
This script will be executed at predefined times (as expressed in a cron string).
ENTITY_EVENT
Database value: 2
This script will be executed when a database object is created, edited or deleted.
ONCOURSE_EVENT
Database value: 3
This script will be executed on particular lifecycle events such as when an enrolment becomes confirmed or a class is cancelled.
ON_DEMAND
Database value: 4
This script will only be executed when user manually runs it.
UsiStatus
A USI can be validated against the government verification service.
DEFAULT_NOT_SUPPLIED
Database value: 0 The USI has not been entered at all.
NON_VERIFIED
Database value: 1 A verification was attempted, but it failed.
VERIFIED
Database value: 2 A verification was made and succeeded.
EXEMPTION
Database value: 3 A student objected to having a USI and obtained an exemption.
INTERNATIONAL
Database value: 4 A student did their training offshore and isn’t required to get a USI
VETFeeExemptionType
A set of values for AVETMISS reporting from the version 7 standard. Consult the AVETMISS documentation for more detail about these options.
UNSET
Database value: -1
Not set
NO
Database value: 0
No
YES
Database value: 1
Yes
C
Database value: 9
QLD only: Concessional Participant
D
Database value: 11
WA only: Pensioner Concession Card
E
Database value: 12
WA only: Repatriation Health Benefits Cards
F
Database value: 13
WA only: Fee Exempt
G
Database value: 2
VIC: VCE Scholarship, WA: AUSTUDY/ABSTUDY
H
Database value: 3
VIC only: Health Care Card
I
Database value: 14
WA only: Health Care Card Youth Allowance - Job seeker (Fee Free)
J
Database value: 15
WA only: Job Network Card (Fee Free)
L
Database value: 16
WA only: Under 18 Years of Age
M
Database value: 4
VIC only: Prisoner
N
Database value: 10
QLD: Non-concessional participant, WA: Health Care Card
O
Database value: 5
VIC: Other, WA: Youth Allowance
P
Database value: 6
VIC only: Pensioner concession card
Q
Database value: 17
WA only: Custodial Institution Inmates (Prison Inmates)
S
Database value: 18
WA only: Health Care Card - New Start (Fee Free)
V
Database value: 7
VIC: Veteran gold card concession, WA: Fees Waived (due to severe financial hardship)
Z
Database value: 8
VIC: None, WA: No Concession
OS
Database value: 9
Outreach Support
VoucherPaymentStatus
Voucher verification status enumeration are set by onCourse Web when processing voucher payments coming from onCourse and used to display appropriate user message.
APPROVED
Database value: 0
Voucher is valid and can be used for enrolling/payment.
BUSY
Database value: 1
Voucher has already being used in some other transaction.
INCONSISTENT
Database value: 2
Voucher details are different on angel and willow.