VACOLS #
This page documents the VACOLS DB and its schema.
- VACOLS is the source of truth for Legacy Appeals.
- VACOLS GitHub repo
- DBDiagram of VACOLS table relationships
- VACOLS Data Dictionary spreadsheet copied from VACOLS.Database.tables.pdf (Last Updated: July 12, 2016). Ask for permission to edit via Google.
-
Docs in the VACOLS repo
- VACOLS Reference docs - VACOLS_Table_Joins.xls
- Feb 2017 VACOLS doc in appeals-data repo - explanations of example queries
- FACOLS - “Fake VACOLS” used for local testing
Caseflow’s Rails Source Code for VACOLS DB #
Caseflow’s VACOLS Rails models
- appeal_repository.rb to query and update VACOLS
- case.rb has mappings of VACOLS values to more intuitive values
- legacy_appeal.rb - model that queries VACOLS for Legacy appeal info
- vacols_helper.rb - utility methods to handle VACOLS quirks
-
associated_vacols_model.rb
vacols_attr_accessors
will lazy load the underlying data from the VACOLS DB upon first call. For example,appeal = LegacyAppeal.find(id)
will not make any calls to load the data from VACOLS, but soon as we callappeal.veteran_first_name
, it will trigger the VACOLS DB lookup and fill in all instance variables for the appeal. Further requests will pull the values from memory and not do subsequent VACOLS DB lookupsAppealRepository.load_vacols_data
callsset_vacols_values
to load appeal (aka “case”) information from VACOLS.
- Location codes - in the code