Load and cache the benefit jurisdiction code map¶
Builds and caches (per-process, Static) the benefit-jurisdiction code map used to translate S/F codes to State/Federal.
| Field | Value |
|---|---|
| Operation ID | op-12-benefit-jurisdiction-code-map |
| Trigger | Caller invokes CodeMaps.GetBenefitJurisdictionCodeMap |
| Inputs | IDataPortalInfo, optional refresh flag |
| Outputs | Cached clsBenefitJurisdictionCodeMap |
| Primary components | CodeMaps.GetBenefitJurisdictionCodeMap, clsBenefitJurisdictionCodeMap |
| Entry point | SAIF.Business.Policy/CodeMaps/clsBenefitJurisdictionCodeMap.vb |
Steps¶
- If
refreshis true or theStaticcached instance isNothing, construct a new map (BR-POL-016). - The constructor runs
select code, code_descr from BENEFIT_JURISDICTION_CODE(SQL-001) through the frameworkFill(inDPI, MySQL)helper. - Iterates the
clsResultSetrows and adds only"S"→Stateand"F"→Federal(BR-POL-012); all other codes are ignored. - Return the cached instance.
Process flow¶
The following diagram visualizes this operation's control flow.
flowchart TD
Start(["Caller invokes<br>GetBenefitJurisdictionCodeMap"]) --> A{"refresh is true or<br>cached instance is Nothing?"}
A -->|No| End(["Return cached<br>clsBenefitJurisdictionCodeMap"])
A -->|Yes| B["Construct new map"]
B --> C["Run SELECT code, code_descr<br>FROM BENEFIT_JURISDICTION_CODE<br>via Fill helper"]
C --> D["Iterate clsResultSet rows"]
D --> E{"Code = S or F?"}
E -->|S| F["Add State"]
E -->|F| G["Add Federal"]
E -->|Other| H["Ignore code"]
F --> End
G --> End
H --> End
Failure and edge-case behavior¶
- Codes other than
"S"and"F"are ignored and are not added to the map (BR-POL-012).
Related documentation¶
Sources¶
SAIF.Business.Policy/CodeMaps/clsBenefitJurisdictionCodeMap.vb