RIO Education 3.25 Release Notes
Enhancements, new features, and bug fixes
Table of Contents
Info
If a specific enhancement or new feature requires configuration, the notes will mention:
- the upgrade notes (steps),
- the components ("RIO Ed - Aura"),
- the attributes (configurable settings), and/or,
- the custom metadata type.
Otherwise, if there is no mention on configuration, attributes, RIO Ed - Aura components, or upgrade notes for a specific enhancement, this means that specific enhancement is automatically available upon installing this new version.
No configuration is needed for a new feature unless stated otherwise.
For more information on installing or upgrading your RIO Education version, head here.
3.25
Release date: 23rd October 2026
3.25 New Install
https://install.rioeducation.com/products/RIO_Education/3.25
3.25 Upgrade
https://install.rioeducation.com/products/RIO_Education_Upgrades/3.0-3.25/v3_25
Please review the following section to understand the automated upgrade plans and what they change, and decide if you would like to automatically install the changed components or configure them manually yourself. In the event these components have been customised for your installation, installing these specific upgrade plans may result in loss of data, so please review carefully.
Metadata Updates
Layouts
| Changes Made | |
|---|---|
| Funding |
|
| Program Plan |
|
| Study Credit |
|
Profiles
| Changes Made | |
|---|---|
| REDU - Admin |
|
Permission Sets
These packaged permission sets will be updated automatically when you upgrade. But if you are using your own custom permission sets, you may need to update them to match.
| Changes Made | |
|---|---|
| REDU - Admin |
Objects and Fields:
Apex Classes:
|
| REDU - Operation Admin |
Objects and Fields:
Apex Classes:
|
| REDU - Faculty |
Objects and Fields:
|
| REDU - Student |
Objects and Fields:
|
| REDU - Student Success |
Objects and Fields:
|
| REDU - Guest |
Objects and Fields:
|
Important Upgrade Notice - Salesforce Apex Security Model Changes
RIO Education 3.25 upgrades all Apex components to Salesforce API version 67.0, which introduces significant changes to the Apex security model, including changes to default data access and sharing behaviour.
Administrators are strongly advised to thoroughly test the upgrade in a sandbox environment to validate existing functionality, user permissions, data access, and custom integrations before deploying to production.
For details, refer to Salesforce's official documentation: Database Operations Run in User Mode by Default, Not System Mode.
Before you upgrade
-
If you have not already enabled LWS in your instance, make sure to enable it. See here for more details.
- We recommend you to test new versions in a sandbox first (according to your own test cases), before rolling it into production.
- It is important to review the upgrade plans and the metadata to be applied before performing any action, as we do not support rollback.
< Please expand to read this, if you are directly upgrading from pre-3.12 >
If you are directly upgrading from pre-3.12, make sure to carry out upgrade tasks for the following items below:
ISS-001139 Lightning Web Security readiness for LWC and Aura
Due to the enforcement of Lightning Web Security (LWS), all following Javascripts library used in RIO Education have been upgraded to the version that compatible with LWS:
- FullCalendar
- Jquery
- moment.js
- chartJs
Hence, the LWS needs to be enabled in your Salesforce instance in order for the Appointment Scheduler, Session Scheduler, and Calendar to work properly.
If you still have customized Aura components that utilize third party Javascript library that are not compliant with LWS, it is recommend not to upgrade to this version until the Salesforce Summer'23 release which would have LWS for Aura supported as general release. Please refer to Salesforce release schedule for more info.
Please note that it is important to test the upgrade in sandbox first before rolling out to production to avoid any unforeseen issues.
As part of the change, the following settings have been replaced with the new settings from FullCalendar v5:
| Setting | Legacy Value | New Value |
| Calendar Weekly view | agendaWeek | timeGridWeek |
| Resource Timeline Weekly view | timelineWeek | resourceTimelineWeek |
| Resource Timeline Daily view | timelineDay | resourceTimelineDay |
| Resource Timeline Monthly view | timelineMonth | resourceTimelineMonth |
| Today button | cToday | today |
| Resource Timeline Daily view | cTimelineDay | resourceTimelineDay |
| Resource Timeline Weekly view | cTimelineWeek | resourceTimelineWeek |
| Resource Timeline Monthly view | cTimelineMonth | resourceTimelineMonth |
If you have customized the Appointment Scheduler or Session Scheduler app page, please follow the steps to update the settings manually:
-
Appointment Scheduler:
- Default Calendar View: agendaWeek > timeGridWeek
- Default Calendar View: agendaWeek > timeGridWeek
-
Session Scheduler:
- Calendar Header Button (Left):
- timelineWeek > resourceTimelineWeek
- timelineDay > resourceTimelineDay
- timelineMonth > resourceTimelineMonth
- Calendar Header Button (Center):
- timelineWeek > resourceTimelineWeek
- timelineDay > resourceTimelineDay
- timelineMonth > resourceTimelineMonth
- Calendar Header Button (Right):
- timelineWeek > resourceTimelineWeek
- timelineDay > resourceTimelineDay
- timelineMonth > resourceTimelineMonth
- These custom buttons are obsolete:
- cToday
- cTimelineDay
- cTimelineWeek
- cTimelineMonth
- Please replace them with today, resourceTimelineDay, resourceTimlineWeek, and resourceTimelineMonth respectively.
- The "prev" and "next" button cannot be placed next to "title" anymore due to the change of CSS on FullCalendar v5.
- For example, you will need to remove “prev” and “next” from the Calendar Header Button (Center) and leave it with just “title”.
- Then, in the Calendar Header Button (Left), key in “today prev,next”. This will display the button for you to click and view future and previous days/weeks.
-
If you have a customized Session Scheduler page, make sure to check that all attributes (e.g. field sets, info popups) are present after upgrading.
- It is best to keep track of your attributes on the RIO Ed - Session Scheduler component before upgrading, so that you can update them if any are missing after upgrading.
- Calendar Header Button (Left):
ISS-001528 Simplify Grade Management
This is ONLY APPLICABLE if you are using grade settings at the university department and academic program level before v3.12.
Since grade settings are now only at the educational institution from v3.12 onwards, existing grade settings at university department and academic program levels need to be modified.
If you are upgrading from before version 3.12, you will need to do some manual upgrade steps. Please take note that it is recommended to perform this upgrade task before or after the grading and grade release period to avoid any data integrity issues.
The upgrade task involves updating the following fields:
- Grade Setting - Grade Setting Type field (formerly called Grade Setting Scope).
- Course - Grade Setting Type.
Please follow the following upgrade steps:
1. Navigate to the Grade Settings tab.
2. Create a new list view and include the following fields:
- Name
- Grade Setting Type
- Educational Institution
3. Review the Grade Setting records:
- If the “Grade Setting Type” field for all records is “Educational Institution”, complete only step #4a. Please ignore the rest of these steps.
- If some “Grade Setting Type” have “University Department” or “Academic Program”, please complete all steps.
4. Go to Setup > Picklist Value Sets, and find the Grade Setting Scope picklist values.
- Deactivate the University Department and Academic Program options.
- For each unique University Department and Academic Program Grade Setting Type found on step #3b, create a new picklist value.
For example, if you have Grade Setting created under 'Department of Business' and 'Department of IT' university department, create two new picklist options: 'Business' and 'IT'.
- The new picklist options need to be added to the Course Connection Student record type.
There should be a checkbox while adding picklist options that says "Add the new picklist values to all Record Types that use this Global Value Set".
If you are not given the option to add them automatically, you will need to add that manually.
Go to Object Manager > Course Connection > Record Types, select the Student record type, select Grade Setting Type, then add the new picklist options.
5. Go back to the grade setting list view created on step #2
- Replace the “Grade Setting Type” for both “University Department” and “Academic Program” with the appropriate new values from step #4 using the list view inline editor.
- Replace the “Educational Institution” for both “University Department” and “Academic Program” with the Educational Institution record.
This can be found by the account hierarchy, or looking through the records (they should be set up in the order Academic Program > University Department > Educational Institution).
6. Navigate to Course tab.
7. Create a new list view with filter “Grade Setting Type” not equal to “Educational Institution” and include the following fields.
- Name.
- Grade Setting Type.
- Department.
- (Obsolete) Grading Academic Program.
Review the course records, replace the “Grade Setting Type” with the appropriate values from step #4 using the list view inline editor.
Enhancements
ISS-002805 Support student fee level discount
Introduced a new field on Funding called "Use Student Fee Level Discount", when enabled, Funding Allocations for this Funding will use the legacy, Student Fee level discount calculation even if the Use Detailed Funding Assignment custom setting is enabled (note that "Filter by Fee Unit" still requires the detailed, Fee Line level calculation).
Additionally, the rounding bug for the detailed, Fee Line level discount calculation that caused the total to be off by a cent has been fixed.
The same rounding bug was also fixed for Order Line discount calculation.
See also: Funding, Funding Allocation
ISS-002824 Job Queue Group summary
All Job Queue Wizards now populate Job Summary on the Job Queue Group object.
Also fixed the following issues.
- Fixed capitalisation and some minor mistakes in some wizard modal text.
- Jobs with no records no longer create an empty Job Queue Group.
- Job Summary will persist when retrying a failed job.
- Readable error message is now shown when opening the Term Offerings Cloning Wizard on a term with no Start / End Date.
- Ensured all Job Queue Wizards have a consistent progress indicator, summary screen and help modal.
- Ensured the selected filter values and Estimated Orphan Course Count in the Program Transition Wizard are displayed on the summary screen and in the job summary on Job Queue Group.
See also: Job Queue Group (object), Job Queue (object)
ISS-002885 Optionally hide 'Remove students' button on Student Scheduler
Added conditional rendering to info action button in Student Scheduler components (Course, Session, Manager).
Added the following properties to the Student Scheduler components:
- (Course Tab) Hide Update Enrollment Status Button
- (Course Tab) Hide Remove Students Button
- (Course Tab) Hide Open In New Tab Button
- (Course Tab) Hide Edit Button
- (Course Tab) Hide Delete Button
- (Session Tab) Hide Update Enrollment Status Button
- (Session Tab) Hide Remove Students Button
- (Session Tab) Hide Open In New Tab Button
- (Session Tab) Hide Edit Button
- (Session Tab) Hide Delete Button
- (Session Tab) Hide View Scheduled Changes Button
See also: RIO Ed - Student Scheduler
ISS-002904 Program Plan cloning wizard to support program learning outcome cloning
Added Program Learning Outcome and Learning Outcome Mapping options to the Program Plan Cloning wizard.
See also: RIO Ed - Program Plan Cloning
ISS-002963 Job Queue Wizard Enhancements: Filter Criteria, SearchableCombobox enhancements
Made the following changes to Job Queue Wizards.
- Allow admins to configure filter criteria for the records that display in the wizards
- Enhanced the searchableCombobox to show the full picklist label instead of ellipses when the text is too long
- Allow users to search against the combobox meta info
See also: Job Queue (object)
Bug Fixes
ISS-002309 Bulk PE creation: Too many SOQL queries: 101
The following changes have been made to reduce SOQL usage.
- CCON_CreditTransfer_TDTM: Separate the rollback logic and processing logic and only run processing logic when relevant fields have changed, skip the trigger if the contact only has 1 PE.
- REDU_Helper_UTIL: Replaced the checkTermEndDates() method with a new "Check Term End Dates" validation rule on Program Enrollment.
- APP_CreateEnrollment_TDTM / PRAP_CreateEnrollment_TDTM: Removed the REDU_Helper_UTIL.checkTermEndDates() call and instead set a new flag to trigger the "Check Term End Dates" validation rule.
- PRGPST_ProgramEnrollment_TDTM / PREN_UpdatedPathway_TDTM: Replaced a separate Term query with two new formula fields (Starting Term Institution, Starting Term Start Date) on Program Enrollment.
- PECC_DualQualification_TDTM: Replaced a separate Program Enrollment query with a new PE Dual Qualification formula field on Course Connection.
- CSOF_CourseConnection_TDTM: Skip the Course Offering rollup query if no Course Offerings were found.
- CSEN_SetGradeSetting_TDTM: Skip BeforeInsert logic if Grade Setting Type is already populated on the Course Connection.
- REDU_Funding_UTIL: Split / guard some queries in calculateFunding().
- SE_SessionConnection_TDTM: Split Session and Session Group query. Only query Session Groups if necessary.
- CSEN_AssignOwnership_TDTM: Skips the logic if it would set the owner to the PE Owner and that is already the running user. Uses a new PE Owner formula field on Course Connection.
- CSEN_PopulateEFTSL_TDTM: Replaced a separate Plan Requirement query with a new Plan Requirement EFTSL formula field on Course Connection.
ISS-002922 Broken "Close" button in popup modal
The CSS for close button is fixed for all affected components.
- RIO Ed - Appointment Scheduler (Aura)
- RIO Ed - My Pathway (Aura)
- RIO Ed - My Student Fees (Aura)
- RIO Ed - Session Calendar (Aura)
- RIO Ed - Calendar (Aura)
- RIO Ed - Session Grading (Aura)
- RIO Ed - My Majors (Aura)
- RIO Ed - Attendance - Session List (Aura)
- RIO Ed - Create Faculty Component
- RIO Ed - Program Structure Overview
- RIO Ed - Short Course Record Header
- RIO Ed - Requirement Checklist
- RIO Ed - Session Scheduler
- RIO Ed - Shopping Cart
- RIO Ed - Student Scheduler (both course and session)
- RIO Ed - Template Builder
- RIO Ed - Calendar
- RIO Ed - Transfer Credits List
ISS-002939 UI of RIO Ed - Transfer Credits List and RIO Ed - Attendance Viewer
Fixed table UI issues on the both the RIO Ed - Transfer Credits List and RIO Ed - Attendance Viewer components.
See also: RIO Ed - Transfer Credits List, RIO Ed - Attendance Viewer
ISS-002940 Job Queue Wizards do not resize correctly with screen changes
Job Queue Wizards now resize correctly. Elements will expand to fill the full width of the modal if it is below a certain size.
See also: Job Queue (object)
ISS-002942 Inconsistent Course Name hyperlink in myResults via student community
In the RIO Ed - My Results (Aura) component, all completed courses now display with a clickable hyperlink that opens a details popup, excluding those that are not connected to an actual RIO Course (eg. historical courses, external courses).
See also: RIO Ed - My Results (Aura)
ISS-002943 Button spacing on Job Queue Wizards
Fixed / standardised the button spacing for the footer buttons on all Job Queue Wizards.
See also: Job Queue (object)
ISS-002965 REDU_StringMerge_UTIL: Preserve blank lines in stripHtmlTagsPreservingLineBreaks()
REDU_StringMerge_UTIL.stripHtmlTagsPreservingLineBreaks() now preserves blank lines.
ISS-002972 Auto Credit Transfer occurring on same PE
Auto Credit Transfer will no longer occur within the same Program Enrollment.
See also: Auto Credit Transfer
ISS-002984 Study Credit Currency type rollup not working when study registration is withdrawn
The ORDL_CalculateAmount_TDTM trigger handler is updated to handle negative quantity order line for refund.
The Study Credit's Used Quantity rollup (ORDL_StudyCreditRollup_TDTM) is now standardized from order line in order to support both consumption and refund correctly regardless of the Study Credit's Quantity Type:
- Quantity Type - Study Registration = Sum the Quantity from the related Order Lines.
- Quantity Type - Currency = Sum the Credited Amount from the related Order Lines.
The redundant study credit rollup is removed from the order line BeforeDelete trigger (ORDL_DeleteRecords_TDTM).
A new field "Total Study Registrations" is added on study credit for rollup from study registration to avoid confusion. The existing rollup trigger (SR_UsedStudyCredits_TDTM) is updated to refer to the new field.
See also: Study Credits
ISS-003010 Attendance Viewer - The table header and columns are confusing when the "Enable Clickable Ref Field" is enabled
The Attendance Viewer table's booking time header and attendance cell will show the correct cursor and tooltips when hover according to the "Enable Clickable Ref Field".
See also: RIO Ed - Attendance Viewer
Other
ISS-002961 V3 - Upgrade Apex and LWC components to API 67.0
Some components and permission sets have been updated to API version 67.0 as we continue to adhere to Salesforce's code security guidelines.
Field Level Security and Permission Sets
The packaged permission sets (REDU - Admin, REDU - Faculty, etc.) have been updated to meet the more strictly enforced permissions. For more details on these changes, view the Metadata Updates section at the top of this page.
If you are instead using your own permission sets to grant access to RIO Education objects, we highly recommend testing in a sandbox before upgrading to v3.23 to ensure your permissions are still sufficient and up to date.