4.0.61.1
Release Highlights
- Transition from Bing Maps to Google Maps, offering improved mapping accuracy and usability across the application.
- A new Enumeration Module to support annual Point-in-Time Count activities.
- A new Last Known City field to enhance tracking of client movement across large geographic areas, including updates to the Geographic Region Mapping feature.
- 54 other minor changes and enhancements and 47 bug fixes to further improve system performance and user experience.
New Features & Major Changes
Code Optimization of Stored Procedures
As part of our ongoing effort to improve overall system performance, HICC continues to review and optimize key stored procedures within HIFIS. This work focuses on enhancing efficiency, reducing processing time, and ensuring smoother execution of automated system tasks. These improvements are part of a broader commitment to strengthening application performance and stability across future releases.
Also, HIFIS now processes certain background tasks more efficiently by running them asynchronously. This improves system responsiveness by allowing the application to continue running other tasks without waiting for calculations to finish, resulting in smoother performance during client updates.
- Applied asynchronous execution to stored procedure sp_UpdateClientChronicityStatus. This improves system responsiveness by allowing the application to continue running other tasks without waiting for the chronicity calculation to finish, resulting in smoother performance during client updates.
- Applied asynchronous execution to stored procedure sp_UpdateClientHousingStatus.
New Enumeration Module
HIFIS now includes a dedicated Enumeration module to collect, manage, and export Point‑in‑Time (PiT) enumeration data. This includes the Enumeration form, the ability to add local question, questions from the PiT Count survey (via the Marketplace) and an Enumeration report.
- Added shelter stay information to the Enumeration export. The shelter stay data is based on the admissions recorded the day of the enumeration event. Not the day that the data is exported.
- Added an “Observed Homelessness” option to Enumeration events.
- Added new user rights for the Enumeration module
- Added an Enumeration List View.
- Added an Enumeration form.
- Added Enumeration modules under the PiT Count menu.
- Created a new report for Enumeration events.
- Added radio buttons to the PiT Count view.
- Added a Systems Homelessness setting to the Enumeration configuration options. When this setting is toggled to “Yes”, question C1 appears in the Enumeration form only when one of the following values is selected in Question C:
- Hospital
- Treatment Centre
- Jail, Prison, Remand Centre
Geographic Region and Last Known City Field
New updates support more reliable community‑level reporting by introducing the “Last Known City” field and improving how geographic information is captured, stored, and displayed across modules.
The “Last Known City” field is automatically populated based on the client’s most recent housing or shelter history. HIFIS will first use the city from the most recent active housing or shelter record. If no active record contains a city, it will use the city from the most recent past record. If no city can be found in any housing or shelter history, HIFIS will use the city from the service provider who created the client.
- Updated Geographic Region Mapping in Application Settings to allow cities to belong to multiple geographic regions. Note: To access the Geographic Region Mapping tab in the Application Setting, please make sure that the “Enable GeoRegion Filter” option is set to “Yes”
- Stopped tracking changes to the Geographic Region field in the Client Vitals change history. The change history log will not track changes to the “Last Known City” field.
- The Geographic Region field in Client Details auto-populates based on the last known city of the client.
- Added a “Last Known City” field to Client Details.
- Added “Last Known City” to the export version of the Coordinated Access List.
- Added “Last Known City” as a filter option in the Coordinated Access module.
- Removed the “Geographic Region” filter in the Coordinated Access module.
- Added “Last Known City” as field in the HIFIS Field Dictionary.
- The Geographic Region field in the Housing History form is now read-only and is auto-populated based on the city selected in the record.
- The Geographic Region field in Service Provider Details is now read-only and is auto-populated based on the city where the Service Provider is located.
Google Maps
With the retirement of Bing Maps, HIFIS now uses Google Maps as its mapping service across the entire application. This change preserves all existing mapping capabilities, and users should not experience any differences in functionality or behaviour. All features previously powered by Bing Maps continue to operate as expected using Google’s mapping platform.
- Updated configuration to use a Google Maps API key instead of a Bing Maps key.
- Replaced Bing Maps with Google Maps across HIFIS.
Bing Maps API is being deprecated
For most users, Bing Maps will stop working on June 30, 2025. New HIFIS instances are already unable to create new Bing Maps keys. This means that on June 30, 2025 any feature that has to do with mapping will stop functioning. That includes: Directory of Services mapHousing Unit Search mapGoods & Services and Group Activities geo-taggingOutreach mapEncampments geo-tagging and map display
5
What's Different
Admissions
- Fixed cluster filtering in the Bed Availability tab; the full list of Service Providers in the cluster now appear as expected.
15043: Missing shelter on Bed Availability tab
One shelter is missing from the Bed Availability tab in Admissions while it has beds and is in the correct cluster.
7
- Fixed issue where the client field is disabled when attempting to book-in a family. Users can now remove individual clients in a family before completing an admission.
Book-in family can't be modified
Users are not able to remove familly members from the book in page when using the admissions module from the Client Management page.
2
Application Settings
- Users can now view the list of cities in geographic region without using the edit view.
Calls and Visits Log
- Implemented pagination for Calls and Visits list.
Case Management
- Made the “End Date” field in the case management form mandatory.
Case end date is not mandatory
When changing the case status from Open to Closed (any), the End Date appears but is not mandatory. You can save the case status as closed without providing an end date. This causes a disconnect in the data; cases may appear ongoing (no end date) but with a status indicating they are closed.
3
- Users are now redirected to the Display Case Management page after saving or Case Management ending a Case Management record.
- Restored display of Session Details when attempting to view all sessions details in Case Management.
Case Management > View All Session Details Blank
In testing 60.3 we have found an issue with the “View All Session Details” button in the Case Management area. To see this, create a new case management record, or open a client that already has an open case management record, either from Front Desk > Case Management, or from Client Management > Case Management. Then Click on the Display button to view the details. What we expect to see here is a summary of all sessions attached to the case management record. In our production environment (v4.0.59.7.1) we see a summary of all sessions attached to the case management record.
5
- Fixed an issue where hidden clients were appearing in the Excel version of the Case Management list.
- Fixed issue where case sessions with a description with more than 420 characters would take a long time to save.
- Fixed Case Worker filtering so users with the Case Worker role in the current Service Provider are displayed even if they belong to different clusters.
Client Details
- The Client Vitals Change History log now tracks Racial Identity changes
- Added “City of Birth” field to the Client Details form.
- Added “Unable to Ask” to Racial Identity field in Client Details.
- Fixed graphical issue in the client summary box when the client Client Details state is set to “Archived”.
- Removed the toast message when Date of Birth is blank in Client Details. It will now appear as a confirmation message.
- Added “Don’t See Who You’re Looking For?” shortcut in additional modules.
Consent
- Updated consent logic so that adding a new consent automatically ends the previous active consent on the new start date. Added validation to prevent entering a start date earlier than the most recent ended consent when no active consent exists.
Coordinated Access
- Improved the accuracy of chronicity reporting by standardizing the 3-year rule calculation to 546 days. Previously, some views used a 540-day threshold, leading to inconsistent client status displays.
- Fixed untranslated content in Coordinated Access List.
- Fixed duplicate client entries in the Coordinated Access List when they have multiple open consent records.
Duplicate Clients in CA module (Consent)
The Coordinated Access module shows duplicated clients when clients have multiple open Coordinated Access consents. (Which could occur when you merge two client files.) Workaround: close one of the open Coordinated Access consent records. Related to: https://hifisfeedback.acreconsulting.ca/b/6vrrdwev/feature-ideas/duplicate-clients-in-ca-module-income https://hifisfeedback.acreconsulting.ca/b/6vrrdwev/feature-ideas/bug-in-ca-module-first-episode https://hifisfeedback.acreconsulting.ca/b/6vrrdwev/feature-ideas/duplicate-clients-in-ca-module-first-episode https://hifisfeedback.acreconsulting.ca/b/6vrrdwev/feature-ideas/duplicate-clients-in-ca-module-families
2
- Separated the Coordinated Access List into tabs:
- Client Details
- Homelessness
- Client Interactions
- Assessments
- Added new columns to the Coordinated Access List.
- Open Case Management?
- Open Housing Placement
- Open Housing Loss Preventio
- Users can now see the assessment type in the Coordinated Access List (Assessments tab).
Custom Tables
- Custom Tables can now be added to the Group Activities module.
- Added “Enable ‘Other’ option” for multi‑select Custom Table fields. This will add “Other” as a value in dropdowns. When selected, an open text field will appear.
- Users can now assign an Owner to Custom Tables.
- Users can now filter for the status and ownership of custom tables.
- Added a “Owner” column in Custom Table list.
- The custom table list now dynamically displays tables in language set in the application
- Fixed missing rights check on the Custom Tables tab in the Client Details module, users with the appropriate rights can now see the Custom Tables.
- Users can now set a French title for the custom tables tab.
Directory of Services
- Added filter items field to Directory of Services.
- Fixed the filter feature in Directory of Services.
Diversion
- Added the Geographic Region field in the Diversion “Add Housing History” form.
- Updated the icon for client with an active diversion attempt in the Client Details.
13408: Change Diversion Alert icon
Right now, the icon for recent diversion is the same as active service restriction. I suggest changing it to the attached.
2
- The “Save Diversion” button has been changed to “End Diversion” for Diversion Workflow
- Service providers can now have Diversion workflow descriptions unique to their service provider.
- Service providers can copy the diversion workflow description from other service providers.
- Fixed Case Worker filtering so users with the Case Worker role in the current Service Provider are displayed even if they belong to different clusters.
- Fixed punctuations not displaying properly when generating a notification message in French after saving a diversion form.
- Fixed issue preventing users from creating a new diversion record and after deleting a diversion workflow record.
- Fixed the “Financial Assistance Provided” toggle not saving properly when it is set to “Yes”.
Documents
- Updated confidential document permissions so the Delete action is shown only when a user has rights to view, edit, and delete the record.
Education
- Added a “Contact” field in the Education module.
Encampments
- Added Time field when enumerating an encampment.
Add timestamp to Encampments
Just has a date, no time.
1
- Added radio buttons to toggle between active and inactive encampment records in the Encampment List.
- Users can now delete Encampment records.
- Added a filter items bar to Encampments List.
- Added user right to delete Encampment records.
Goods & Services
- Added pagination to Goods & Services List.
- Added option to make the “Owner” field mandatory in Goods & Services - Express Template and Questionnaire form.
- Programs now appear as expected when using the Display and Manage views.
Group Activities
- Implemented pagination for Group Activities list.
- Updated the view on the Display Group Activities view to be separated into tabs as opposed to a single long form.
- Corrected ProgramID mapping in Group Activities.
- Fixed incorrect end date appearing when replicating a group activity.
Housing History, Housing Placement, Housing Loss Prevention, Housing Units
- Added validation for start date in Housing History to prevent housing records that start before a client was born.
- Fixed an issue where future‑dated Housing History records did not automatically update a client’s housing status.
- Added “Display” view for Housing Maintenance records.
- Client state will update when a Housing Placement Attempt is created and “Final Attempt” is set to Yes.
16393: Failed Housing Placements keep a client active
When you have a Housing Placement with the status of "Housing Placement Failed," the client will remain active indefinitely. This is because the coding relies on the existence of a follow-up, but follow-ups are not possible and therefore can never exist if the Housing Placement is failed.
3
- Fixed Case Worker filtering so users with the Case Worker role in the current Service Provider are displayed even if they belong to different clusters.
- Renamed the “Rent” field and the field now displays the actual rent paid based off Housing Placement the associated Housing Placement or Housing Loss Prevention record.
- English: Actual Rent
- French: Loyer effectif
- Added “Active” column and radio buttons to filter the Housing Unit List.
- Updated the “Features” field label in the Housing Unit module.
- English: Housing Features
- French: Particularités du logement
- Editing the Housing Placement move in date now edits the start date in the corresponding Housing History record.
- Disabled the Extension field in the Housing History form when the “Telephone1” field is disabled.
- Fixed tooltip language in Housing History not updating when switching languages.
- Removed old code from Housing Units List view that was performing unnecessary loading.
- Service provider mandatories are now properly enforced in the Housing Unit module.
Identification
- Added option to make Identification Number optional in the Identification module.
- Updated “View Confidential Identifications” right label.
- English: View Confidential Identification Records
- French: Afficher les dossiers d'identification confidentiels
Look-up Tables
- Added new default value to the People Role lookup table.
- English: School Faculty
- French: Faculté de l'école
- The “Module Used In” column now displays the modules in French.
- Service Providers can now unsubscribe from custom City values.
- Renamed “Desired Outcome” table to “Case Goals” so it matches the label in the Case Management module.
- Updated “Module Used In” lookup table field to display all the modules correctly.
- Removed the following look-up tables as they have no behavior.
- Custom Tables
- Layout lookups.
- Updated label for Address History in People module. English: People – Address History French: Personnes – Historique d’adresses People
Medication
- Disabled the “Maximum Number of Doses per Day” in medication modules when it’s set to disabled in the Service Provider Mandatories.
People
- Resolved JSON error appearing when sorting columns in the People list.
Programs
- Fixed tool tips overlapping; they now appear properly.
Questionnaires & Surveys
- Added radio buttons to filter between questionnaire owners and statuses.
- Updated questionnaire editing behaviour so users can open the Edit Questionnaire form for questionnaires owned by another Service Provider when they have edit rights
Reports Manager
- Fixed missing database version validation for new reports downloaded from the Reports Marketplace. This allowed users on older versions of HIFIS to see reports requiring newer versions.
Service Providers
- Fixed a filter issue preventing the full list of service providers from appearing in the Service Provider List.
SPDAT & VI-SPDAT
- Updated tooltips for VI‑SPDAT and SPDAT assessments to be clearer.
System
- The Welcome Page now displays a list of recent clients the user interacted with.
- Implemented pagination on the Data Export page.
- Translated buttons on the Data Export preview screen.
- Fixed the EXPORT_ tables not refreshing prior to the automated export process.
- Fixed the alignment of the “Manage Geographic Region” fields in French.
- Enforced single‑record rules for Custom Tables during client merge; when both clients have entries in a single‑record table, HIFIS now keeps only the most recent record and discards older ones to maintain data consistency.
- Alphabetized menus throughout HIFIS.
- Updated HIFIS footer link to Homelessness Learning Hub.
- The Client Service Delete module now filters service types and records to enforce Service Provider rights when deleting client services.
Client Service Delete supercedes rights
With the Client Service Delete right, users can delete services belonging to a single client that they look up, regardless of what service provider owns the service. This feels like an oversight: why can a user who has no rights to Shelter A (and therefore can't Display or Edit a Stay belonging to Shelter A) be able to Delete a Stay belonging to Shelter A? This feels like an oversight. Also related to https://hifisfeedback.acreconsulting.ca/b/6vrrdwev/feature-ideas/deleting-services-is-problematic
1
- Fixed an issue where RecentActivityModuleTypeID and RecentActivityDateTime in the Client table were not updating correctly to reflect a client’s most recent activity.
16034: RecentActivityDateTime is null
In HIFIS_Clients, a bunch of clients are having null values stored for RecentActivityModuleTypeID and RecentActivityDateTime , despite having actions in their file that constitute activity. So far I cannot detect any commonality between the clients who do have a Recent Activity, and those who don't have any. Affected software elements Clients Approaching Inactivity reportRecent Inactivity reportCoordinated Access moduleAny custom report that includes a "days since last activity" calculation
5
Client's Recent Activity not Updating
When creating new services (Admissions, Case Management, Housing Placements, Reservations, SPDAT, Storage, Turnaways etc..) for a client in HIFIS 4.0.60.4.2, the 'RecentActivityModuleTypeID' and 'RecentActivityDateTime' fields in the HIFIS_Clients table are not updated to reflect the client's most recent activity. This can result in inaccurate data shown in the 'RecentInteractionDateTime' and 'SinceLastActivityDays' fields in the vw_CoordinatedAccess and vw_CoordinatedAccessExport views.
3
- Fixed an issue where the stored procedure stopped processing client records when encountering large gaps in Client IDs.
15240: Client State Accuracy Impacted by Gaps in ClientIDs
We've observed inconsistencies in client states within HIFIS, for example, some clients are marked as 'Active' despite not receiving services in over 90 days, while others are marked as 'Inactive' even though they still have open case management goals. In HIFIS, client state is updated by the [dbo].[sp_checkClientState] stored procedure. This procedure can be executed for an individual client or for all clients in the database. When run for all clients, it processes them in sequential batches of 5,000 (e.g., ClientID 1–5,000; 5,001–10,000; etc.). However, gaps in the ClientID sequence can cause the procedure to skip clients. For example, our database contains a gap between ClientIDs 25,000 and 35,000. As a result, the client state for all clients with a ClientID above 25,000 may not be updated. Explanation When processing all clients, the [dbo].[sp_checkClientState] procedure relies on the [dbo].[fn_checkClientStateData] function to retrieve client state data for each batch. If no data is returned for a given batch (e.g., when a gap exists in the ClientID range) the [dbo].[sp_checkClientState] procedure exits early. This prevents the remaining client batches from being evaluated, leading to incomplete or inaccurate client state data.
1
- Fixed background error being generated and logged when 2FA is enabled.
- Resolved a bug that prevented new user accounts from being created when strict password requirements were enabled. The system now ensures auto-generated passwords always meet your security criteria.
Unable to add HIFIS Users in 4.0.60.5
Unable to add users. Click on the "Save" button, page reloads, but no error message is shown and the user account is not created. NOTE: This issue is only affecting a small subset of users. https://www.loom.com/share/53cd0dd923d14ab992c611bc419beb69?sid=bf5df7ac-6b40-4c43-a25f-cfb200b8bfbe
2
- Removed triggers on all tables that were automatically modifying the LastUpdatedDate field.
Visiting a Client Vitals screen updates the "Last Updated By" field
Present in 60.3 and 60.4
3
- Fixed spacing and punctuations across the application when using HIFIS in French.
- Fixed content on the “How to Book Out a Client” help page appearing in the wrong language.
- Fixed grammatical mistakes when viewing the Registration module in French.
Users
- The user welcome email is now sent once an account is activated. Previously, it was sent once the account was created.
- Fixed the “This user account is currently inactive” alert not clearing when activating a client.
- Removed access to Clone action for users without Add User rights.
Waiting List
- Paginated the Waiting List module to improve loading.
Waiting List Timeouts (Error 500)
When a wait list is used on an ongoing basis (around 3000 total waiting list records including closed records) it starts to get really slow and eventually time out entirely (500 error) when trying to open a client waiting list entry for edit. Users are unable to view a waiting list entry or save information.
1
- Fixed the Waiting List status date not updating after editing the record.
- Reviewed and resolved inconsistencies in Waiting List user rights.
Edit Clients in Waiting List rights issue
Looks like there is a bug in the rights surrounding Waiting Lists. I give my users the following: Add Clients to Waiting Lists Display Client in Waiting List Edit Clients in Wating Lists (note, there is a typo in this one) Front Desk List List of Clients in a Waiting List List of Waiting Lists And from the Client - Waiting List, this is what they can see: In other words, they can Display Client in Waiting List and click the Manage Clients button (whatever right that is), but not Edit Clients in Waiting Lists. There should be an edit button here. If I give the user the additional permission: Edit Waiting List Records They see the extra edit button on the Client - Waiting List: So the Edit Button on the Client - Waiting List seems to be tied to the "Edit Waiting List Record" right, but it should be tied to "Edit Clients in Waiting Lists"
1
Database Changes
- Renamed the HIFIS_CityTypes.TypeID column to HIFIS_CityTypes.ID to conform with naming convention of lookup tables. Any references to HIFIS_CityTypes.TypeID must be updated to reference HIFIS_CityTypes.ID to ensure continued functionality.