RIO Ed - Grade Release Wizard
rio_ed:gradeReleaseWizard
Table of Contents
RIO Ed - Grade Release Wizard
Component Name | RIO Ed - Grade Release Wizard |
API Name | rio_ed:gradeReleaseWizard |
Type | Standalone |
Recommended Pages | Term page for internal experience |
Supported In | Salesforce Internal |
Overview
Introduced in v3.19, the Grade Release Wizard is a new component designed to make releasing grades for multiple Course Offerings simpler.
A Course Offering represents a course that runs during a particular Term, thus, multiple students can be enrolled to a single Course Offering.
Through the use of a Job Queuing framework, student grades from a large number of Course Offerings can be queued up and released in a few clicks.
For more details about releasing grades, see here.
Setup
Component
The RIO Ed - Grade Release Wizard component needs to be added to a Term lightning page.
Custom Metadata
The Grade Release job metadata needs to be active in Setup > Custom Metadata > Job Queue Config.
Based on the data and custom automations in your Salesforce instance, there are 2 fields that might need to be updated: the Job Generator Batch Size and the Job Handler Batch Size.
If you are consistently hitting Apex CPU timeout errors, you may need to lower these numbers.
- Job Generator Batch Size:
- The number of Course Offerings queried at a time when trying to find students to for releasing grades.
- By default, we set this to 20.
- Job Handler Batch Size:
- The number of student Course Connections updated at a time when releasing grades.
- By default, we set this to 100.
Usage
Main Screen
The main screen will show any Grade Release Job Queues for the given Term. By default, the newest jobs will be displayed at the top.
To start a new job, click the “New” button.
New Jobs
The New Job screen is split into two parts.
First, you must select which Courses you want to release grades for. A list of all Courses with applicable Course Offerings available in the given Term will be displayed.
You can choose to select all Courses, or manually select specific courses using the dropdown box.
Once you've selected your Courses, click “Next”.
The second screen is for selecting specific Course Offerings.
A list of all Course Offerings for the selected Terms will be displayed. Again, you can choose all Course Offerings, or manually select specific ones.
Once ready, click “Add Job”.
Please note that by default, we show “Booked Places”, which represents all students enrolled into the Course Offering.
The Grade Release job however, will only release grades for student Course Connections that meet the following requirements:
- Record Type = Student
- Enrollment Status = Enrolled or Completed
- Release Grades = false
- Credit Transfer Received = false
- Grade Result != RPL, Credit Transfer or Waiver
Clicking on “Add Job” will start the process to create Grade Release jobs for the selected Course Offerings.
Note:
Job Queue records will be created and processed using the Salesforce Apex Queue system.
This system waits until there are available resources, and then runs in the background automatically.
Depending on how many Course Offerings and students are selected, or how many other jobs are already running, it's possible that not all jobs will show up immediately after returning to the main page - that's okay!
The code will continue to processes and add the jobs behind the scenes. You can click the Refresh button in the dropdown menu after a few seconds and the rest of the jobs should show up.
Dropdown Menu
The dropdown menu next to the “New” button provides additional options:
Cancel Jobs
You can select Job Queues in the table, then choose to Cancel Jobs. This only works for jobs that have not started Processing.
Retry Jobs
You can select a failed Job Queue in the table to choose to Retry Jobs. From here, you will have the option to retry all of the records, or only the records that failed.
Refresh
This option can be used to refresh the list of Job Queue records. Use this to retrieve updated statuses as jobs complete, or update the queue when many jobs are being added at once and haven't all be displayed yet.
Clear All Jobs
This will delete all Job Queue records related to the current Term.
Developer section
Attribute Name | API Name | Description |
---|---|---|
Icon | cardIcon |
Component icon (Default: standard:apps) |
Title | cardTitle |
Component title (Default: Grade Release Wizard) |
Job Queue Fields | jobQueueFieldsString |
Semi-colon separated list of Job Queue fields for the table. (Default: Name;CreatedDate;rio_ed__Source_Record_Name__c;rio_ed__Number_of_Records__c;rio_ed__Status__c;rio_ed__Number_of_Success_Records__c;rio_ed__Number_of_Error_Records__c) |
Job Queue Statuses | jobQueueStatusString |
Semi-colon separated list of Job Queue statuses to show in the table. (Default: Pending;Processing;Completed;Failed) |
Course Fields | courseFieldsString |
Semi-colon separated list of Course fields for the new job screen. (Default: Name;hed__Course_ID__c) |
Course Offering Fields | courseOfferingFieldsString |
Semi-colon separated list of Course Offering fields for the new job screen. (Default: Name;rio_ed__Booked_Places__c) |
Course Offering Statuses | courseOfferingStatusesString |
Semi-colon separated list of Course Offering statuses for the new job screen. (Default: Running;Running (Enrollment Opened);Completed) |
Debug Mode | enableDebugMode | Enable debug mode |