Import Overrides - greenriver/hmis-warehouse GitHub Wiki
Description
Import Overrides are used to modify data imported into the Warehouse. Overrides are applied either during the data import process or by using the Apply to Warehouse button on existing imports. The feature is limited to data found in the HMIS CSV import and can be used to:
- Override the value for a single row.
- Override all values in a column.
- Override specified values in a column.
Overrides are applied to a single data source and can be found under each data source under Import Overrides.
Import Overrides are organized in tabs by file name, with tabs visible only for files that have associated overrides. Each tab contains the following information:
- Files - The csv file that’s overridden and if applicable, the associated project.
- Replaces - The element in the csv file that’s overridden (Column to replace).
- With - The override content (Replacement Value).
- When - The condition when the override will occur (Matched ID and Value to replace).
- Apply to Warehouse - Immediately applies the change to existing matching data, instead of just on new imports.
- Delete button - Allows the override to be deleted from the override table. Note that once the override is applied to the Warehouse, it cannot be undone. See Removing Overrides for more information.
Adding an Override
-
Identify what data needs to be overridden.
-
When working directly in the project page, hover over the applicable value and click the Add Override button when it appears. Alternatively, navigate to the applicable Data Source > Import Overrides and click Add Override.
-
Complete the override information. If adding an Override directly from the project, some of this information will be prepopulated.
-
File - List of all HMIS csv files. Only one File can be selected per override.
-
Matched ID - Based on the selected file, only rows with a specified Matched ID will be overridden. If left blank, updates apply to all rows. To target a specific update, the value in the Matched ID field must match the field being changed. For example, to assign the same EnrollmentCoC to all enrollments in the data source, leave this field empty. To update the EnrollmentCoC for a specific enrollment, enter its matched EnrollmentID in the Matched EnrollmentID field.
-
Column to Replace - List of columns from the selected file. Only one column can be chosen per override, and this will be the column that gets overridden.
-
Value to Replace - The specified value in a column that will replace data across matched rows.
-
Replacement Value - The new value that will replace the old value. Entering a value of :NULL: will remove the matching values, leaving the field blank.
The fields File, Column to replace, and Replacement value are required and must be provided to add an override.
If Matched ID and Value to Replace are left blank, all values in the selected column will be changed to the Replacement Value.
-
After the override is created it will appear in the Override Table. If the override needs to be applied to data already imported, click Apply to Warehouse.
A notification will pop up at the top of the screen indicating the override has been applied.
-
After the override is applied, the new information will be visible in the Warehouse and denoted by the information icon located by the HMIS button. If the override is not Applied to the Warehouse, a new import will need to be added to see the new data.
Override information will also be displayed on the HMIS Source Data Page.
Examples of Overrides
Note: Overrides are applied to a single Data Source. If a blanket override is needed, the override needs to be added to each Data Source.
Override the Value for a Single Row
Examples of how overriding the value for a single row can be used:
Overriding the Project Type for a Specific Project Example: Project 926 has a Project Type of Permanent Supportive Housing (3) that needs to be changed to Emergency Shelter - Entry Exit (0).
- File: Project.csv
- Matched ProjectID: 926
- Column to replace: ProjectType
- Value to replace: Blank
- Replacement value: 0
Overriding the Bed Inventory for a Specific Inventory Record in a Project Example: Project Small Tree Shelter has a Bed Inventory of 15 that needs to be changed to 20.
- File: Inventory.csv
- Matched InventoryID: 133
- Column to replace: BedInventory
- Value to replace: Blank
- Replacement value: 20
Override All Values in a Column
Examples of how overriding all values for a column can be used:
Overriding the CoC Code to apply the same CoC across all Projects Example: Several projects in CoC MI-500 have misspelled the CoC Value to MI-0500 and MI-50.
- File: ProjectCoC
- Matched ProjectCoCID: Blank
- Column to replace: CoCCode
- Value to replace: Blank
- Replacement value: MI-500
Overriding the HMIS Participation for All Projects to Yes Example: Several projects are listed as Not Participating in HMIS (0) although all projects are HMIS Participating.
- File: HMISParticipation.csv
- Matched HMISParticipationID: Blank
- Column to replace: HMISParticipationType
- Value to replace: Blank
- Replacement value: 1
Override Specified Values in a Column
Examples of how overriding specific values in a column can be used:
Overriding the Funding Source for Projects with the Wrong Source Example: Several projects have a Funding Source of HUD: ESG-RUSH (10), which was accidentally added for projects funded by HUD:ESG- CV (47)
- File: Funder.csv
- Matched FunderID: Blank
- Column to replace: Funder
- Value to replace: 10
- Replacement value: 47
Overriding the Continuum Project Status for a Project with a 99 Example: A project (888) has a Continuum Project Status of 99 which is an invalid value. This project should have a Continuum Project Status of No (0).
- File: Project.csv
- Matched ProjectID: 888
- Column to replace: ContinuumProject
- Value to replace: 99
- Replacement value: 0 If this project later changes to a Continuum Project (1), the HMIS data can be updated without the override reverting to 0. This is because the override is only applied when the Continuum Project value is set to 99.
Editing Overrides
Overrides cannot be edited once created. Use the following steps to make updates to overrides:
- Create a new override with the updated information and if applicable Apply it to the Warehouse.
- Navigate to the Overrides Table and use the delete button to remove the old override.
Removing Overrides
Overrides can be deleted by using the delete button on the Overrides Table.
When an override is deleted, after it’s been Applied to the Warehouse, the data will not revert back to its original value. To revert a change to its original value, use one of the following options:
Create a New Override to Replace the Override
- Navigate to the Overrides Table and use the delete button to remove the override.
- Create a new override with the original information and apply it to the Warehouse.
Re-Import Data to Replace the Override
- Navigate to the Overrides Table and use the delete button to remove the override.
- Re-Import the data into the Warehouse.